SIFEL/PARMETR/SRC/ppcsolver.h File Reference

#include <stdio.h>

Go to the source code of this file.

Functions

double par_gnewton_raphson_one_step_mefel (long lcid, nonlinman *nlman, double *fa, double *ra, double *fb, double *dr, double *fi, long istep, long &j, long li, long ini, double ierr)
void par_newton_raphson_parcoupl (long lcid)
void par_newton_raphson_parcoupl_comp (long lcid)
void par_newton_raphson_parcoupl_lin (long lcid)
void par_newton_raphson_parcoupl_nonlin (long lcid)
void par_nonstat_trfel_init (long lcid, np_glob_vec &np_gv)
long par_one_step_mefel (long lcid, double time, double dt, long istep, long li, mt_glob_vec &mt_gv)
long par_one_step_trfel_linear (long lcid, double time, double dt, long istep, long li, np_glob_vec &np_gv)
long par_one_step_trfel_nonlinear (long lcid, double time, double dt, long istep, long li, np_glob_vec &np_gv)
void par_solve_pcouplprob ()
void par_visco_mefel_init (long lcid, mt_glob_vec &mt_gv)

Function Documentation

double par_gnewton_raphson_one_step_mefel ( long  lcid,
nonlinman nlman,
double *  fa,
double *  ra,
double *  fb,
double *  dr,
double *  fi,
long  istep,
long &  j,
long  li,
long  ini,
double  ierr 
)

Function performs calculation of one parallel load/time step of the Newton-Raphson method for the given load case. Solved equation system does not contain time variable.

Parameters:
lcid - load case id
nlman - pointer to structure conatining setup of the solver
ra - vector of attained displacements
fa - attained load vector
fb - residual vector or load vector increment - right-hand side vector
dr - vector of displacement increment - left-hand side vector
istep - time/load step id
j - inner loop step id (output parameter, set to -1 if no inner loop was performed)
li - initial value of time/load step id
ierr - required normed error of residual vector
Returns:
The function returns reached lambda parameter.

TKr, 19/02/2013 according to Tomas Koudelka

Definition at line 977 of file ppcsolver.cpp.

References addv(), assemble_stiffness_matrix(), check_divergency(), fillm(), fillv(), Gtm, internal_forces(), probdesc::jstep, Mespr, Mp, Myrank, Ndofm, Out, Psolm, Smat, and subv().

Referenced by par_one_step_mefel().

void par_newton_raphson_parcoupl ( long  lcid  ) 

function solves partially coupled thermo-hydro-mechanical time-dependent problem by the Newton-Raphson method

Parameters:
lcid - load case id

11.6.2008

function solves partially coupled thermo-hydro-mechanical time-dependent problem by the Newton-Raphson method

Parameters:
lcid - load case id

TKo 4.2009

function solves partially coupled thermo-hydro-mechanical time-dependent problem by the Newton-Raphson method

Parameters:
lcid - load case id

JK, 5.8.2008

Definition at line 57 of file ppcsolver.cpp.

References nonlinear_nonstationary_problem, nonstationary_problem, par_newton_raphson_parcoupl_lin(), par_newton_raphson_parcoupl_lin_vform(), par_newton_raphson_parcoupl_nonlin(), print_err(), Tp, and probdesct::tprob.

Referenced by par_solve_pcouplprob().

void par_newton_raphson_parcoupl_comp ( long  lcid  ) 
void par_newton_raphson_parcoupl_lin ( long  lcid  ) 

function solves system of linear TRFEL algebraic and non-linear MEFEL equations by Newton-Raphson method for time-dependent problems

Parameters:
lcid - load case id

15.7.2005 JK, corrected by TKr 5.4.2007

Function solves system of linear TRFEL algebraic and non-linear MEFEL equations by Newton-Raphson method for time-dependent problems

Parameters:
lcid - load case id

TKo 4.2009

Function solves system of non-linear TRFEL algebraic and non-linear MEFEL equations by Newton-Raphson method for time-dependent problems.

Parameters:
lcid - load case id

TKr 5.4.2007

function solves system of nonlinear algebraic equations by Newton-Raphson method

Parameters:
lcid - load case id

19.5.2004 JK, corrected by TKr 5.4.2007

function solves system of nonlinear algebraic equations by Newton-Raphson method

Parameters:
lcid - load case id

19.5.2004 - modified by TKr 31.10.2005

Definition at line 86 of file ppcsolver.cpp.

