nonlinman Class Reference

#include <nonlinman.h>

List of all members.

Public Member Functions

void allocavec (long n)
void deallocavec ()
void initiate (nonlinman &nm)
 nonlinman (void)
void print (FILE *out)
void print_seldof (FILE *out)
void print_seldofcoord (FILE *out)
void print_selnod (FILE *out)
void read (XFILE *in, long mespr)
void read_seldof (XFILE *in)
void read_seldofcoord (XFILE *in)
void read_selnod (XFILE *in)
 ~nonlinman (void)

Public Attributes

char backupfname [1025]
 backup filename
flagsw check_div
 flag for detection of divergency of inner iteration loop
flagsw check_lambdar
 flag for checking of lambdar
flagsw check_tot_al
 flag for checking of maximum total(cumulative) performed length of the arc
displacementnorm displnorm
 norm measure of displacement increments
long div_min_steps
double * divc_err
 array of stored errors (length of array = div_min_steps)
double * divc_step
 array of stored step id (length of array = div_min_steps)
double dlal
 length of arc
detlambda dlam
 determination of increment of load parameter
double dlmaxal
 maximum length of arc
double dlminal
 minimum length of arc
double erral
 required norm of vector of unbalanced forces
double errl
 required error for lambdar tresholds
double errnr
 required norm of vector of unbalanced forces
long hdbackupal
 hard-disc backup
long hdbid
 index of harddisk backup in the harddisk backup file
long hdbr
 harddisk backup restart indicator
double incrnr
 magnitude of increment of loading
long ithstiffchange
 the stiffness matrix is recalculated after ithstiffchange steps in outer loop
long jthstiffchange
 the stiffness matrix is recalculated after jthstiffchange steps in inner loop
double lambdar
 required load coefficient for the proportional vector
double max_tot_al
 maximum total(cumulative) performed length of the arc
double maxincrnr
 maximum magnitude of increment of loading
double minincrnr
 minimum magnitude of increment of loading
long nial
 maximum number of increments
long nienr
 required value of lambda
long niilal
long niilnr
long ninr
 maximum number of increments
long nsdofal
 number of selected DOFs (for norm computation)
long nsnal
 number of selected nodes (for norm computation)
double nxal
 unit vector between selected nodes
double nyal
double nzal
long probdimal
 problem dimension (for increment of two node distance)
double psial
 displacement-loading driving switch
long * seldofal
 selected degrees of freedom
long * selnodal
 selected nodes (for norm computations)
double * selnodcoord
 coordinates of selected nodes
stiffmatrix stmat
nonlinsolvertype tnlinsol
 type of solver of nonlinear algebraic equation system

Detailed Description

Class nonlinman defines type of solver of systems of nonlinear algebraic equations.

Created by JK, 16.6.2004

Definition at line 17 of file nonlinman.h.


Constructor & Destructor Documentation

nonlinman ( void   ) 
~nonlinman ( void   ) 

Definition at line 56 of file nonlinman.cpp.

References divc_err, divc_step, seldofal, and selnodal.


Member Function Documentation

void allocavec ( long  n  ) 
void deallocavec (  ) 
void initiate ( nonlinman nm  ) 

The function initializes data from the another nonlinman structure.

Parameters:
nm - nonlinman structure used fro initialization

The function does not return anything.

Created by Jaroslav Kruis, 2008

Definition at line 550 of file nonlinman.cpp.

References alldofs, backupfname, check_div, check_lambdar, check_tot_al, displnorm, div_min_steps, divc_err, divc_step, dlal, dlam, dlmaxal, dlminal, erral, errl, errnr, hdbackupal, hdbid, hdbr, incrnr, ithstiffchange, jthstiffchange, lambdar, long(), max_tot_al, maxincrnr, minincrnr, nial, nienr, niilal, niilnr, ninr, nodesdistincr, nsdofal, nsnal, nxal, nyal, nzal, on, print_err(), probdimal, psial, seldofal, seldofs, seldofscoord, selecnodes, selnodal, selnodcoord, stmat, and tnlinsol.

void print ( FILE *  out  ) 

The function prints parameters for individual types of solvers to the opened text file.

Parameters:
out - pointer to the opened text file for output
Returns:
The function does not return anything.

Created by Jaroslav Kruis, 2008 Modified by Tomas Koudelka, 08.2011

Definition at line 275 of file nonlinman.cpp.

