SIFEL/TRFEL/SRC/nnpsolvert.cpp File Reference

#include "nnpsolvert.h"
#include "npsolvert.h"
#include "globalt.h"
#include "globmatt.h"
#include "elemswitcht.h"
#include "transprint.h"
#include "backupsolt.h"
#include <string.h>

Go to the source code of this file.

Functions

void nonlinear_nonstat_solv ()
void nonlinear_nonstat_solv_dform ()
void nonlinear_nonstat_solv_dform_dneska ()
void nonlinear_nonstat_solv_fnr_dform ()
void nonlinear_nonstat_solv_fnr_dform_old ()
void nonlinear_nonstat_solv_linesearch ()
void nonlinear_nonstat_solv_new ()
void nonlinear_nonstat_solv_nr_dform ()
void nonlinear_nonstat_solv_oldd ()
void nonlinear_nonstat_solv_pokus ()
void nonlinear_nonstat_solv_vform ()
long norm_computation (double *f, double *rhs, double err, long nt, long sc)
long norm_computation_vec (double *f, double *rhs, double *err, double *thresh, long nt, long sc)
void solve_nonlinear_nonstationary_problem ()

Function Documentation

void nonlinear_nonstat_solv (  ) 
void nonlinear_nonstat_solv_dform (  ) 
void nonlinear_nonstat_solv_dform_dneska (  ) 
void nonlinear_nonstat_solv_fnr_dform (  ) 
void nonlinear_nonstat_solv_fnr_dform_old (  ) 

function solves nonlinear nonstationary transport problem

time discretization is based on the d-form version of the generalized trapezoidal method see T.J.R. Hughes: The Finite Element Method; Linear Static and Dynamic Finite Element Analysis

nonlinearity is solved by the full Newton-Raphson method

JK, 23.4.2008

Definition at line 2174 of file nnpsolvert.cpp.

References timecontr::actualforwtimeincr(), gmatrix::addgm(), probdesct::alpha, approximation(), capacity_matrix(), Cmat, conductivity_matrix(), timecontr::dtmin, timecontr::endtime(), probdesct::err, f, lhsrhst::give_lhs(), lhsrhst::give_rhs(), lhsrhst::give_tdlhs(), gmatrix::gmxv(), Gtt, timecontr::initialtimeincr(), transmat::initmaterialmodels(), Kmat, lhsrhst::lhsi, Lsrst, Mesprt, Ndoft, timecontr::newtime(), probdesct::nii, nullv(), Outt, p, print_closet(), print_flusht(), print_initt(), print_stept(), gmatrix::scalgm(), slesolv::solve_system(), probdesct::ssle, timecontr::starttime(), timecontr::time, probdesct::time, time, probdesct::timecont, Tm, Tp, trfel_right_hand_side(), and transmat::updateipval().

void nonlinear_nonstat_solv_linesearch (  ) 
void nonlinear_nonstat_solv_new (  ) 
void nonlinear_nonstat_solv_nr_dform (  ) 
void nonlinear_nonstat_solv_oldd (  ) 
void nonlinear_nonstat_solv_pokus (  ) 
void nonlinear_nonstat_solv_vform (  ) 
long norm_computation ( double *  f,
double *  rhs,
double  err,
long  nt,
long  sc 
)

function computes norm of the vector of unbalanced fluxes it enables computation of Euclidean norm of the vector as well as selective norm (appropriate components are collected togehter, e.g. heat fluxes are handled separately from moisture fluxes, both norms are then compared with required error)

norm of unbalanced fluxes can be scaled with respect to the prescribed fluxes (right hand side of the system of equations)

function returns two possible values 0 means that equilibrium is not reached 1 means that equilibrium is reached and unbalanced fluxes are smaller than required

Parameters:
f - vector of unbalanced fluxes
rhs - vector of right hand side (prescribed fluxes)
err - required (prescribed) error
nt - type of norm 1 - Euclidean norm 2 - selective norm
sc - scaling by norm of right hand side vector 0 - no scaling 1 - scaling by the norm of the right hand side vector

JK, 24.8.2006

Definition at line 1568 of file nnpsolvert.cpp.

References transtop::give_dof(), Mesprt, Ndoft, transtop::nn, probdesct::ntm, Tp, and Tt.

Referenced by nonlinear_nonstat_solv_dform(), nonlinear_nonstat_solv_new(), nonlinear_nonstat_solv_oldd(), and nonlinear_nonstat_solv_vform().

long norm_computation_vec ( double *  f,
double *  rhs,
double *  err,
double *  thresh,
long  nt,
long  sc 
)

function computes norm of the vector of unbalanced fluxes it enables computation of Euclidean norm of the vector as well as selective norm (appropriate components are collected togehter, e.g. heat fluxes are handled separately from moisture fluxes, both norms are then compared with required error)

norm of unbalanced fluxes can be scaled with respect to the prescribed fluxes (right hand side of the system of equations)

function returns two possible values 0 means that equilibrium is not reached 1 means that equilibrium is reached and unbalanced fluxes are smaller than required

Parameters:
f - vector of unbalanced fluxes
rhs - vector of right hand side (prescribed fluxes)
err - array of required (prescribed) errors
thresh - array of thresholds for particular variables
nt - type of norm 1 - Euclidean norm 2 - selective norm
sc - scaling by norm of right hand side vector 0 - no scaling 1 - scaling by the norm of the right hand side vector

JK, 24.8.2006

Definition at line 1705 of file nnpsolvert.cpp.

References transtop::give_dof(), Mesprt, Ndoft, transtop::nn, probdesct::ntm, Tp, and Tt.

Referenced by nonlin_nonstat_dform(), nonlinear_nonstat_solv_fnr_dform(), nonlinear_nonstat_solv_nr_dform(), and one_step_nonlinear_dform().

void solve_nonlinear_nonstationary_problem (  ) 

Definition at line 10 of file nnpsolvert.cpp.

References nonlinear_nonstat_solv(), and nonlinear_nonstat_solv_new().


Generated by  doxygen 1.6.2