References actual_previous_nodval(), timecontr::actualbacktimeincr(), timecontr::actualforwtimeincr(), gmatrix::addgm(), probdesct::alpha, approximation(), approximation_humid(), approximation_inittemper(), approximation_temper(), capacity_matrix(), Cmat, mechbclc::comp_sum(), compute_req_val(), compute_req_valt(), conductivity_matrix(), probdesct::convergcontrolt, Cp, timecontr::dtmin, timecontr::endtime(), probdesct::err, probdesc::errnr, f, probdescc::fcsolv, pprobdescc::feim, pprobdescc::feit, probdesc::filename, fillm(), fillv(), fluxest, pprobdescc::fnim, pprobdescc::fnit, fullnewtonc, fullnewtont, lhsrhs::give_lhs(), lhsrhst::give_lhs(), lhsrhs::give_rhs(), lhsrhst::give_rhs(), lhsrhst::give_tdlhs(), gmatrix::gmxv(), Gtm, Gtt, probdesct::hdbcont, probdesc::hdbcont, hdbcontr::hdbtype, incr_internal_forces(), timecontr::initialtimeincr(), transmat::initmaterialmodels(), mechmat::initmaterialmodels(), internal_fluxes(), internal_forces(), timecontr::isitimptime(), Kmat, lhsrhs::lhs, lhsrhst::lhs, linearc, lrhst, lsm_quad(), Lsrs, Lsrst, Mb, mefel_right_hand_side(), Mespr, Mesprc, Mesprt, Mm, Mp, Myrank, Ndofm, Ndoft, timecontr::newtime(), newton_raphson_parcoupl_nonlin_new(), newton_raphson_parcoupl_nonlin_old(), probdesct::nii, probdesc::niilnr, probdesc::nlman, nullv(), timecontr::oldtime(), probdesc::otherstate, Out, Outdm, outdriverm::outfn, Outt, p, par_newton_raphson_parcoupl_nonlin(), probdesc::path, Pcp, print_close(), print_closet(), print_flush(), print_flusht(), print_init(), print_initt(), print_step(), print_step_forced(), print_stept(), Psolm, Psolt, hdbcontr::restore_stat(), lhsrhs::rhs, lhsrhst::rhs, hdbcontr::save_stat(), gmatrix::scalgm(), Smat, solution_correction(), slesolv::solve_system(), solver_restore(), solver_save(), solvert_restore(), solvert_save(), ss(), probdescc::ssle, probdesc::ssle, probdesct::ssle, timecontr::starttime(), stiffness_matrix(), nonlinman::stmat, probdesc::strainstate, probdesc::stressstate, probdesc::suffix, mechbclc::sumcomp, timecontr::take_values(), tangent_stiff, lhsrhst::tdlhs, probdesct::time, probdesc::time, probdescc::time, probdesc::timecon, probdescc::timecon, probdesct::timecont, Tm, Tp, probdesct::trestype, trfel_right_hand_side(), probdesct::trsolv, mechmat::updateipval(), transmat::updateipval(), yes, probdesc::zero, and probdesct::zero.

Referenced by par_newton_raphson_parcoupl().

void par_newton_raphson_parcoupl_nonlin ( long  lcid  ) 

Function solves system of non-linear TRFEL algebraic and non-linear MEFEL equations by Newton-Raphson method for time-dependent problems.

Parameters:
lcid - load case id

TKr 5.4.2007

function solves partially coupled problems in parallel, transport processes are nonlinear, mechanical analysis is nonlinear systems of nonlinear equations are solved by the Newton-Raphson method

Parameters:
lcid - load case id

JK, 19.9.2007, 11.6.2008

Definition at line 1657 of file ppcsolver.cpp.

