FrontISTR  5.7.1
Large-scale structural analysis program with finit element method
hecmw_io_mesh.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_MESH_INCLUDED
7 #define HECMW_IO_MESH_INCLUDED
8 
9 #include <stdio.h>
10 #include "hecmw_util.h"
11 #include "hecmw_io_struct.h"
12 #include "hecmw_system.h"
13 
14 extern int HECMW_io_get_version(void);
15 
16 extern int HECMW_io_init(void);
17 
18 extern int HECMW_io_finalize(void);
19 
20 extern void HECMW_io_print_all(FILE *fp);
21 
22 extern int HECMW_io_free_all(void);
23 
24 extern int HECMW_io_set_gridfile(char *gridfile);
25 
26 extern struct hecmw_io_amplitude *HECMW_io_add_amp(const char *name,
27  int definition, int time,
28  int value, double val,
29  double t);
30 
31 extern struct hecmw_io_initial *HECMW_io_get_initial(int node);
32 
33 extern struct hecmw_io_initial *HECMW_io_add_initial(int type, int node,
34  const char *ngrp,
35  double val);
36 
37 extern struct hecmw_io_element *HECMW_io_get_elem(int id);
38 
39 extern int HECMW_io_get_n_elem(void);
40 
41 extern int HECMW_io_get_elem_max_id(void);
42 
43 extern struct hecmw_io_element *HECMW_io_add_elem(int id, int type, int *node,
44  int nmatitem,
45  double *matitem);
46 
47 struct hecmw_io_id_array *HECMW_io_get_elem_in_egrp(const char *name);
48 
49 extern struct hecmw_io_egrp *HECMW_io_get_egrp(const char *name);
50 
51 extern int HECMW_io_add_egrp(const char *name, int nelem, int *elem);
52 
53 extern struct hecmw_io_node *HECMW_io_get_node(int id);
54 
55 extern int HECMW_io_get_n_node(void);
56 
57 extern struct hecmw_io_node *HECMW_io_add_node(int id, double x, double y,
58  double z);
59 
60 extern int HECMW_io_get_nnode_in_ngrp(const char *name);
61 
62 extern int HECMW_io_remove_node(int id);
63 
64 extern struct hecmw_io_ngrp *HECMW_io_get_ngrp(const char *name);
65 
66 extern struct hecmw_io_id_array *HECMW_io_get_node_in_ngrp(const char *name);
67 
68 extern int HECMW_io_add_ngrp(const char *name, int nnode, int *node);
69 
70 extern int HECMW_io_add_sgrp(const char *name, int n, int *elem, int *surf);
71 
72 extern struct hecmw_io_mpc *HECMW_io_add_mpc(
73  int neq, const struct hecmw_io_mpcitem *mpcitem, double cnst);
74 
75 extern struct hecmw_io_section *HECMW_io_add_sect(
76  struct hecmw_io_section *sect);
77 
78 extern struct hecmw_io_material *HECMW_io_get_mat(const char *name);
79 
80 extern struct hecmw_io_material *HECMW_io_add_mat(
81  const char *name, struct hecmw_io_material *mat);
82 
83 extern void HECMW_io_set_header(struct hecmw_io_header *header);
84 
85 extern struct hecmw_system_param *HECMW_io_get_system(void);
86 
87 extern void HECMW_io_set_system(struct hecmw_system_param *system);
88 
89 extern void HECMW_io_set_zero(struct hecmw_io_zero *zero);
90 
91 extern struct hecmw_io_contact *HECMW_io_add_contact(const char *name, int type,
92  const char *slave_grp,
93  const char *master_grp);
94 
95 extern int HECMW_io_post_process(void);
96 
97 extern int HECMW_io_pre_process(void);
98 
99 extern int HECMW_io_check_mpc_dof(int dof);
100 
101 extern int HECMW_io_is_reserved_name(const char *name);
102 
103 extern struct hecmwST_local_mesh *HECMW_io_make_local_mesh(void);
104 
105 #endif
struct hecmw_io_mpc * HECMW_io_add_mpc(int neq, const struct hecmw_io_mpcitem *mpcitem, double cnst)
int HECMW_io_check_mpc_dof(int dof)
struct hecmw_io_egrp * HECMW_io_get_egrp(const char *name)
struct hecmw_io_id_array * HECMW_io_get_node_in_ngrp(const char *name)
int HECMW_io_is_reserved_name(const char *name)
int HECMW_io_add_ngrp(const char *name, int nnode, int *node)
struct hecmw_io_section * HECMW_io_add_sect(struct hecmw_io_section *sect)
struct hecmw_io_id_array * HECMW_io_get_elem_in_egrp(const char *name)
struct hecmw_io_amplitude * HECMW_io_add_amp(const char *name, int definition, int time, int value, double val, double t)
struct hecmw_io_ngrp * HECMW_io_get_ngrp(const char *name)
int HECMW_io_add_egrp(const char *name, int nelem, int *elem)
struct hecmw_io_node * HECMW_io_get_node(int id)
struct hecmw_io_initial * HECMW_io_add_initial(int type, int node, const char *ngrp, double val)
struct hecmw_io_contact * HECMW_io_add_contact(const char *name, int type, const char *slave_grp, const char *master_grp)
int HECMW_io_free_all(void)
struct hecmw_io_element * HECMW_io_get_elem(int id)
struct hecmw_io_material * HECMW_io_add_mat(const char *name, struct hecmw_io_material *mat)
int HECMW_io_get_elem_max_id(void)
struct hecmw_io_initial * HECMW_io_get_initial(int node)
int HECMW_io_add_sgrp(const char *name, int n, int *elem, int *surf)
struct hecmwST_local_mesh * HECMW_io_make_local_mesh(void)
void HECMW_io_set_zero(struct hecmw_io_zero *zero)
int HECMW_io_get_version(void)
int HECMW_io_remove_node(int id)
int HECMW_io_init(void)
int HECMW_io_get_n_node(void)
struct hecmw_io_element * HECMW_io_add_elem(int id, int type, int *node, int nmatitem, double *matitem)
int HECMW_io_pre_process(void)
void HECMW_io_set_system(struct hecmw_system_param *system)
void HECMW_io_print_all(FILE *fp)
struct hecmw_io_node * HECMW_io_add_node(int id, double x, double y, double z)
int HECMW_io_post_process(void)
int HECMW_io_get_n_elem(void)
struct hecmw_io_material * HECMW_io_get_mat(const char *name)
int HECMW_io_set_gridfile(char *gridfile)
int HECMW_io_finalize(void)
struct hecmw_system_param * HECMW_io_get_system(void)
void HECMW_io_set_header(struct hecmw_io_header *header)
int HECMW_io_get_nnode_in_ngrp(const char *name)
char name[HECMW_NAME_LEN+1]
char name[HECMW_NAME_LEN+1]
char master_grp[HECMW_NAME_LEN+1]
char slave_grp[HECMW_NAME_LEN+1]
char name[HECMW_NAME_LEN+1]
struct hecmw_set_int * elem
char ngrp[HECMW_NAME_LEN+1]
char name[HECMW_NAME_LEN+1]
char name[HECMW_NAME_LEN+1]
union hecmw_io_section::hecmw_io_section_item sect