t3.c File Reference

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#include "rio.h"
#include "load.h"
#include "elm.h"
#include "node.h"
#include "material.h"
#include "alg.h"

Include dependency graph for t3.c:

Go to the source code of this file.

Data Structures

struct  _t3elm

Typedefs

typedef _t3elm sT3Data

Functions

static void _T3GetCoord (sElement *, sCoord[])
static double _T3Area (sCoord[])
static double _T3MinHeight (sCoord[])
static void _T3GetDisplacement (sElement *, double *, double[])
static void _T3BMatrix (sElement *, double[3][6])
static void _T3ElementCenter (sElement *, sCoord[])
static double _T3PoroPressure (sElement *elm, double lambda)
static void _T3GetCoord (sElement *elm, sCoord coord[3])
static void _T3ElementCenter (sElement *elm, sCoord coord[1])
static double _T3Area (sCoord coord[3])
static double _T3MinHeight (sCoord coord[3])
static void _T3GetDisplacement (sElement *elm, double *U, double ue[6])
static void T3New (int, int, int, int, sElement **, sElement **, sNode *)
static void T3Free (sElement *)
static void T3Read (sElement *)
static int T3ReadInitStress (sElement *)
static void T3ReadProfile (sElement *)
static void T3MassMatrix (sElement *, double *)
static double T3RigidCoeff (sElement *)
static void T3Connect (sElement *, int *)
static void T3NumNodes (sElement *, int *)
static void T3Gravity (sElement *, double *, double *, double *)
static void T3AssVector (sElement *, double *, double *)
static void T3StressStrain (sElement *, double, double *, double *, sTensor *, sTensor *)
static void T3TimeStep (sElement *, double *)
static void T3InterForce (sElement *, sTensor *, double *)
static void T3WriteStress (sElement *, FILE *, double *, double *)
static void T3WriteNodalResult (sElement *, FILE *, FILE *)
static void T3WriteGaussResult (sElement *, FILE *, FILE *)
static void T3WriteGaussVectorResult (sElement *, int, FILE *, FILE *)
static void T3UpdateStress (sElement *, double, double *, sTensor *)
static void T3PercForces (sElement *, double *)
static void T3SetPressure (sElement *, double)
static void T3SetInitStress (sElement *, sTensor *)
static void T3ViscoForce (sElement *, double, sTensor *, double *)
static void T3Jacobian (sElement *, double[3][3], double[3][3])
static void T3Volume (sElement *, double *)
static void T3KMatrix (sElement *, double[24][24])
static void T3GetDof (sElement *, int[24], int *)
static void T3Load (sElement *elm, eLoadType ltype, int key, int noi, int noj, int nok, int *nol, double *q1x, double *q1y, double *q1z, double *q2x, double *q2y, double *q2z, double *q3x, double *q3y, double *q3z, double *q4x, double *q4y, double *q4z)
static void T3GetInc (sElement *elm, int inc[8], int *index)
void T3Init (void)

Variables

static double GForce = 9.85


Typedef Documentation

typedef struct _t3elm sT3Data


Function Documentation

static double _T3Area ( sCoord  coord[3]  )  [static]

Definition at line 148 of file t3.c.

References _coord::x, and _coord::y.

static double _T3Area ( sCoord  []  )  [static]

Referenced by _T3MinHeight(), T3Gravity(), T3KMatrix(), T3MassMatrix(), T3RigidCoeff(), and T3Volume().

Here is the caller graph for this function:

static void _T3BMatrix ( sElement *  ,
double  [3][6] 
) [static]

Definition at line 228 of file t3.c.

References _T3GetCoord(), _coord::x, and _coord::y.

Referenced by T3InterForce(), T3KMatrix(), T3PercForces(), T3StressStrain(), T3UpdateStress(), and T3ViscoForce().

Here is the call graph for this function:

Here is the caller graph for this function:

static void _T3ElementCenter ( sElement *  elm,
sCoord  coord[1] 
) [static]

Definition at line 119 of file t3.c.

References _node::coord, _element::data, _t3elm::inc, NodeVector, _t3elm::NumNodes, NumNodes, _coord::x, _coord::y, and _coord::z.