References alldofs, arcl, arclg, arclrv, arclrv1, backupfname, check_div, check_lambdar, check_tot_al, displctrl, displctrlrv, displnorm, div_min_steps, dlal, dlam, dlmaxal, dlminal, erral, errl, errnr, hdbid, hdbr, ijth_tangent_stiff, incr_tangent_stiff, incrnr, initial_stiff, ithstiffchange, jthstiffchange, lambdar, max_tot_al, maxincrnr, minincrnr, newton, newtong, newtonrestart, newtonrv1, nial, nienr, niilal, niilnr, ninr, nodesdistincr, nsdofal, nsnal, on, print_err(), print_seldof(), print_seldofcoord(), print_selnod(), probdimal, psial, secant_stiff, seldofs, seldofscoord, selecnodes, stmat, tangent_stiff, and tnlinsol.

Referenced by probdesc::print().

void print_seldof ( FILE *  out  ) 

The function prints selected dofs for arclength control.

Parameters:
in - pointer to the opened text file
Returns:
The function does not return anything.

Created by Jaroslav Kruis, 2008

Definition at line 508 of file nonlinman.cpp.

References nsdofal, seldofal, and selnodal.

Referenced by print().

void print_seldofcoord ( FILE *  out  ) 

The function prints coordinates of selected dofs for arclength control.

Parameters:
in - pointer to the opened text file
Returns:
The function does not return anything.

Created by Jaroslav Kruis, 2008

Definition at line 529 of file nonlinman.cpp.

References nsdofal, seldofal, and selnodcoord.

Referenced by print().

void print_selnod ( FILE *  out  ) 

The function prints selected nodes for arclength control.

Parameters:
in - pointer to the opened text file
Returns:
The function does not return anything.

Created by Jaroslav Kruis, 2008

Definition at line 487 of file nonlinman.cpp.

References nsnal, and selnodal.

Referenced by print().

void read ( XFILE in,
long  mespr 
)

The function reads parameters for individual types of solvers.

Parameters:
in - pointer to the opened text file
mespr - flag for message printing control (0 = no messages are printed, 1 = messages are sentto stdout)
Returns:
The function does not return anything.

Created by Jaroslav Kruis, 2008 Modified by Tomas Koudelka, 08.2011

Definition at line 77 of file nonlinman.cpp.

References adaptram, alldofs, arcl, arclg, arclrv, arclrv1, check_div, check_lambdar, check_tot_al, detlambda_kwdset(), displacementnorm_kwdset(), displctrl, displctrlrv, displnorm, div_min_steps, divc_err, divc_step, dlal, dlam, dlmaxal, dlminal, erral, errl, errnr, flagsw_kwdset(), ijth_tangent_stiff, incr_tangent_stiff, incrnr, initial_stiff, ithstiffchange, jthstiffchange, lambdar, max_tot_al, maxincrnr, minincrnr, newton, newtong, newtonrv1, nial, niilal, niilnr, ninr, nodesdistincr, nonlinsolvertype_kwdset(), nsdofal, nsnal, on, print_err(), print_warning(), probdimal, psial, read_seldof(), read_seldofcoord(), read_selnod(), secant_stiff, seldofal, seldofs, seldofscoord, selecnodes, selnodal, selnodcoord, stiffmatrix_kwdset(), stmat, tangent_stiff, tnlinsol, and xfscanf().

Referenced by probdesc::read().

void read_seldof ( XFILE in  ) 

The function reads selected dofs for arclength control.

Parameters:
in - pointer to the opened text file
Returns:
The function does not return anything.

Created by Jaroslav Kruis, 2008

Definition at line 444 of file nonlinman.cpp.

References nsdofal, seldofal, selnodal, and xfscanf().

Referenced by read().

void read_seldofcoord ( XFILE in  ) 

The function reads coordinates of selected dofs for arclength control.

Parameters:
in - pointer to the opened text file
Returns:
The function does not return anything.

Created by Jaroslav Kruis, 2008

Definition at line 466 of file nonlinman.cpp.

References nsdofal, seldofal, selnodcoord, and xfscanf().

Referenced by read().

void read_selnod ( XFILE in  ) 

The function reads selected nodes for arclength control.

Parameters:
in - pointer to the opened text file
Returns:
The function does not return anything.

Created by Jaroslav Kruis, 2008

Definition at line 422 of file nonlinman.cpp.

References nsnal, selnodal, and xfscanf().

Referenced by read().


Member Data Documentation

char backupfname[1025]

backup filename

Definition at line 142 of file nonlinman.h.

Referenced by initiate(), newton_raphson_restart(), nonlinman(), and print().

flag for detection of divergency of inner iteration loop

Definition at line 107 of file nonlinman.h.

Referenced by check_divergence(), check_divergency(), initiate(), nonlinman(), probdesc::print(), print(), probdesc::read(), and read().

flag for checking of maximum total(cumulative) performed length of the arc

Definition at line 94 of file nonlinman.h.

Referenced by garclength(), initiate(), one_step_arcl(), print(), and read().

norm measure of displacement increments

Definition at line 54 of file nonlinman.h.

Referenced by displincr(), initiate(), loadincr(), nonlinman(), parseldofinit(), print(), quadeqcoeff(), read(), and seldofinit().

the minimum number of performed inner iteration steps before the loop can be interrupted due to divergency (div_min_steps has to be greater or equal to 3)

Definition at line 111 of file nonlinman.h.

Referenced by check_divergence(), check_divergency(), initiate(), nonlinman(), probdesc::print(), print(), probdesc::read(), and read().

double* divc_err
double* divc_step
double dlal

determination of increment of load parameter

Definition at line 56 of file nonlinman.h.

Referenced by arclengthrv(), determine_dlambda(), initiate(), nonlinman(), print(), quadeqcoeff(), and read().

double dlmaxal
double dlminal

minimum length of arc

Definition at line 69 of file nonlinman.h.

Referenced by arclength(), arclength15(), arclengthadapt(), arclengthrv(), arclengthrv1(), garclength(), initiate(), one_step_arcl(), print(), and read().

double erral

required norm of vector of unbalanced forces

Definition at line 65 of file nonlinman.h.

Referenced by arclength(), arclength15(), arclengthadapt(), arclengthrv(), arclengthrv1(), garclength(), initiate(), nonlinman(), one_step_arcl(), print(), and read().

double errl

required error for lambdar tresholds

Definition at line 104 of file nonlinman.h.

Referenced by arclengthrv(), garclength(), initiate(), nonlinear_solver(), nonlinman(), print(), and read().

double errnr
long hdbackupal

hard-disc backup

Definition at line 58 of file nonlinman.h.

Referenced by arclength(), arclengthadapt(), arclengthrv(), arclengthrv1(), initiate(), nonlinman(), and solve_nonlinear_statics().

long hdbid

index of harddisk backup in the harddisk backup file

Definition at line 140 of file nonlinman.h.

Referenced by initiate(), newton_raphson_restart(), nonlinman(), and print().

long hdbr

harddisk backup restart indicator

Definition at line 138 of file nonlinman.h.

Referenced by initiate(), newton_raphson_restart(), nonlinman(), and print().

double incrnr

the stiffness matrix is recalculated after ithstiffchange steps in outer loop

Definition at line 48 of file nonlinman.h.

Referenced by assemble_stiffness_matrix(), initiate(), nonlinman(), probdesc::print(), print(), probdesc::read(), and read().

the stiffness matrix is recalculated after jthstiffchange steps in inner loop

Definition at line 50 of file nonlinman.h.

Referenced by assemble_stiffness_matrix(), initiate(), nonlinman(), probdesc::print(), print(), probdesc::read(), and read().

double lambdar

required load coefficient for the proportional vector

Definition at line 101 of file nonlinman.h.

Referenced by assemble_attained_load_vector(), garclength(), gnewton_raphson(), gnewton_raphson2(), initiate(), loadincr(), nonlinear_solver(), nonlinman(), one_step_arcl(), print(), and read().

double max_tot_al

maximum total(cumulative) performed length of the arc

Definition at line 96 of file nonlinman.h.

Referenced by arclengthrv(), garclength(), initiate(), one_step_arcl(), print(), and read().

double maxincrnr

maximum magnitude of increment of loading

Definition at line 130 of file nonlinman.h.

Referenced by gnewton_raphson(), gnewton_raphson2(), initiate(), newton_raphsonrv1(), print(), and read().

double minincrnr
long nial

maximum number of increments

Definition at line 60 of file nonlinman.h.

Referenced by arclength(), arclengthadapt(), arclengthrv(), arclengthrv1(), garclength(), initiate(), nonlinear_solver_adaptiv(), nonlinman(), print(), and read().

