alg.c File Reference

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <math.h>
#include <time.h>
#include "load.h"
#include "elm.h"
#include "node.h"
#include "fem.h"
#include "alg.h"
#include "nfi.h"
#include "rio.h"
#include "drv.h"
#include "damp.h"
#include "constrain.h"
#include "csr.h"

Include dependency graph for alg.c:

Go to the source code of this file.

Defines

#define PI   3.141592654

Functions

static double _TimeIncrement (void)
static void _UpdateGeometry (double, double *)
static int _ConvergeError ()
static double InitialError (double, double *, double *, double *, double *)
double ComputeError (double *FVector, double *UVector, double error0)
void _dUVector (double *UVector, double *UVector0, double *dUVector)
int NeedIteration (double *error, int *iteration, int stop)
int DRSolver (UI_State *R, double *FVector, double *UVector, double *VVector, double *MVector, int loadstep)
int IMPLINEARSolver (UI_State *R, double *FVector, double *UVector, double *VVector, double *MVector, int loadstep)
int IMPBFGSSolver (UI_State *R, double *FVector, double *UVector, double *VVector, double *MVector, int loadstep)
int IMPNRMSolver (UI_State *R, double *FVector, double *UVector, double *VVector, double *MVector, int loadstep)
int HYBRIDSolver (UI_State *R, double *FVector, double *UVector, double *VVector, double *MVector, int loadstep)
void AlgReset (void)

Variables

sConfig Config = { 0, 0, 0, 1, 0, 0, 0.0, 0, 0.0, 0.0, 0.0, 0 }
eCoupState State = UNCOUPLED
double * vetError
double delta = 0.0


Define Documentation

#define PI   3.141592654

Definition at line 102 of file alg.c.

Referenced by AutoGlobalCalc(), ItfMohrCoulombUpdateStress(), MohrCoulombCutOffUpdateStress(), MohrCoulombNACUpdateStress(), MohrCoulombNAVUpdateStress(), MohrCoulombUpdateStress(), and PrincipalTensor().


Function Documentation

static int _ConvergeError (  )  [static]

Definition at line 150 of file alg.c.

References sConfig::numsteptol, sConfig::tolerance, and vetError.

Referenced by NeedIteration().

Here is the caller graph for this function:

void _dUVector ( double *  UVector,
double *  UVector0,
double *  dUVector 
)

Definition at line 290 of file alg.c.

Referenced by DRSolver(), and HYBRIDSolver().

Here is the caller graph for this function:

static double _TimeIncrement ( void   )  [static]

Definition at line 120 of file alg.c.

References ElmList, ElmTimeStep, NONE, and NumElements.

Referenced by DRSolver(), HYBRIDSolver(), IMPBFGSSolver(), IMPLINEARSolver(), and IMPNRMSolver().

Here is the caller graph for this function:

static void _UpdateGeometry ( double  dtime,
double *  VVector 
) [static]

Definition at line 170 of file alg.c.

References sNode::coord, NDof, NodeVector, NumNodes, sCoord::x, sCoord::y, and sCoord::z.

Referenced by DRSolver(), and HYBRIDSolver().

Here is the caller graph for this function:

void AlgReset ( void   ) 

Definition at line 1176 of file alg.c.

Referenced by RelaxReset().

Here is the caller graph for this function:

double ComputeError ( double *  FVector,
double *  UVector,
double  error0 
)

Definition at line 255 of file alg.c.

Referenced by BFGS(), DRSolver(), HYBRIDSolver(), LINEAR(), and NRM().

Here is the caller graph for this function:

int DRSolver ( UI_State R,
double *  FVector,
double *  UVector,
double *  VVector,
double *  MVector,
int  loadstep 
)

Definition at line 360 of file alg.c.

Referenced by LoadCaseAnalysis(), LoadStepAnalysis(), RezoneAnalysis(), StandardAnalysis(), StandardVEAnalysis(), and StandardVEFlacAnalysis().

Here is the caller graph for this function:

int HYBRIDSolver ( UI_State R,
double *  FVector,
double *  UVector,
double *  VVector,
double *  MVector,
int  loadstep 
)