static void _T3ElementCenter ( sElement *  ,
sCoord  [] 
) [static]

static void _T3GetCoord ( sElement *  elm,
sCoord  coord[3] 
) [static]

Definition at line 94 of file t3.c.

References _node::coord, _element::data, _t3elm::inc, _element::nodes, _coord::x, _coord::y, and _coord::z.

static void _T3GetCoord ( sElement *  ,
sCoord  [] 
) [static]

Referenced by _T3BMatrix(), T3Gravity(), T3Jacobian(), T3KMatrix(), T3MassMatrix(), T3PercForces(), T3RigidCoeff(), T3SetPressure(), T3TimeStep(), and T3Volume().

Here is the caller graph for this function:

static void _T3GetDisplacement ( sElement *  elm,
double *  U,
double  ue[6] 
) [static]

Definition at line 206 of file t3.c.

References _element::data, _t3elm::inc, and NumNodes.

static void _T3GetDisplacement ( sElement *  ,
double *  ,
double  [] 
) [static]

Referenced by T3StressStrain(), and T3UpdateStress().

Here is the caller graph for this function:

static double _T3MinHeight ( sCoord  coord[3]  )  [static]

Definition at line 167 of file t3.c.

References _T3Area().

Here is the call graph for this function:

static double _T3MinHeight ( sCoord  []  )  [static]

Referenced by T3TimeStep().

Here is the caller graph for this function:

static double _T3PoroPressure ( sElement *  elm,
double  lambda 
) [static]

Definition at line 811 of file t3.c.

References Config, _element::data, GForce, _config::loadfactor, MatDensity, _t3elm::matid, MatList, and _t3elm::prof.

Referenced by T3StressStrain(), and T3WriteGaussResult().

Here is the caller graph for this function:

static void T3AssVector ( sElement *  ,
double *  ,
double *   
) [static]

Definition at line 658 of file t3.c.

References _element::data, ElmConnect, and _t3elm::NumNodes.

Referenced by T3Init().

Here is the caller graph for this function:

static void T3Connect ( sElement *  ,
int *   
) [static]

Definition at line 592 of file t3.c.

References _element::data, _t3elm::inc, and NumNodes.

Referenced by T3Init().

Here is the caller graph for this function:

static void T3Free ( sElement *   )  [static]

Definition at line 363 of file t3.c.

References _element::data, and _t3elm::iPress.

Referenced by T3Init().

Here is the caller graph for this function:

static void T3GetDof ( sElement *  ,
int  [24],
int *   
) [static]

Definition at line 1627 of file t3.c.

References _element::data, _t3elm::inc, and NumNodes.

Referenced by T3Init().

Here is the caller graph for this function:

static void T3GetInc ( sElement *  elm,
int  inc[8],
int *  index 
) [static]

Definition at line 1647 of file t3.c.

References _element::data, _t3elm::inc, and NumNodes.

Referenced by T3Init().

Here is the caller graph for this function:

static void T3Gravity ( sElement *  ,
double *  ,
double *  ,
double *   
) [static]

Definition at line 620 of file t3.c.

References _T3Area(), _T3GetCoord(), _element::data, GravForce, MatDensity, _t3elm::matid, and MatList.

Referenced by T3Init().

Here is the call graph for this function:

Here is the caller graph for this function:

void T3Init ( void   ) 

static void T3InterForce ( sElement *  ,
sTensor *  ,
double *   
) [static]

Definition at line 885 of file t3.c.

References _T3BMatrix(), _element::data, ElmRigidCoeff, _t3elm::iPress, _t3elm::istr, _t3elm::NumNodes, _tensor::xx, _tensor::xy, and _tensor::yy.

Referenced by T3Init().

Here is the call graph for this function:

Here is the caller graph for this function:

static void T3Jacobian ( sElement *  ,
double  [3][3],
double  [3][3] 
) [static]

Definition at line 1502 of file t3.c.

References _T3GetCoord(), _coord::x, and _coord::y.

Referenced by T3Init().

Here is the call graph for this function:

Here is the caller graph for this function:

static void T3KMatrix ( sElement *  ,
double  [24][24] 
) [static]

