IOSS 2.0
Loading...
Searching...
No Matches
Ioss_TriShell6.h
Go to the documentation of this file.
1/*
2 * Copyright(C) 1999-2024 National Technology & Engineering Solutions
3 * of Sandia, LLC (NTESS). Under the terms of Contract DE-NA0003525 with
4 * NTESS, the U.S. Government retains certain rights in this software.
5 *
6 * See packages/seacas/LICENSE for details
7 */
8#pragma once
9
10#include "ioss_export.h"
11
12#include "Ioss_CodeTypes.h" // for IntVector
13#include "Ioss_ElementTopology.h" // for ElementTopology
14
15namespace Ioss {
16 class IOSS_EXPORT TriShell6 : public Ioss::ElementTopology
17 {
18
19 public:
20 static const char *name;
21
22 static void factory();
23
24 IOSS_NODISCARD ElementShape shape() const override { return ElementShape::TRI; }
25 IOSS_NODISCARD int spatial_dimension() const override;
26 IOSS_NODISCARD int parametric_dimension() const override;
27 IOSS_NODISCARD bool is_element() const override { return true; }
28 IOSS_NODISCARD bool is_shell() const override { return true; }
29 IOSS_NODISCARD int order() const override;
30
31 IOSS_NODISCARD int number_corner_nodes() const override;
32 IOSS_NODISCARD int number_nodes() const override;
33 IOSS_NODISCARD int number_edges() const override;
34 IOSS_NODISCARD int number_faces() const override;
35
36 IOSS_NODISCARD int number_nodes_edge(int edge = 0) const override;
37 IOSS_NODISCARD int number_nodes_face(int face = 0) const override;
38 IOSS_NODISCARD int number_edges_face(int face = 0) const override;
39
40 IOSS_NODISCARD Ioss::IntVector edge_connectivity(int edge_number) const override;
41 IOSS_NODISCARD Ioss::IntVector face_connectivity(int face_number) const override;
42 IOSS_NODISCARD Ioss::IntVector element_connectivity() const override;
43
44 IOSS_NODISCARD Ioss::ElementTopology *face_type(int face_number = 0) const override;
45 IOSS_NODISCARD Ioss::ElementTopology *edge_type(int edge_number = 0) const override;
46
47 protected:
48 TriShell6();
49 };
50} // namespace Ioss
#define IOSS_NODISCARD
Definition Ioss_CodeTypes.h:55
Represents an element topology.
Definition Ioss_ElementTopology.h:68
Definition Ioss_TriShell6.h:17
IOSS_NODISCARD bool is_shell() const override
Definition Ioss_TriShell6.h:28
static const char * name
Definition Ioss_TriShell6.h:20
IOSS_NODISCARD ElementShape shape() const override
Definition Ioss_TriShell6.h:24
IOSS_NODISCARD bool is_element() const override
Definition Ioss_TriShell6.h:27
The main namespace for the Ioss library.
Definition Ioad_DatabaseIO.C:40
ElementShape
Definition Ioss_ElementTopology.h:24
std::vector< int > IntVector
Definition Ioss_CodeTypes.h:21