FrontISTR 5.2.0
Large-scale structural analysis program with finit element method
Loading...
Searching...
No Matches
hecmw_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_STRUCT_INCLUDED
7#define HECMW_STRUCT_INCLUDED
8
9#include "hecmw_util.h"
10
12 int n_sect;
13
15#define HECMW_SECT_TYPE_SOLID 1 /* 1:SOLID */
16#define HECMW_SECT_TYPE_SHELL 2 /* 2:SHELL */
17#define HECMW_SECT_TYPE_BEAM 3 /* 3:BEAM */
18#define HECMW_SECT_TYPE_INTERFACE 4 /* 4:INTERFACE */
19
21#define HECMW_SECT_OPT_PSTRESS 0 /* plane stress */
22#define HECMW_SECT_OPT_PSTRAIN 1 /* plane strain */
23#define HECMW_SECT_OPT_ASYMMETRY 2 /* axial symmetry */
24#define HECMW_SECT_OPT_PSTRESS_RI 10 /* plane stress & reduced integral */
25#define HECMW_SECT_OPT_PSTRAIN_RI 11 /* plane strain & reduced integral */
26#define HECMW_SECT_OPT_ASYMMETRY_RI 12 /* axial symmetry & reduced integral */
32 double *sect_R_item;
33};
34
36 int n_mat;
40 char **mat_name;
44 double *mat_val;
45 double *mat_temp;
46};
47
49 int n_mpc;
52 int *mpc_dof;
53 double *mpc_val;
54 double *mpc_const;
55};
56
58 int n_amp;
59 char **amp_name;
60
62#define HECMW_AMP_TYPEDEF_TABULAR 1 /* 1:TABULAR(default) */
63
65#define HECMW_AMP_TYPETIME_STEP 1 /* 1:STEP_TIME(default) */
66
68#define HECMW_AMP_TYPEVAL_RELATIVE 1 /* 1:RELATIVE(default) */
69#define HECMW_AMP_TYPEVAL_ABSOLUTE 2 /* 2:ABSOLUTE */
71 double *amp_val;
72 double *amp_table;
73};
74
76 int n_grp;
77 char **grp_name;
80
81 int n_bc;
83
85#define HECMW_BCGRPTYPE_DISPALCEMENT 1 /* 1:displacement */
86#define HECMW_BCGRPTYPE_FLUX 2 /* 2:flux */
89 double *bc_grp_val;
90};
91
93 int n_grp;
94 char **grp_name;
97
98 int n_bc;
100
103 double *bc_grp_val;
104};
105
107 int n_grp;
108 char **grp_name;
110
112 int n_bc;
114
116
118 double *bc_grp_val;
119};
120
123 char **name;
124 int *type;
125#define HECMW_CONTACT_TYPE_NODE_SURF 1 /* 1:NODE_SURF */
126#define HECMW_CONTACT_TYPE_SURF_SURF 2 /* 2:SURF_SURF */
130};
131
133 int *index;
136};
137
142#define HECMW_FLAG_PARTTYPE_UNKNOWN 0 /* 0:unknown */
143#define HECMW_FLAG_PARTTYPE_NODEBASED 1 /* 1:Node-based */
144#define HECMW_FLAG_PARTTYPE_ELEMBASED 2 /* 2:Element-based */
148#define HECMW_FLAG_PARTCONTACT_UNKNOWN 0 /* 0:unknown */
149#define HECMW_FLAG_PARTCONTACT_AGGREGATE 1 /* 1:aggregate */
150#define HECMW_FLAG_PARTCONTACT_DISTRIBUTE 2 /* 2:distribute */
151#define HECMW_FLAG_PARTCONTACT_SIMPLE 3 /* 3:simple */
152
155 char **files;
157 double zero_temp;
158
159 /* Node */
165
168
169 double *node;
170 int n_dof;
175
178
181
182 /* Element */
187
200
205
206 /* PE & Communication */
207 int zero;
209 int PETOT;
222
223 /* Adaptation */
231
235
236 /* Refinement */
243
253};
254
255#endif
#define HECMW_FILENAME_LEN
Definition: hecmw_config.h:72
MPI_Comm HECMW_Comm
Definition: hecmw_config.h:30
#define HECMW_HEADER_LEN
Definition: hecmw_config.h:68
int * amp_type_definition
Definition: hecmw_struct.h:61
double * amp_table
Definition: hecmw_struct.h:72
double * bc_grp_val
Definition: hecmw_struct.h:103
struct hecmwST_section * section
Definition: hecmw_struct.h:244
double * elem_val_item
Definition: hecmw_struct.h:204
double * elem_mat_int_val
Definition: hecmw_struct.h:202
struct hecmwST_amplitude * amp
Definition: hecmw_struct.h:247
struct hecmwST_material * material
Definition: hecmw_struct.h:245
struct hecmwST_refine_origin * refine_origin
Definition: hecmw_struct.h:252
double * node_val_item
Definition: hecmw_struct.h:177
struct hecmwST_mpc * mpc
Definition: hecmw_struct.h:246
struct hecmwST_node_grp * node_group
Definition: hecmw_struct.h:248
double * node_init_val_item
Definition: hecmw_struct.h:180
struct hecmwST_contact_pair * contact_pair
Definition: hecmw_struct.h:251
struct hecmwST_surf_grp * surf_group
Definition: hecmw_struct.h:250
char gridfile[HECMW_FILENAME_LEN+1]
Definition: hecmw_struct.h:153
char header[HECMW_HEADER_LEN+1]
Definition: hecmw_struct.h:156
HECMW_Comm HECMW_COMM
Definition: hecmw_struct.h:208
struct hecmwST_elem_grp * elem_group
Definition: hecmw_struct.h:249
int * when_i_was_refined_node
Definition: hecmw_struct.h:226
int * when_i_was_refined_elem
Definition: hecmw_struct.h:227
int * mat_subitem_index
Definition: hecmw_struct.h:42
double * mat_val
Definition: hecmw_struct.h:44
double * mat_temp
Definition: hecmw_struct.h:45
int * mpc_dof
Definition: hecmw_struct.h:52
double * mpc_val
Definition: hecmw_struct.h:53
double * mpc_const
Definition: hecmw_struct.h:54
int * mpc_index
Definition: hecmw_struct.h:50
int * mpc_item
Definition: hecmw_struct.h:51
double * bc_grp_val
Definition: hecmw_struct.h:89
double * sect_R_item
Definition: hecmw_struct.h:32
int * sect_mat_ID_index
Definition: hecmw_struct.h:27
int * sect_mat_ID_item
Definition: hecmw_struct.h:28
double * bc_grp_val
Definition: hecmw_struct.h:118