References actual_previous_nodval(), timecontr::actualforwtimeincr(), gmatrix::addgm(), probdesct::alpha, approximation(), approximation_humid(), approximation_inittemper(), approximation_temper(), capacity_matrix(), Cmat, mechbclc::comp_sum(), compute_req_val(), compute_req_valt(), conductivity_matrix(), probdesct::convergcontrolt, Cp, timecontr::dtmin, timecontr::endtime(), probdesct::err, probdesc::errnr, f, probdescc::fcsolv, pprobdescc::feim, pprobdescc::feit, fillm(), fillv(), fluxest, pprobdescc::fnim, pprobdescc::fnit, fullnewtonc, fullnewtont, lhsrhs::give_lhs(), lhsrhst::give_lhs(), lhsrhs::give_rhs(), lhsrhst::give_rhs(), lhsrhst::give_tdlhs(), gmatrix::gmxv(), Gtm, Gtt, probdesct::hdbcont, probdesc::hdbcont, hdbcontr::hdbtype, incr_internal_forces(), timecontr::initialtimeincr(), transmat::initmaterialmodels(), mechmat::initmaterialmodels(), internal_fluxes(), internal_forces(), timecontr::isitimptime(), Kmat, lrhst, lsm_quad(), Lsrs, Lsrst, Mb, mefel_right_hand_side(), Mespr, Mesprc, Mesprt, Mm, Mp, Myrank, Ndofm, Ndoft, timecontr::newtime(), probdesct::nii, probdesc::niilnr, probdesc::nlman, nullv(), timecontr::oldtime(), probdesc::otherstate, Out, Outt, p, Pcp, print_close(), print_closet(), print_flush(), print_flusht(), print_init(), print_initt(), print_step(), print_step_forced(), print_stept(), Psolm, Psolt, hdbcontr::restore_stat(), hdbcontr::save_stat(), gmatrix::scalgm(), Smat, solution_correction(), solver_restore(), solver_save(), solvert_restore(), solvert_save(), timecontr::starttime(), stiffness_matrix(), nonlinman::stmat, probdesc::strainstate, probdesc::stressstate, mechbclc::sumcomp, timecontr::take_values(), tangent_stiff, probdesct::time, probdesc::time, probdescc::time, probdesc::timecon, probdescc::timecon, probdesct::timecont, Tm, Tp, probdesct::trestype, trfel_right_hand_side(), probdesct::trsolv, mechmat::updateipval(), transmat::updateipval(), yes, probdesc::zero, and probdesct::zero.

Referenced by par_newton_raphson_parcoupl(), and par_newton_raphson_parcoupl_lin().

void par_nonstat_trfel_init ( long  lcid,
np_glob_vec np_gv 
)
long par_one_step_mefel ( long  lcid,
double  time,
double  dt,
long  istep,
long  li,
mt_glob_vec mt_gv 
)

Function executes one step of parallel time dependent mechanical algorithm (visco-elasticity, visco-plasticity, etc.)

Parameters:
lcid - load case id
time - actual time
dt - actual time increment
istep - time step id
li - time step id of the first performed time step
f - vector of prescribed nodal forces
fi - vector of computed nodal forces
fp - vector of previous nodal forces
dr - vector of displacement increments
r - vector of total displacements
lhsb - backup of vector of nodal unknowns
Return values:
0 - if the equilibrium was attained with NO inner loop
1 - if the equilibrium was attained and inner loop WAS performed
-1 - if the equilibrium was NOT attained

TKr, 26/02/2013 according to JK and TKo

Definition at line 828 of file ppcsolver.cpp.

References addv(), mechbclc::comp_sum(), compute_req_val(), copyv(), nonlinman::divc_err, nonlinman::divc_step, mt_glob_vec::dr, probdesc::errnr, mt_glob_vec::f, f, mt_glob_vec::fb, mt_glob_vec::fi, mt_glob_vec::fl, mt_glob_vec::fp, probdesc::hdbcont, incr_internal_forces(), timecontr::isitimptime(), probdesc::istep, mt_glob_vec::lhsb, Mb, mefel_right_hand_side(), Mespr, Mm, Mp, Myrank, Ndofm, probdesc::niilnr, probdesc::nlman, probdesc::otherstate, Out, par_gnewton_raphson_one_step_mefel(), print_flush(), print_step(), mt_glob_vec::r, hdbcontr::save_stat(), solver_save(), probdesc::strainstate, probdesc::stressstate, subv(), probdesc::time, probdesc::timecon, mechmat::updateipval(), and probdesc::zero.

Referenced by par_newton_raphson_parcoupl_comp().

long par_one_step_trfel_linear ( long  lcid,
double  time,
double  dt,
long  istep,
long  li,
np_glob_vec np_gv 
)
long par_one_step_trfel_nonlinear ( long  lcid,
double  time,
double  dt,
long  istep,
long  li,
np_glob_vec np_gv 
)
void par_solve_pcouplprob (  ) 

function solves partially coupled thermo-hydro-mechanical time-dependent problem transport problems are linear or nonlinear mechanical analysis is always nonlinear

JK

function solves partially coupled thermo-hydro-mechanical time-dependent problem transport problems are linear or nonlinear mechanical analysis is always nonlinear

4.2009 TKo

function solves partially coupled thermo-hydro-mechanical problem in parallel transport problems are linear or nonlinear mechanical analysis is always nonlinear

JK

Definition at line 29 of file ppcsolver.cpp.

References Cp, newtonc, par_newton_raphson_parcoupl(), par_newton_raphson_parcoupl_comp(), print_err(), and probdescc::tnlinsol.

Referenced by par_solve_metr_problem().

void par_visco_mefel_init ( long  lcid,
mt_glob_vec mt_gv 
)

Generated by  doxygen 1.6.2