Definition at line 1559 of file t3.c.

References _T3Area(), _T3BMatrix(), _T3GetCoord(), _element::data, MatConstitutiveMatrix, _t3elm::matid, and MatList.

Referenced by T3Init().

Here is the call graph for this function:

Here is the caller graph for this function:

static void T3Load ( sElement *  elm,
eLoadType  ltype,
int  key,
int  noi,
int  noj,
int  nok,
int *  nol,
double *  q1x,
double *  q1y,
double *  q1z,
double *  q2x,
double *  q2y,
double *  q2z,
double *  q3x,
double *  q3y,
double *  q3z,
double *  q4x,
double *  q4y,
double *  q4z 
) [static]

Definition at line 531 of file t3.c.

References _node::coord, _element::nodes, UNIFORM, _coord::x, and _coord::y.

Referenced by T3Init().

Here is the caller graph for this function:

static void T3MassMatrix ( sElement *  ,
double *   
) [static]

Definition at line 471 of file t3.c.

References _T3Area(), _T3GetCoord(), _element::data, MatDensity, _t3elm::matid, and MatList.

Referenced by T3Init().

Here is the call graph for this function:

Here is the caller graph for this function:

static void T3New ( int  ,
int  ,
int  ,
int  ,
sElement **  ,
sElement **  ,
sNode *   
) [static]

Definition at line 316 of file t3.c.

References DSP_NO, _t3elm::effdef, _t3elm::iPress, _t3elm::istr, _t3elm::matid, NONE, _t3elm::NumNodes, _t3elm::NumTensComp, _t3elm::prof, T3, and _t3elm::tckid.

Referenced by T3Init().

Here is the caller graph for this function:

static void T3NumNodes ( sElement *  ,
int *   
) [static]

Definition at line 608 of file t3.c.

References _element::data, and _t3elm::NumNodes.

Referenced by T3Init().

Here is the caller graph for this function:

static void T3PercForces ( sElement *  ,
double *   
) [static]

Definition at line 1325 of file t3.c.

References _T3BMatrix(), _T3GetCoord(), _element::data, _node::dof, _t3elm::inc, _t3elm::matid, MatList, _element::nodes, _t3elm::NumNodes, _dof::psi, _tensor::xx, _coord::y, and _tensor::yy.

Referenced by T3Init().

Here is the call graph for this function:

Here is the caller graph for this function:

static void T3Read ( sElement *   )  [static]

Definition at line 391 of file t3.c.

References _element::data, _t3elm::inc, and nf.

Referenced by T3Init().

Here is the caller graph for this function:

static int T3ReadInitStress ( sElement *   )  [static]

Definition at line 416 of file t3.c.

References _element::data, _t3elm::istr, and nf.

Referenced by T3Init().

Here is the caller graph for this function:

static void T3ReadProfile ( sElement *   )  [static]

Definition at line 449 of file t3.c.

References _element::data, nf, and _t3elm::prof.

Referenced by T3Init().

Here is the caller graph for this function:

static double T3RigidCoeff ( sElement *   )  [static]

Definition at line 509 of file t3.c.

References _T3Area(), and _T3GetCoord().

Referenced by T3Init().

Here is the call graph for this function:

Here is the caller graph for this function:

static void T3SetInitStress ( sElement *  ,
sTensor *   
) [static]

Definition at line 1412 of file t3.c.

References _element::data, _t3elm::istr, _tensor::xx, _tensor::xy, and _tensor::yy.

Referenced by T3Init().

Here is the caller graph for this function:

static void T3SetPressure ( sElement *  ,
double   
) [static]

Definition at line 1381 of file t3.c.

References _T3GetCoord(), _element::data, ElementInitTensor(), and _coord::y.

Referenced by T3Init().

Here is the call graph for this function:

Here is the caller graph for this function:

static void T3StressStrain ( sElement *  ,
double  ,
double *  ,
double *  ,
sTensor *  ,
sTensor *   
) [static]

Definition at line 687 of file t3.c.

