📄 fe_functions.h
字号:
/* * ============================================================================= * ALADDIN Version 1.0 : * fe_functions.h : External Function Declarations for Finite Elements * * Copyright (C) 1995 by Mark Austin, Xiaoguang Chen, and Wane-Jang Lin * Institute for Systems Research, * University of Maryland, College Park, MD 20742 * * This software is provided "as is" without express or implied warranty. * Permission is granted to use this software for any on any computer system * and to redistribute it freely, subject to the following restrictions: * * 1. The authors are not responsible for the consequences of use of * this software, even if they arise from defects in the software. * 2. The origin of this software must not be misrepresented, either * by explicit claim or by omission. * 3. Altered versions must be plainly marked as such, and must not * be misrepresented as being the original software. * 4. This notice is to remain intact. * * Written by: Mark Austin, Xiaoguang Chen, and Wane-Jang Lin December 1995 * ============================================================================= */#ifndef FE_FUNCTIONS_H#define FE_FUNCTIONS_H#include <stdio.h>#include <malloc.h>#include <math.h>#include <string.h>extern EFRAME *FrameAlloc();extern EFRAME *profile();extern EFRAME *Set_Elmt_Attrs();extern EFRAME *assign_properties();extern EFRAME *plink();extern EFRAME *rplink();extern void print_property();extern ARRAY *Alloc_p_Array();extern ARRAY *Assign_p_Array();extern ARRAY *Element_Property();extern ARRAY *Mate_Property();extern ARRAY *Eload_Property();extern MATRIX *Element_Matrix();extern MATRIX *Element_Equiv();extern QUANTITY *Element_Vector();extern MATRIX *Assemble_Global();extern MATRIX *Assemble_Global_Load();extern int *Destination_Array();extern int Bound_Disp();extern double **Boundary_Conditions();extern double **MATER_MAT_PLANE(); /* function for elmt_psps.c only */extern QUANTITY *pload();extern QUANTITY *Modify_Load();extern QUANTITY *Addload_Vector();extern QUANTITY *Transform_Force();extern QUANTITY *Nodal_Forces();extern QUANTITY *Assemble_Nodal_Load();extern QUANTITY *Assemble_Gravity_Load();extern QUANTITY *Assemble_Ctrfgl_Load();extern double *Assemble_Equiv_Load(); extern int *Destination_Array_for_Rigid_Body();extern ARRAY *Assign_p_Array_for_Rigid_Body();extern int Rigidbody_conn();extern MATRIX *Transform_Stiff_Matrix();extern MATRIX *Transform_Rigid_Body_Mass_Matrix();extern double **Transformation_Matrix();extern double **Modify_T_Matrix();/* functions called in code.c for finite element solution procedures */extern void Start_Mesh();extern void End_Mesh();extern void Print_Mesh();extern void Add_Node();extern void Fix_Node();extern void Node_Load();extern void Link_Node();extern void Add_Elmt();extern void Print_Displ();#ifdef __STDC__extern MATRIX *Print_Stress( MATRIX *, ... );#elseextern MATRIX *Print_Stress();#endifextern MATRIX *Form_Stiffness();extern MATRIX *Form_Mass();extern MATRIX *Form_External_Load();extern MATRIX *Form_Equiv_Nodal_Load();#ifdef __STDC__extern MATRIX *Form_Internal_Load( MATRIX *, ... );#elseextern MATRIX *Form_Internal_Load();#endifextern MATRIX *Solve_Eigen();extern MATRIX *Velocity_Extract();extern MATRIX *Displacement_Extract();extern void Ldof_to_gdof();/* Finite Element Allocation Routines */extern ELEMENT_ATTR *Alloc_Element_Attr_Item();extern SECTION_ATTR *Alloc_Section_Attr_Item();extern MATERIAL_ATTR *Alloc_Material_Attr_Item();extern FIBER_ELMT *Alloc_Fiber_Elmt_Attr_Item();/* functions declarations for Add_Elmt, */extern EFRAME *CheckMaterialsSpace(); extern EFRAME *CheckElementSpace();extern EFRAME *CheckRigidSpace();extern EFRAME *CheckJdiagSpace(); extern EFRAME *CheckNodeSpace(); extern EFRAME *CheckNforcesSpace(); extern EFRAME *CheckEforcesSpace(); extern EFRAME *CheckEtypesSpace(); /* functions for rule checking */extern MATRIX *Get_Coord();extern MATRIX *Get_Node();extern MATRIX *Get_Displ();extern MATRIX *Get_Stress();extern MATRIX *Get_Dof();extern MATRIX *Get_Section();extern MATRIX *Get_Material();/* functions used in elmt_*.c */extern MATRIX *beamst();extern MATRIX *beamms();extern MATRIX *beamms3d();extern MATRIX *beamst3d();extern double **tmat();extern double **rotate();extern double **rotate3d();extern int pstres();extern gauss();extern int pgauss();extern int shape();extern int shp0();extern double **qushp8();extern double **dktqbm();extern int jacqud();extern void dktb06();extern void dktq06();extern void hshp06();extern void jacq06();extern void jtri06();extern void proj06();extern void rots06();extern void rshp06();extern void stre06();extern void tran06();extern double *pstres06();extern void shp_prt();/* functions about 4 node shell elmt */extern ARRAY *elmt_shell_4nodes_implicit();extern void Lamina_Sys();extern void Lamina_Sys_Implicit();extern void elmt_shell_shape_4node();extern double **Hourglass_Stress_Rate();extern void Shell_4Node_Mass();extern double **B_MATRIX_4Node();extern void Shell_Stiff_Plane_4node();extern double **Shell_Nodal_Load_Plane();/* functions about 8 node shell elmt */extern ARRAY *elmt_shell_8nodes_implicit();extern void Lamina_Sys_8node();extern void elmt_shell_shape_8node();extern void Shell_8Node_Mass();extern void Stress_Update_8Node();extern double **B_MATRIX_8Node();extern void Shell_Stiff_Plane_8node();extern double **Shell_Nodal_Load_8Node();/* functions declarations for 4 Node and 8 Node shell elements */extern void MATER_SHELL_UPDATE();extern double **STRAIN_RATE_SHELL();extern double **Hourglass_Stress_Rate();extern double **Hourglass_stiff();extern double **Strain_Displ_Matrix();extern double **MATER_MAT_SHELL();extern void Load_Curve();extern void Plastic_Deform();extern void DISPL_UPDATE();extern void Stress_Update();extern void BB_Vector();/* functions for non-linear analysis */extern void UpdateResponse();extern void save_action();extern void SetUpRespondBuffer();extern void SaveRespondBuffer();extern void SetUpFiberRespondBuff();#endif /* end case FE_FUNCTIONS_H */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -