FrontISTR 5.2.0
Large-scale structural analysis program with finit element method
Loading...
Searching...
No Matches
CNFDB_601.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_601 Ver. 3.6
7 -----------------------------
8 601 Material
9*/
10
11#ifndef CNFDB_601H
12#define CNFDB_601H
13
14#include "CNFDataBlock.h"
15
16// 601 Material
17class CNFDB_601 : public CNFDataBlock {
18 public:
19 CNFDB_601();
20 virtual ~CNFDB_601() {}
21
22 virtual void Read(class CNFData* nfd);
23 virtual void WriteData(class CNFData* nfd, FILE* fp);
24
25 public:
26 class cfunc_rec {
27 public:
28 class cdata_pair {
29 public:
33 cdata_pair(nf_int I = 0, nf_float X = 0, nf_float Y = 0)
34 : index(I), x(X), y(Y) {}
35 };
36 // ##1
39 // ##2
41 // ## ----------------------
42 std::vector<cdata_pair> data;
43 };
44
45 // #1
47 nf_int format; // == -601
53 // #2
55 // #3
56 nf_int Bcount; // == 10
57 // #4
59 // #5
61 // #6,7,8
63 // #9
65 // #10-29
67 // #30
69 // #31-35
71 // #36
73 // #37-43
75 // # ---------------------
76 std::vector<cfunc_rec> func_list;
77
78 // ============================================================================
79 nf_float& E(int i) {
80 assert(0 <= i && i <= 2);
81 return mval[i];
82 }
83 nf_float& G(int i) {
84 assert(0 <= i && i <= 2);
85 return mval[i + 3];
86 }
87 nf_float& NU(int i) {
88 assert(0 <= i && i <= 2);
89 return mval[i + 6];
90 }
92 assert(0 <= i && i <= 5);
93 return mval[i + 36];
94 }
96 assert(0 <= i && i <= 5);
97 return mval[i + 42];
98 }
99 nf_float& THERMAL_CAPACITY() { return mval[48]; }
100 nf_float& DENSITY() { return mval[49]; }
101 nf_float& DAMPING() { return mval[50]; }
102 nf_float& TEMPERATURE() { return mval[51]; }
103};
104
105#endif
char nf_char
Definition: CNFDataBlock.h:22
int nf_int
Definition: CNFDataBlock.h:19
unsigned char nf_bool
Definition: CNFDataBlock.h:20
double nf_float
Definition: CNFDataBlock.h:21
cdata_pair(nf_int I=0, nf_float X=0, nf_float Y=0)
Definition: CNFDB_601.h:33
std::vector< cdata_pair > data
Definition: CNFDB_601.h:42
nf_char title[80]
Definition: CNFDB_601.h:40
nf_int tval[70]
Definition: CNFDB_601.h:74
virtual void WriteData(class CNFData *nfd, FILE *fp)
Definition: CNFDB_601.cpp:121
nf_float & TEMPERATURE()
Definition: CNFDB_601.h:102
nf_int format
Definition: CNFDB_601.h:47
nf_int ival[25]
Definition: CNFDB_601.h:62
nf_float & THERMAL_EXPANSION(int i)
Definition: CNFDB_601.h:91
nf_float & E(int i)
Definition: CNFDB_601.h:79
nf_int Bcount
Definition: CNFDB_601.h:56
nf_float & G(int i)
Definition: CNFDB_601.h:83
std::vector< cfunc_rec > func_list
Definition: CNFDB_601.h:76
nf_int layer
Definition: CNFDB_601.h:51
nf_int Tcount
Definition: CNFDB_601.h:72
nf_int Icount
Definition: CNFDB_601.h:60
nf_int color
Definition: CNFDB_601.h:48
nf_float & THERMAL_CONDUCTIVITY(int i)
Definition: CNFDB_601.h:95
nf_int type
Definition: CNFDB_601.h:49
nf_float & DAMPING()
Definition: CNFDB_601.h:101
nf_char title[26]
Definition: CNFDB_601.h:54
nf_float mval[200]
Definition: CNFDB_601.h:66
nf_int fval[50]
Definition: CNFDB_601.h:70
nf_int FunctionCount
Definition: CNFDB_601.h:52
nf_float & NU(int i)
Definition: CNFDB_601.h:87
nf_int ID
Definition: CNFDB_601.h:46
nf_int subtype
Definition: CNFDB_601.h:50
virtual ~CNFDB_601()
Definition: CNFDB_601.h:20
virtual void Read(class CNFData *nfd)
Definition: CNFDB_601.cpp:21
nf_int Mcount
Definition: CNFDB_601.h:64
nf_bool bval[10]
Definition: CNFDB_601.h:58
nf_float & DENSITY()
Definition: CNFDB_601.h:100
nf_float & THERMAL_CAPACITY()
Definition: CNFDB_601.h:99
nf_int Fcount
Definition: CNFDB_601.h:68