Definition at line 957 of file alg.c.

Referenced by HybridAnalysis(), LoadCaseAnalysis(), and LoadStepAnalysis().

Here is the caller graph for this function:

int IMPBFGSSolver ( UI_State R,
double *  FVector,
double *  UVector,
double *  VVector,
double *  MVector,
int  loadstep 
)

Definition at line 653 of file alg.c.

Referenced by ImpBFGSAnalysis(), LoadCaseAnalysis(), and LoadStepAnalysis().

Here is the caller graph for this function:

int IMPLINEARSolver ( UI_State R,
double *  FVector,
double *  UVector,
double *  VVector,
double *  MVector,
int  loadstep 
)

Definition at line 501 of file alg.c.

Referenced by ImpLinearAnalysis(), LoadCaseAnalysis(), and LoadStepAnalysis().

Here is the caller graph for this function:

int IMPNRMSolver ( UI_State R,
double *  FVector,
double *  UVector,
double *  VVector,
double *  MVector,
int  loadstep 
)

Definition at line 805 of file alg.c.

Referenced by ImpNRMAnalysis(), LoadCaseAnalysis(), and LoadStepAnalysis().

Here is the caller graph for this function:

static double InitialError ( double  dtime,
double *  F,
double *  U,
double *  V,
double *  U0 
) [static]

Definition at line 187 of file alg.c.

References DISPLACEMENT, sNode::dof, InternalForces(), sConfig::loadfactor, NDof, NodeVector, NONE, NumNodes, sDof::vpx, sDof::vpy, sDof::vpz, sDof::x, sDof::y, and sDof::z.

Referenced by DRSolver(), HYBRIDSolver(), IMPBFGSSolver(), IMPLINEARSolver(), and IMPNRMSolver().

Here is the call graph for this function:

Here is the caller graph for this function:

int NeedIteration ( double *  error,
int *  iteration,
int  stop 
)

Definition at line 319 of file alg.c.

Referenced by BFGS(), DRSolver(), HYBRIDSolver(), IMPBFGSSolver(), IMPNRMSolver(), and NRM().

Here is the caller graph for this function:


Variable Documentation

sConfig Config = { 0, 0, 0, 1, 0, 0, 0.0, 0, 0.0, 0.0, 0.0, 0 }

Definition at line 87 of file alg.c.

Referenced by _NfiReadAlgorithmType(), _NfiReadDrawStep(), _NfiReadGeometricallyNonLinear(), _NfiReadMaximumIteration(), _NfiReadNumGaussResults(), _NfiReadNumLoadStep(), _NfiReadNumStepTol(), _NfiReadPrintStep(), _NfiReadSolverType(), _NfiReadTimeFraction(), _NfiReadTimeStep(), _NfiReadTolerance(), _NfiReadTotalTime(), _NfiWriteResultStep(), _Q4PoroPressure(), _T3PoroPressure(), BFGS(), BRICK8StressStrain(), BRICK8WriteGaussResult(), DisplacementVelocity(), DKTWriteGaussResult(), HybridPrintResult(), ImpBFGSPrintResult(), ImpLinearPrintResult(), ImpNRMPrintResult(), INFINITEWriteGaussResult(), INTERFACEWriteGaussResult(), InternalForces(), LINEAR(), LoadCaseAnalysis(), LoadStepAnalysis(), NfiInterpFile(), NfiWriteResults(), NRM(), Q4WriteGaussResult(), SearchDirection(), StandardPrintResult(), StandardVEAnalysis(), StandardVEFlacPrintResult(), StandardVEViscoForces(), T3WriteGaussResult(), TETR4StressStrain(), and TETR4WriteGaussResult().

double delta = 0.0

Definition at line 107 of file alg.c.

eCoupState State = UNCOUPLED

Definition at line 93 of file alg.c.

double* vetError

Definition at line 106 of file alg.c.

Referenced by _ConvergeError(), DRSolver(), HYBRIDSolver(), IMPBFGSSolver(), IMPLINEARSolver(), IMPNRMSolver(), and NeedIteration().


Generated on Tue Oct 23 11:23:31 2007 for Relax by  doxygen 1.5.3