FrontISTR  5.7.1
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;
149  } sect;
151 };
152 
154  char name[HECMW_NAME_LEN + 1];
155  int type;
160 };
161 
162 #endif
#define HECMW_HEADER_LEN
Definition: hecmw_config.h:68
#define HECMW_NAME_LEN
Definition: hecmw_config.h:70
struct hecmw_io_amplitude_item * next
char name[HECMW_NAME_LEN+1]
struct hecmw_io_amplitude * next
struct hecmw_io_amplitude::hecmw_io_amplitude_item * item
struct hecmw_io_amplitude_item * last
char name[HECMW_NAME_LEN+1]
char master_grp[HECMW_NAME_LEN+1]
struct hecmw_io_contact * next
char slave_orisgrp[HECMW_NAME_LEN+1]
char slave_grp[HECMW_NAME_LEN+1]
char name[HECMW_NAME_LEN+1]
struct hecmw_set_int * elem
struct hecmw_io_egrp * next
char matname[HECMW_NAME_LEN+1]
char header[HECMW_HEADER_LEN+1]
struct hecmw_io_id * next
struct hecmw_io_initial * next
char ngrp[HECMW_NAME_LEN+1]
struct hecmw_io_material::hecmw_io_matitem::hecmw_io_matsubitem * subitem
struct hecmw_io_material * next
struct hecmw_io_material::hecmw_io_matitem * item
char name[HECMW_NAME_LEN+1]
char ngrp[HECMW_NAME_LEN+1]
struct hecmw_io_mpc * next
struct hecmw_io_mpc::hecmw_io_mpcitem * item
struct hecmw_set_int * node
struct hecmw_io_ngrp * next
char name[HECMW_NAME_LEN+1]
char egrp[HECMW_NAME_LEN+1]
struct hecmw_io_section * next
union hecmw_io_section::hecmw_io_section_item sect
char material[HECMW_NAME_LEN+1]
struct hecmw_set_int * item
struct hecmw_io_sgrp * next
char name[HECMW_NAME_LEN+1]
struct hecmw_io_section::hecmw_io_section_item::hecmw_io_section_interface interface
struct hecmw_io_section::hecmw_io_section_item::hecmw_io_section_solid solid
struct hecmw_io_section::hecmw_io_section_item::hecmw_io_section_shell shell
struct hecmw_io_section::hecmw_io_section_item::hecmw_io_section_beam beam