FrontISTR  5.7.0
Large-scale structural analysis program with finit element method
hecmw_io_struct.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 #ifndef HECMW_IO_STRUCT_INCLUDED
7 #define HECMW_IO_STRUCT_INCLUDED
8 
9 #include "hecmw_config.h"
10 #include "hecmw_set_int.h"
11 
13  int n;
14  int *id;
15 };
16 
17 struct hecmw_io_id {
18  int id;
19  struct hecmw_io_id *next;
20 };
21 
24 };
25 
26 struct hecmw_io_zero {
27  double zero;
28 };
29 
30 struct hecmw_io_node {
31  double x;
32  double y;
33  double z;
34 };
35 
37  int type;
38  int *node;
39  int nmatitem;
40  double *matitem;
41  char matname[HECMW_NAME_LEN + 1]; /* created material name */
42  int mpc_matid; /* for element type 9XX */
43  int mpc_sectid; /* for element type 9XX */
44 };
45 
46 struct hecmw_io_ngrp {
47  char name[HECMW_NAME_LEN + 1];
50 };
51 
52 struct hecmw_io_egrp {
53  char name[HECMW_NAME_LEN + 1];
56 };
57 
58 struct hecmw_io_sgrp {
59  char name[HECMW_NAME_LEN + 1];
62 };
63 
64 struct hecmw_io_mpc {
65  int neq;
66  double cnst;
67 
69  char ngrp[HECMW_NAME_LEN + 1]; /* valid if node == -1 */
70  int node;
71  int dof;
72  double a;
73  } * item; /* neq */
74  struct hecmw_io_mpc *next;
75 };
76 
78  char name[HECMW_NAME_LEN + 1];
79  int type_def;
80  int type_time;
81  int type_val;
82 
84  double val;
85  double table;
87  } * item;
90 };
91 
93  int type;
94 #define HECMW_INITIAL_TYPE_TEMPERATURE 1
95  int node;
96  char ngrp[HECMW_NAME_LEN + 1]; /* valid if node == -1 */
97  double val;
99 };
100 
102  char name[HECMW_NAME_LEN + 1];
103  int nitem;
104 
106  int item;
107  int nval;
108 
110  double *val;
111  double temp;
113  } * subitem;
114  } * item;
116 };
117 
119  char egrp[HECMW_NAME_LEN + 1];
122  int secopt;
123  int type;
124 
127  double thickness;
128  } solid;
129 
131  double thickness;
133  } shell;
134 
136  double vxyz[3];
137  double area;
138  double Iyy;
139  double Izz;
140  double Jx;
141  } beam;
142 
144  double thickness;
145  double gapcon;
146  double gaprad1;
147  double gaprad2;
148  } interface;
149  } sect;
151 };
152 
154  char name[HECMW_NAME_LEN + 1];
155  int type;
160 };
161 
162 #endif
hecmw_io_section::hecmw_io_section_item::shell
struct hecmw_io_section::hecmw_io_section_item::hecmw_io_section_shell shell
hecmw_io_section::hecmw_io_section_item::hecmw_io_section_beam::area
double area
Definition: hecmw_io_struct.h:137
hecmw_io_section::hecmw_io_section_item::hecmw_io_section_shell
Definition: hecmw_io_struct.h:130
hecmw_io_element::mpc_matid
int mpc_matid
Definition: hecmw_io_struct.h:42
hecmw_io_amplitude::hecmw_io_amplitude_item::table
double table
Definition: hecmw_io_struct.h:85
hecmw_io_amplitude::hecmw_io_amplitude_item::val
double val
Definition: hecmw_io_struct.h:84
hecmw_io_id_array::n
int n
Definition: hecmw_io_struct.h:16
hecmw_io_header::header
char header[HECMW_HEADER_LEN+1]
Definition: hecmw_io_struct.h:23
hecmw_io_node
Definition: hecmw_io_struct.h:30
hecmw_io_amplitude::hecmw_io_amplitude_item
Definition: hecmw_io_struct.h:83
hecmw_io_material::hecmw_io_matitem
Definition: hecmw_io_struct.h:105
hecmw_io_mpc::item
struct hecmw_io_mpc::hecmw_io_mpcitem * item
hecmw_io_element::node
int * node
Definition: hecmw_io_struct.h:38
hecmw_io_material::item
struct hecmw_io_material::hecmw_io_matitem * item
hecmw_set_int.h
hecmw_io_section::hecmw_io_section_item::hecmw_io_section_beam::Iyy
double Iyy
Definition: hecmw_io_struct.h:138
hecmw_io_amplitude::hecmw_io_amplitude_item::next
struct hecmw_io_amplitude_item * next
Definition: hecmw_io_struct.h:86
hecmw_io_egrp::name
char name[HECMW_NAME_LEN+1]
Definition: hecmw_io_struct.h:53
hecmw_io_contact::type
int type
Definition: hecmw_io_struct.h:155
hecmw_io_section::hecmw_io_section_item::hecmw_io_section_interface
Definition: hecmw_io_struct.h:143
hecmw_io_mpc::hecmw_io_mpcitem::ngrp
char ngrp[HECMW_NAME_LEN+1]
Definition: hecmw_io_struct.h:69
hecmw_io_section::material
char material[HECMW_NAME_LEN+1]
Definition: hecmw_io_struct.h:120
hecmw_io_contact::master_grp
char master_grp[HECMW_NAME_LEN+1]
Definition: hecmw_io_struct.h:156
hecmw_io_material::name
char name[HECMW_NAME_LEN+1]
Definition: hecmw_io_struct.h:102
hecmw_io_section::hecmw_io_section_item::interface
struct hecmw_io_section::hecmw_io_section_item::hecmw_io_section_interface interface
hecmw_io_material::hecmw_io_matitem::item
int item
Definition: hecmw_io_struct.h:106
hecmw_io_material::nitem
int nitem
Definition: hecmw_io_struct.h:103
hecmw_io_material::hecmw_io_matitem::hecmw_io_matsubitem::temp
double temp
Definition: hecmw_io_struct.h:111
hecmw_io_material
Definition: hecmw_io_struct.h:101
hecmw_io_section::hecmw_io_section_item::hecmw_io_section_beam::Izz
double Izz
Definition: hecmw_io_struct.h:139
hecmw_io_egrp::elem
struct hecmw_set_int * elem
Definition: hecmw_io_struct.h:54
hecmw_io_section::hecmw_io_section_item::hecmw_io_section_interface::gapcon
double gapcon
Definition: hecmw_io_struct.h:145
hecmw_io_node::x
double x
Definition: hecmw_io_struct.h:31
hecmw_io_material::hecmw_io_matitem::hecmw_io_matsubitem::next
struct hecmw_io_matsubitem * next
Definition: hecmw_io_struct.h:112
hecmw_io_section::hecmw_io_section_item::beam
struct hecmw_io_section::hecmw_io_section_item::hecmw_io_section_beam beam
hecmw_io_node::y
double y
Definition: hecmw_io_struct.h:32
hecmw_io_ngrp::next
struct hecmw_io_ngrp * next
Definition: hecmw_io_struct.h:49
hecmw_io_mpc::hecmw_io_mpcitem::a
double a
Definition: hecmw_io_struct.h:72
hecmw_io_id::id
int id
Definition: hecmw_io_struct.h:18
hecmw_io_ngrp
Definition: hecmw_io_struct.h:46
hecmw_io_section::hecmw_io_section_item::solid
struct hecmw_io_section::hecmw_io_section_item::hecmw_io_section_solid solid
hecmw_io_id_array::id
int * id
Definition: hecmw_io_struct.h:17
hecmw_io_material::hecmw_io_matitem::hecmw_io_matsubitem
Definition: hecmw_io_struct.h:109
hecmw_io_amplitude::name
char name[HECMW_NAME_LEN+1]
Definition: hecmw_io_struct.h:78
hecmw_io_id
Definition: hecmw_io_struct.h:17
hecmw_io_node::z
double z
Definition: hecmw_io_struct.h:33
hecmw_io_contact::slave_orisgrp
char slave_orisgrp[HECMW_NAME_LEN+1]
Definition: hecmw_io_struct.h:158
hecmw_io_section::hecmw_io_section_item::hecmw_io_section_beam
Definition: hecmw_io_struct.h:135
hecmw_io_sgrp
Definition: hecmw_io_struct.h:58
hecmw_io_section
Definition: hecmw_io_struct.h:118
hecmw_io_section::egrp
char egrp[HECMW_NAME_LEN+1]
Definition: hecmw_io_struct.h:119
hecmw_io_section::hecmw_io_section_item::hecmw_io_section_solid
Definition: hecmw_io_struct.h:126
hecmw_io_element::mpc_sectid
int mpc_sectid
Definition: hecmw_io_struct.h:43
hecmw_io_element::matitem
double * matitem
Definition: hecmw_io_struct.h:40
HECMW_NAME_LEN
#define HECMW_NAME_LEN
Definition: hecmw_config.h:70
hecmw_io_amplitude::last
struct hecmw_io_amplitude_item * last
Definition: hecmw_io_struct.h:88
hecmw_io_amplitude::type_time
int type_time
Definition: hecmw_io_struct.h:80
hecmw_io_zero
Definition: hecmw_io_struct.h:26
hecmw_config.h
hecmw_io_initial::type
int type
Definition: hecmw_io_struct.h:93
hecmw_io_section::hecmw_io_section_item::hecmw_io_section_solid::thickness
double thickness
Definition: hecmw_io_struct.h:127
hecmw_io_sgrp::name
char name[HECMW_NAME_LEN+1]
Definition: hecmw_io_struct.h:59
hecmw_io_element::nmatitem
int nmatitem
Definition: hecmw_io_struct.h:39
hecmw_io_element::matname
char matname[HECMW_NAME_LEN+1]
Definition: hecmw_io_struct.h:41
hecmw_io_section::sect
union hecmw_io_section::hecmw_io_section_item sect
hecmw_set_int
Definition: hecmw_set_int.h:11
hecmw_io_section::type
int type
Definition: hecmw_io_struct.h:123
hecmw_io_mpc
Definition: hecmw_io_struct.h:64
hecmw_io_mpc::neq
int neq
Definition: hecmw_io_struct.h:65
hecmw_io_header
Definition: hecmw_io_struct.h:22
hecmw_io_sgrp::next
struct hecmw_io_sgrp * next
Definition: hecmw_io_struct.h:61
hecmw_io_contact
Definition: hecmw_io_struct.h:153
hecmw_io_initial::next
struct hecmw_io_initial * next
Definition: hecmw_io_struct.h:98
hecmw_io_amplitude::next
struct hecmw_io_amplitude * next
Definition: hecmw_io_struct.h:89
hecmw_io_id_array
Definition: hecmw_io_struct.h:12
hecmw_io_id::next
struct hecmw_io_id * next
Definition: hecmw_io_struct.h:19
hecmw_io_contact::next
struct hecmw_io_contact * next
Definition: hecmw_io_struct.h:159
hecmw_io_section::composite
int composite
Definition: hecmw_io_struct.h:121
hecmw_io_section::hecmw_io_section_item::hecmw_io_section_shell::thickness
double thickness
Definition: hecmw_io_struct.h:131
hecmw_io_section::hecmw_io_section_item
Definition: hecmw_io_struct.h:125
hecmw_io_mpc::next
struct hecmw_io_mpc * next
Definition: hecmw_io_struct.h:74
hecmw_io_contact::slave_grp
char slave_grp[HECMW_NAME_LEN+1]
Definition: hecmw_io_struct.h:157
hecmw_io_amplitude::item
struct hecmw_io_amplitude::hecmw_io_amplitude_item * item
hecmw_io_initial
Definition: hecmw_io_struct.h:92
hecmw_io_zero::zero
double zero
Definition: hecmw_io_struct.h:27
hecmw_io_material::next
struct hecmw_io_material * next
Definition: hecmw_io_struct.h:115
hecmw_io_section::hecmw_io_section_item::hecmw_io_section_interface::gaprad2
double gaprad2
Definition: hecmw_io_struct.h:147
hecmw_io_egrp
Definition: hecmw_io_struct.h:52
hecmw_io_section::hecmw_io_section_item::hecmw_io_section_beam::vxyz
double vxyz[3]
Definition: hecmw_io_struct.h:136
hecmw_io_material::hecmw_io_matitem::subitem
struct hecmw_io_material::hecmw_io_matitem::hecmw_io_matsubitem * subitem
hecmw_io_section::secopt
int secopt
Definition: hecmw_io_struct.h:122
hecmw_io_amplitude::type_val
int type_val
Definition: hecmw_io_struct.h:81
hecmw_io_mpc::hecmw_io_mpcitem::dof
int dof
Definition: hecmw_io_struct.h:71
hecmw_io_initial::node
int node
Definition: hecmw_io_struct.h:95
hecmw_io_ngrp::name
char name[HECMW_NAME_LEN+1]
Definition: hecmw_io_struct.h:47
hecmw_io_section::hecmw_io_section_item::hecmw_io_section_beam::Jx
double Jx
Definition: hecmw_io_struct.h:140
hecmw_io_sgrp::item
struct hecmw_set_int * item
Definition: hecmw_io_struct.h:60
hecmw_io_contact::name
char name[HECMW_NAME_LEN+1]
Definition: hecmw_io_struct.h:154
hecmw_io_section::hecmw_io_section_item::hecmw_io_section_interface::gaprad1
double gaprad1
Definition: hecmw_io_struct.h:146
hecmw_io_section::hecmw_io_section_item::hecmw_io_section_shell::integpoints
int integpoints
Definition: hecmw_io_struct.h:132
hecmw_io_ngrp::node
struct hecmw_set_int * node
Definition: hecmw_io_struct.h:48
hecmw_io_mpc::hecmw_io_mpcitem::node
int node
Definition: hecmw_io_struct.h:70
hecmw_io_element
Definition: hecmw_io_struct.h:36
hecmw_io_element::type
int type
Definition: hecmw_io_struct.h:37
hecmw_io_mpc::hecmw_io_mpcitem
Definition: hecmw_io_struct.h:68
hecmw_io_initial::val
double val
Definition: hecmw_io_struct.h:97
hecmw_io_material::hecmw_io_matitem::hecmw_io_matsubitem::val
double * val
Definition: hecmw_io_struct.h:110
hecmw_io_material::hecmw_io_matitem::nval
int nval
Definition: hecmw_io_struct.h:107
hecmw_io_section::hecmw_io_section_item::hecmw_io_section_interface::thickness
double thickness
Definition: hecmw_io_struct.h:144
hecmw_io_egrp::next
struct hecmw_io_egrp * next
Definition: hecmw_io_struct.h:55
hecmw_io_amplitude::type_def
int type_def
Definition: hecmw_io_struct.h:79
hecmw_io_section::next
struct hecmw_io_section * next
Definition: hecmw_io_struct.h:150
hecmw_io_amplitude
Definition: hecmw_io_struct.h:77
hecmw_io_initial::ngrp
char ngrp[HECMW_NAME_LEN+1]
Definition: hecmw_io_struct.h:96
HECMW_HEADER_LEN
#define HECMW_HEADER_LEN
Definition: hecmw_config.h:68
hecmw_io_mpc::cnst
double cnst
Definition: hecmw_io_struct.h:66