FrontISTR
5.7.0
Large-scale structural analysis program with finit element method
CNFDB_404.h
Go to the documentation of this file.
1
/*****************************************************************************
2
* Copyright (c) 2019 FrontISTR Commons
3
* This software is released under the MIT License, see LICENSE.txt
4
*****************************************************************************/
5
/*
6
CNFDB_404 Ver. 3.6
7
*/
8
9
#ifndef CNFDB_404H
10
#define CNFDB_404H
11
12
#include <vector>
13
#include "
CNFDataBlock.h
"
14
15
// 404 Element
16
class
CNFDB_404
:
public
CNFDataBlock
{
17
public
:
18
CNFDB_404
();
19
virtual
~CNFDB_404
();
20
21
virtual
void
Read
(
class
CNFData
* nfd);
22
virtual
void
WriteData
(
class
CNFData
* nfd, FILE* fp);
23
24
public
:
25
// ID of topology
26
enum
{
27
top_Line2
= 0,
28
top_Line3
,
29
top_Tri3
,
30
top_Tri6
,
31
top_Quad4
,
32
top_Quad8
,
33
top_Tetra4
,
34
top_Wedge6
,
35
top_Brick8
,
36
top_Point
,
37
top_Tetra10
,
38
top_Wedge15
,
39
top_Brick20
,
40
top_RigidList
,
41
top_dummy2
,
42
top_MultiList
,
43
top_Contact
44
};
45
46
class
cref_node
{
47
public
:
48
nf_int
NodeID
;
49
nf_int
faceID
;
50
nf_float
weight
;
51
nf_int
dof
[7];
// dof[0]:dummy
52
cref_node
() {}
53
cref_node
(
const
cref_node
& r)
54
:
NodeID
(r.
NodeID
),
faceID
(r.
faceID
),
weight
(r.
weight
) {
55
dof
[0] = r.
dof
[0];
56
dof
[1] = r.
dof
[1];
57
dof
[2] = r.
dof
[2];
58
dof
[3] = r.
dof
[3];
59
dof
[4] = r.
dof
[4];
60
dof
[5] = r.
dof
[5];
61
dof
[6] = r.
dof
[6];
62
}
63
cref_node
&
operator=
(
const
cref_node
& r) {
64
NodeID
= r.
NodeID
;
65
faceID
= r.
faceID
;
66
weight
= r.
weight
;
67
dof
[0] = r.
dof
[0];
68
dof
[1] = r.
dof
[1];
69
dof
[2] = r.
dof
[2];
70
dof
[3] = r.
dof
[3];
71
dof
[4] = r.
dof
[4];
72
dof
[5] = r.
dof
[5];
73
dof
[6] = r.
dof
[6];
74
return
*
this
;
75
}
76
};
77
78
class
cref_node_list {
79
public
:
80
std::vector<cref_node>
ref_node
;
81
};
82
83
// #1
84
nf_int
ID
;
85
nf_int
color
;
86
nf_int
propID
;
87
nf_int
type
;
88
nf_int
topology
;
89
nf_int
layer
;
90
nf_int
orientID
;
91
nf_bool
matl_orflag
;
92
// Ver. 3.6 ========================
93
nf_int
geomID
;
94
// Ver. 3.6 ========================
95
nf_int
formulation
;
96
nf_int
contactsegment
[2];
97
// Ver. 3.6 ========================
98
nf_int
formulation2
;
99
// #2,3
100
nf_int
node
[20];
101
// #4
102
nf_float
orient
[3];
103
// #5
104
nf_float
offset1
[3];
105
// #6
106
nf_float
offset2
[3];
107
// #7
108
nf_bool
release1
[6];
109
// #8
110
nf_bool
release2
[6];
111
// Ver. 3.6 ========================
112
nf_int
list
[4];
113
// Ver. 3.6 ========================
114
// every node record, if topology == top_MultiList or top_RigidList(Rigid?)
115
std::vector<cref_node_list*>
ref_node_set
;
116
117
protected
:
118
cref_node_list
*
make_ref_node_list
(
CNFData
* nfd);
119
void
clear_ref_node_set
();
120
void
write_ref_node_list
(
CNFData
* nfd, FILE* fp,
cref_node_list
*
list
);
121
};
122
123
#endif
CNFDB_404::top_Quad8
@ top_Quad8
Definition:
CNFDB_404.h:35
CNFDB_404::formulation2
nf_int formulation2
Definition:
CNFDB_404.h:101
CNFDB_404::type
nf_int type
Definition:
CNFDB_404.h:90
CNFDB_404::top_Brick20
@ top_Brick20
Definition:
CNFDB_404.h:42
CNFDB_404::orientID
nf_int orientID
Definition:
CNFDB_404.h:93
CNFDataBlock
Definition:
CNFDataBlock.h:24
CNFDB_404::cref_node::operator=
cref_node & operator=(const cref_node &r)
Definition:
CNFDB_404.h:66
CNFDB_404::CNFDB_404
CNFDB_404()
Definition:
CNFDB_404.cpp:16
CNFDB_404::cref_node_list
Definition:
CNFDB_404.h:81
CNFDB_404::top_Wedge15
@ top_Wedge15
Definition:
CNFDB_404.h:41
CNFDB_404::color
nf_int color
Definition:
CNFDB_404.h:88
CNFDB_404::top_Brick8
@ top_Brick8
Definition:
CNFDB_404.h:38
CNFDB_404::top_RigidList
@ top_RigidList
Definition:
CNFDB_404.h:43
CNFDataBlock.h
CNFDB_404::top_Wedge6
@ top_Wedge6
Definition:
CNFDB_404.h:37
CNFDB_404::geomID
nf_int geomID
Definition:
CNFDB_404.h:96
CNFDB_404::Read
virtual void Read(class CNFData *nfd)
Definition:
CNFDB_404.cpp:20
CNFDB_404::top_MultiList
@ top_MultiList
Definition:
CNFDB_404.h:45
CNFDB_404::topology
nf_int topology
Definition:
CNFDB_404.h:91
CNFDB_404::release2
nf_bool release2[6]
Definition:
CNFDB_404.h:113
CNFDB_404::propID
nf_int propID
Definition:
CNFDB_404.h:89
CNFDB_404::top_Quad4
@ top_Quad4
Definition:
CNFDB_404.h:34
CNFDB_404::offset1
nf_float offset1[3]
Definition:
CNFDB_404.h:107
CNFDB_404::write_ref_node_list
void write_ref_node_list(CNFData *nfd, FILE *fp, cref_node_list *list)
Definition:
CNFDB_404.cpp:199
CNFDB_404::cref_node::faceID
nf_int faceID
Definition:
CNFDB_404.h:52
CNFData
Definition:
CNFData.h:46
CNFDB_404::top_Line2
@ top_Line2
Definition:
CNFDB_404.h:30
CNFDB_404::ID
nf_int ID
Definition:
CNFDB_404.h:87
CNFDB_404::offset2
nf_float offset2[3]
Definition:
CNFDB_404.h:109
CNFDB_404::list
nf_int list[4]
Definition:
CNFDB_404.h:115
CNFDB_404::cref_node::NodeID
nf_int NodeID
Definition:
CNFDB_404.h:51
CNFDB_404::node
nf_int node[20]
Definition:
CNFDB_404.h:103
CNFDB_404::cref_node_list::ref_node
std::vector< cref_node > ref_node
Definition:
CNFDB_404.h:83
CNFDB_404::contactsegment
nf_int contactsegment[2]
Definition:
CNFDB_404.h:99
CNFDB_404::top_Contact
@ top_Contact
Definition:
CNFDB_404.h:46
CNFDB_404::top_Tri6
@ top_Tri6
Definition:
CNFDB_404.h:33
CNFDB_404::cref_node::weight
nf_float weight
Definition:
CNFDB_404.h:53
CNFDB_404::clear_ref_node_set
void clear_ref_node_set()
Definition:
CNFDB_404.cpp:99
nf_bool
unsigned char nf_bool
Definition:
CNFDataBlock.h:20
CNFDB_404::cref_node::cref_node
cref_node()
Definition:
CNFDB_404.h:55
CNFDB_404::make_ref_node_list
cref_node_list * make_ref_node_list(CNFData *nfd)
Definition:
CNFDB_404.cpp:109
CNFDB_404::top_Tetra4
@ top_Tetra4
Definition:
CNFDB_404.h:36
CNFDB_404::~CNFDB_404
virtual ~CNFDB_404()
Definition:
CNFDB_404.cpp:18
CNFDB_404::cref_node
Definition:
CNFDB_404.h:49
CNFDB_404::top_Tetra10
@ top_Tetra10
Definition:
CNFDB_404.h:40
CNFDB_404::top_Line3
@ top_Line3
Definition:
CNFDB_404.h:31
CNFDB_404::top_dummy2
@ top_dummy2
Definition:
CNFDB_404.h:44
CNFDB_404
Definition:
CNFDB_404.h:16
nf_int
int nf_int
Definition:
CNFDataBlock.h:19
CNFDB_404::cref_node::dof
nf_int dof[7]
Definition:
CNFDB_404.h:54
CNFDB_404::top_Tri3
@ top_Tri3
Definition:
CNFDB_404.h:32
CNFDB_404::top_Point
@ top_Point
Definition:
CNFDB_404.h:39
CNFDB_404::matl_orflag
nf_bool matl_orflag
Definition:
CNFDB_404.h:94
CNFDB_404::ref_node_set
std::vector< cref_node_list * > ref_node_set
Definition:
CNFDB_404.h:118
CNFDB_404::formulation
nf_int formulation
Definition:
CNFDB_404.h:98
CNFDB_404::orient
nf_float orient[3]
Definition:
CNFDB_404.h:105
CNFDB_404::release1
nf_bool release1[6]
Definition:
CNFDB_404.h:111
CNFDB_404::WriteData
virtual void WriteData(class CNFData *nfd, FILE *fp)
Definition:
CNFDB_404.cpp:140
CNFDB_404::layer
nf_int layer
Definition:
CNFDB_404.h:92
nf_float
double nf_float
Definition:
CNFDataBlock.h:21
fistr1
tools
neu2fstr
NFD
CNFDB_404.h
Generated by
1.8.17