References _T3BMatrix(), _T3GetDisplacement(), _T3PoroPressure(), _element::data, _t3elm::effdef, ElementOffPlaneStress(), _t3elm::istr, _material::Lambda, MatConstitutiveMatrix, _t3elm::matid, MatList, MatNuParameter, MatUpdateParameter, MatUpdateStress, and _t3elm::NumNodes.

Referenced by T3Init(), and T3WriteStress().

Here is the call graph for this function:

Here is the caller graph for this function:

static void T3TimeStep ( sElement *  ,
double *   
) [static]

Definition at line 847 of file t3.c.

References _T3GetCoord(), _T3MinHeight(), _element::data, KELVIN, _t3elm::matid, MatList, MatTimeStep, and _material::type.

Referenced by T3Init().

Here is the call graph for this function:

Here is the caller graph for this function:

static void T3UpdateStress ( sElement *  ,
double  ,
double *  ,
sTensor *   
) [static]

Definition at line 1277 of file t3.c.

References _T3BMatrix(), _T3GetDisplacement(), _element::data, _tensor::xx, _tensor::xy, and _tensor::yy.

Referenced by T3Init().

Here is the call graph for this function:

Here is the caller graph for this function:

static void T3ViscoForce ( sElement *  ,
double  ,
sTensor *  ,
double *   
) [static]

Definition at line 1431 of file t3.c.

References _T3BMatrix(), _element::data, ElmRigidCoeff, MatConstitutiveMatrix, MaterialIsVisco(), _t3elm::matid, MatList, MatViscoStrain, _t3elm::NumNodes, _tensor::xx, _tensor::xy, and _tensor::yy.

Referenced by T3Init().

Here is the call graph for this function:

Here is the caller graph for this function:

static void T3Volume ( sElement *  ,
double *   
) [static]

Definition at line 1545 of file t3.c.

References _T3Area(), and _T3GetCoord().

Referenced by T3Init().

Here is the call graph for this function:

Here is the caller graph for this function:

static void T3WriteGaussResult ( sElement *  ,
FILE *  ,
FILE *   
) [static]

Definition at line 1049 of file t3.c.

References _T3PoroPressure(), Config, _element::data, _ptensor::dir1, _ptensor::dir2, _ptensor::dir3, _config::gaussresults, _element::label, _material::Lambda, _t3elm::matid, MatList, _config::numgaussresults, PrincipalTensor(), _tensor::rf, _tensor::xx, _tensor::xy, _tensor::yy, and _tensor::zz.

Referenced by T3Init().

Here is the call graph for this function:

Here is the caller graph for this function:

static void T3WriteGaussVectorResult ( sElement *  ,
int  ,
FILE *  ,
FILE *   
) [static]

Definition at line 1182 of file t3.c.

References _ptensor::cos1x, _ptensor::cos1y, _ptensor::cos1z, _ptensor::cos2x, _ptensor::cos2y, _ptensor::cos2z, _ptensor::cos3x, _ptensor::cos3y, _ptensor::cos3z, _ptensor::dir1, _ptensor::dir2, _ptensor::dir3, _element::label, and PrincipalTensor().

Referenced by T3Init().

Here is the call graph for this function:

Here is the caller graph for this function:

static void T3WriteNodalResult ( sElement *  ,
FILE *  ,
FILE *   
) [static]

Definition at line 995 of file t3.c.

References _ptensor::dir1, _ptensor::dir2, _ptensor::dir3, _element::label, PrincipalTensor(), _tensor::xx, _tensor::xy, _tensor::yy, and _tensor::zz.

Referenced by T3Init().

Here is the call graph for this function:

Here is the caller graph for this function:

static void T3WriteStress ( sElement *  ,
FILE *  ,
double *  ,
double *   
) [static]

Definition at line 948 of file t3.c.

References DONE, _element::rezone, T3StressStrain(), _tensor::xx, _tensor::xy, _tensor::xz, _tensor::yy, _tensor::yz, and _tensor::zz.

Referenced by T3Init().

Here is the call graph for this function:

Here is the caller graph for this function:


Variable Documentation

double GForce = 9.85 [static]

Definition at line 87 of file t3.c.


Generated on Fri Oct 5 15:56:23 2007 for ReconMS by  doxygen 1.5.1