00001 /* -*- C -*- */ 00002 /* 00003 * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 00004 * 00005 * Fehmi Cirak 00006 * California Institute of Technology 00007 * (C) 2001 All Rights Reserved 00008 * 00009 * <LicenseText> 00010 * 00011 * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 00012 */ 00013 #ifndef SVERTEX_H 00014 #define SVERTEX_H 00015 00016 #include "definitions.h" 00017 00018 #ifdef __cplusplus 00019 namespace shells { 00020 #define DECLARE_EXTERN extern "C" 00021 #else 00022 #define DECLARE_EXTERN extern 00023 #endif 00024 00025 typedef struct SVertexS { 00026 double xyz[3]; /* position of the vertex */ 00027 double disp[3]; /* displacements of the vertex */ 00028 double vel[3]; /* velocity of the vertex */ 00029 double acc[3]; /* acceleration of the vertex */ 00030 double mass; /* mass at the vertex */ 00031 double resi[3]; /* residual */ 00032 00033 int number; /* node number */ 00034 } SVertex; 00035 00036 DECLARE_EXTERN SVertex *createSVertex (); 00037 DECLARE_EXTERN SVertex *createSVertex2 (double x, 00038 double y, 00039 double z); 00040 DECLARE_EXTERN SVertex *duplicateSVertex (SVertex *vtx); 00041 00042 DECLARE_EXTERN void deleteSVertex(SVertex *vtx); 00043 00044 #ifdef __cplusplus 00045 } 00046 #endif 00047 #undef DECLARE_EXTERN 00048 00049 #endif 00050 00051 /* End of file */