long nienr

required value of lambda

number of steps in the initial loop for equilibrium

Definition at line 136 of file nonlinman.h.

Referenced by initiate(), newton_raphson_restart(), nonlinman(), and print().

long niilal

maximum number of iterations in inner loop maximum number of iterations in one increment

Definition at line 63 of file nonlinman.h.

Referenced by arclength(), arclength15(), arclengthadapt(), arclengthrv(), arclengthrv1(), garclength(), initiate(), nonlinman(), one_step_arcl(), print(), and read().

long niilnr
long ninr
long nsdofal
long nsnal

number of selected nodes (for norm computation)

Definition at line 75 of file nonlinman.h.

Referenced by initiate(), nonlinman(), parseldofinit(), print(), print_selnod(), read(), read_selnod(), and seldofinit().

double nxal

unit vector between selected nodes

Definition at line 87 of file nonlinman.h.

Referenced by displincr(), initiate(), and seldofinit().

double nyal

Definition at line 87 of file nonlinman.h.

Referenced by displincr(), initiate(), and seldofinit().

double nzal

Definition at line 87 of file nonlinman.h.

Referenced by displincr(), initiate(), and seldofinit().

long probdimal

problem dimension (for increment of two node distance)

Definition at line 85 of file nonlinman.h.

Referenced by displincr(), initiate(), print(), and read().

double psial

displacement-loading driving switch

Definition at line 73 of file nonlinman.h.

Referenced by arclength(), arclength15(), arclengthadapt(), arclengthrv(), arclengthrv1(), garclength(), initiate(), nonlinman(), one_step_arcl(), print(), and read().

long* seldofal
long* selnodal

selected nodes (for norm computations)

Definition at line 77 of file nonlinman.h.

Referenced by initiate(), nonlinman(), parseldofinit(), print_seldof(), print_selnod(), read(), read_seldof(), read_selnod(), seldofinit(), and ~nonlinman().

double* selnodcoord

coordinates of selected nodes

Definition at line 83 of file nonlinman.h.

Referenced by initiate(), print_seldofcoord(), read(), and read_seldofcoord().

TYPE OF STIFFNESS MATRIX stmat=1 - initial elastic stiffness stmat=2 - tangent stiffness stmat=3 - secant stiffness matrix stmat=5 - incr_tangent_stiff - the stiffness matrix is recalculated after one increment of the outer loop stmat=6 - ijth_tangent_stiff - the stiffness matrix is recalculated after i-th step of the outer loop and after j-th step in the inner loop

Definition at line 46 of file nonlinman.h.

Referenced by arclength(), arclengthrv1(), assemble_stiffness_matrix(), initiate(), visplast::matstiff(), splas1d::matstiff(), shefplast::matstiff(), scaldamcc::matstiff(), scaldam::matstiff(), ortodamrot::matstiff(), ortodam::matstiff(), mohrcoulombpar::matstiff(), mohrcoulomb::matstiff(), j2flow2::matstiff(), j2flow::matstiff(), hissplas::matstiff(), glasgowdam::matstiff(), glasgmech::matstiff(), fixortodam::matstiff(), drprag::matstiff(), damplast::matstiff(), chen::matstiff(), camclaycoup::matstiff(), camclay::matstiff(), boermat::matstiff(), anisodamrot::matstiff(), anisodam::matstiff(), drprag2::matstiff(), doubdp::matstiff(), newton_raphson_gparcoupl_lin(), newton_raphson_gparcoupl_nonlin(), newton_raphson_parcoupl_lin(), newton_raphson_parcoupl_nonlin(), newton_raphson_restart(), newton_raphsonrv1(), nonlinman(), par_newton_raphson_gparcoupl_lin(), par_newton_raphson_gparcoupl_nonlin(), par_newton_raphson_parcoupl_lin(), par_newton_raphson_parcoupl_nonlin(), par_solve_prob_constr_phases(), par_solve_timemech_prob(), probdesc::print(), print(), probdesc::read(), read(), and visco_solver().

type of solver of nonlinear algebraic equation system

Definition at line 38 of file nonlinman.h.

Referenced by initiate(), nonlinear_solver(), nonlinear_solver_adaptiv(), nonlinman(), print(), read(), and solve_nonlinear_statics().


The documentation for this class was generated from the following files:

Generated by  doxygen 1.6.2