00001 #ifndef GLOBPREPT_H 00002 #define GLOBPREPT_H 00003 00004 #include "vector.h" 00005 #include "siftop.h" 00006 #include "list.h" 00007 #include "aliast.h" 00008 #include "globalt.h" 00009 #include "bocont.h" 00010 #include "sourcet.h" 00011 #include "loadelt.h" 00012 #include "dbcrst.h" 00013 #include "dbmatt.h" 00014 #include "entitybocon.h" 00015 00016 00017 #ifndef EXTERN 00018 #define EXTERN extern 00019 #endif 00020 00021 EXTERN char *Inicdf; ///< pointer to the initial condition file name (must not be deleted) 00022 EXTERN FILE *Log; ///< Log file of mechprep 00023 EXTERN siftop *Top; ///< Sifel topology 00024 EXTERN dbmatt *Dbmatt; ///< database of materials and their parameters 00025 EXTERN dbcrst *Dbcrst; ///< database of cross-sections and their parameters 00026 00027 EXTERN gfunct *Tft; ///< array of time functions used in time dependent mechanical problems for each load case 00028 00029 // Following arrays have size equal to number of nodes (first index has to be node number) 00030 EXTERN long **Nod_bocon; ///< boundary conditions at nodes (prescribed values of unknowns) Nod_bc[i][j] returns id of pvalt for i-th node and j-th lcid 00031 EXTERN list Nod_bclst; ///< list of particular prescribed values of uknowns. It is referenced by Nod_bocon 00032 EXTERN long **Nod_ccn; ///< prescribed coupled dofs at nodes 00033 EXTERN crsectypet *Nod_cst; ///< cross-section types at nodes 00034 EXTERN long *Nod_csti; ///< cross-section indeces at nodes 00035 EXTERN long *Nod_cstdbi; ///< cross-section type indeces of nodes in cross-section database 00036 EXTERN double **Nod_inicd; ///< initial conditions at nodes, Nod_inicd[nod_id][lcid] = value of the initial condition for the given quantity (lcid) and given node (nod_id) 00037 EXTERN long **Nod_sourcet; ///< nodal sources of transported quantities, Nod_sourcet[nod_id][lcid] = index of quantitiy source in the Nod_srclst 00038 EXTERN list Nod_srclst; ///< list of particular nodal sources of quantities, indeces from Nod_sourcet refer to this list 00039 00040 // Following arrays have size equal to number of elements (first index has to be element number) 00041 EXTERN elemtypet *El_type; ///< type of elements 00042 EXTERN long *El_nmat; ///< number of material types assigned to particular elements 00043 EXTERN mattypet **El_mattype;///< material type of elements 00044 EXTERN long **El_matid; ///< material indeces of elements 00045 EXTERN long **El_matdbi; ///< material type indeces of elements in material database 00046 EXTERN crsectypet *El_cst; ///< cross-section of elements 00047 EXTERN long *El_csti; ///< cross-section indeces of elements 00048 EXTERN long *El_cstdbi; ///< cross-section type indeces of elements in cross-section database 00049 EXTERN long **El_sourcet;///< sources of transported quantities on elements, Nod_sourcet[elem_id][lcid] = index of quantitiy source in the El_srclst 00050 EXTERN list El_srclst; ///< list of particular sources of quantities on elements, indeces from El_sourcet refer to this list 00051 00052 EXTERN loadelt ***El_loadt; ///< element load, El_load[el_id][lcid] = pointer to loadel structure 00053 EXTERN long **El_loadtln; ///< lines where the edge|surface|volume El_load has been assigned firstly, El_loadln[el_id][lcid][0|1|2] first line with assignment of edge|surface|volume load 00054 EXTERN long **El_loadtcol; ///< columns where the edge|surface|volume El_load has been assigned firstly, El_loadln[el_id][lcid][0|1|2] first column with assignment of edge|surface|volume load 00055 EXTERN list *El_nv_lst; ///< El_nv_lst[lcid] = list of bnodvalt objects for nodal values whose indeces are used in El_loadt for the load case lcid 00056 EXTERN list *El_trc_lst; ///< El_trc_lst[lcid] = list of bnodvalt objects for transmission coefficients whose indeces are used in El_loadt for the load case lcid 00057 EXTERN list *El_trr_lst; ///< El_trr_lst[lcid] = list of bnodvalt objects for radiation coefficients whose indeces are used in El_loadt for the load case lcid 00058 EXTERN list *El_cc_lst; ///< El_cc_lst[lcid] = list of climatcond objects whose indeces are used in El_loadt for the load case lcid 00059 EXTERN list *El_gcc_lst; ///< El_gcc_lst[lcid] = list of climatcond2 objects whose indeces are used in El_loadt for the load case lcid 00060 EXTERN list *El_ccf_lst; ///< El_ccf_lst[lcid] = list of files with climatcond objects whose indeces are used in El_loadt for the load case lcid 00061 EXTERN list *El_gccf_lst; ///< El_gccf_lst[lcid] = list of files with climatcond2 objects whose indeces are used in El_loadt for the load case lcid 00062 EXTERN list *El_trcc_lst; ///< El_trcc_lst[lcid] = list of types of climatcond objects whose indeces are used in El_loadt for the load case lcid 00063 EXTERN list *El_gtrcc_lst;///< El_gtrcc_lst[lcid] = list of types of climatcond2 objects whose indeces are used in El_loadt for the load case lcid 00064 EXTERN long *El_tfunc; ///< indeces of time fucntions for switching elements on/off 00065 00066 // Auxiliary variables 00067 EXTERN long Check_unused_prop; ///< Flag for checking of unused properties 00068 00069 #endif