FrontISTR 5.2.0
Large-scale structural analysis program with finit element method
Loading...
Searching...
No Matches
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
16class 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 {
44 };
45
46 class cref_node {
47 public:
51 nf_int dof[7]; // dof[0]:dummy
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 }
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
79 public:
80 std::vector<cref_node> ref_node;
81 };
82
83 // #1
92 // Ver. 3.6 ========================
94 // Ver. 3.6 ========================
97 // Ver. 3.6 ========================
99 // #2,3
101 // #4
103 // #5
105 // #6
107 // #7
109 // #8
111 // Ver. 3.6 ========================
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:
119 void clear_ref_node_set();
120 void write_ref_node_list(CNFData* nfd, FILE* fp, cref_node_list* list);
121};
122
123#endif
int nf_int
Definition: CNFDataBlock.h:19
unsigned char nf_bool
Definition: CNFDataBlock.h:20
double nf_float
Definition: CNFDataBlock.h:21
std::vector< cref_node > ref_node
Definition: CNFDB_404.h:80
cref_node & operator=(const cref_node &r)
Definition: CNFDB_404.h:63
cref_node(const cref_node &r)
Definition: CNFDB_404.h:53
nf_int type
Definition: CNFDB_404.h:87
cref_node_list * make_ref_node_list(CNFData *nfd)
Definition: CNFDB_404.cpp:109
nf_bool release2[6]
Definition: CNFDB_404.h:110
virtual ~CNFDB_404()
Definition: CNFDB_404.cpp:18
nf_float offset2[3]
Definition: CNFDB_404.h:106
nf_bool release1[6]
Definition: CNFDB_404.h:108
@ top_Tri3
Definition: CNFDB_404.h:29
@ top_dummy2
Definition: CNFDB_404.h:41
@ top_Quad8
Definition: CNFDB_404.h:32
@ top_Wedge15
Definition: CNFDB_404.h:38
@ top_MultiList
Definition: CNFDB_404.h:42
@ top_Contact
Definition: CNFDB_404.h:43
@ top_Tetra4
Definition: CNFDB_404.h:33
@ top_RigidList
Definition: CNFDB_404.h:40
@ top_Brick8
Definition: CNFDB_404.h:35
@ top_Tetra10
Definition: CNFDB_404.h:37
@ top_Quad4
Definition: CNFDB_404.h:31
@ top_Brick20
Definition: CNFDB_404.h:39
@ top_Wedge6
Definition: CNFDB_404.h:34
@ top_Line2
Definition: CNFDB_404.h:27
@ top_Tri6
Definition: CNFDB_404.h:30
@ top_Line3
Definition: CNFDB_404.h:28
@ top_Point
Definition: CNFDB_404.h:36
nf_int layer
Definition: CNFDB_404.h:89
nf_int orientID
Definition: CNFDB_404.h:90
nf_int formulation
Definition: CNFDB_404.h:95
nf_int contactsegment[2]
Definition: CNFDB_404.h:96
nf_int color
Definition: CNFDB_404.h:85
nf_float orient[3]
Definition: CNFDB_404.h:102
virtual void Read(class CNFData *nfd)
Definition: CNFDB_404.cpp:20
nf_int formulation2
Definition: CNFDB_404.h:98
nf_int topology
Definition: CNFDB_404.h:88
nf_bool matl_orflag
Definition: CNFDB_404.h:91
nf_int ID
Definition: CNFDB_404.h:84
std::vector< cref_node_list * > ref_node_set
Definition: CNFDB_404.h:115
nf_int geomID
Definition: CNFDB_404.h:93
nf_int list[4]
Definition: CNFDB_404.h:112
nf_int propID
Definition: CNFDB_404.h:86
nf_float offset1[3]
Definition: CNFDB_404.h:104
nf_int node[20]
Definition: CNFDB_404.h:100
void clear_ref_node_set()
Definition: CNFDB_404.cpp:99
virtual void WriteData(class CNFData *nfd, FILE *fp)
Definition: CNFDB_404.cpp:140
void write_ref_node_list(CNFData *nfd, FILE *fp, cref_node_list *list)
Definition: CNFDB_404.cpp:199