SIFEL/TRFEL/SRC/globmatt.h File Reference

#include "genfile.h"
#include "aliast.h"

Go to the source code of this file.

Functions

void actual_previous_change ()
void actual_previous_nodval ()
void approximation ()
void approximation_puc ()
void assemble_average_c_matrix (matrix &cm)
void assemble_average_d_matrix (matrix &km, double &area)
void assemble_conductivity_matrix (matrix &km)
void assemble_gradients_contrib (double *rhs)
void assemble_init (double *rhs)
void assemble_l_matrix (matrix &lm, matrix &ltm)
void capacity_matrix (long lcid)
void compute_cycles (double *plhs, double *pplhs)
void compute_req_valt (long lcid)
void conductivity_matrix (long lcid)
void copy_nodval (long lcid)
void dt_subdom ()
void elemvalues (long lcid, long eid, double *r, long *cn, long ndofe)
void elemvalues_puc (long lcid, long eid, double *r, long ndofe)
void give_nodal_humid (double *gv, long mnt)
void initialvalues (double *r, long *cn, long ndofe)
void initnodval (long lcid, double *r, long idn)
void lnso_leso_setting (long *lsso)
void nodalderivatives (double *r, long *cn, long ndofe)
void nodalotherval (double *r, ivector &nod)
double nodalval (long lcid, long nid, long dofid)
void nodalval (long lcid, double *r, long idn)
void prescvalues (double *r, long *cn, long ndofe)
void prevnodval (long lcid, double *r, long idn, double *lhs)
void residuum (double *r, double *p, double *v, double dt, long n, long lcid)
void solution_correction ()
double total_integral (long lcid)
double total_integral_ip (long varid)
void trfel_bound_flux (long lcid, double *rhs, long n)
void trfel_right_hand_side (long lcid, double *rhs, long n)

Function Documentation

void actual_previous_change (  ) 

function moves arrays with actual values to arrays of previous values at all integration points

JK, 29.5.2007

Definition at line 867 of file globmatt.cpp.

References intpointst::actual_previous_change(), transmat::ip, Tm, and transmat::tnip.

Referenced by approximation(), nonlinear_nonstat_solv_dform_dneska(), par_homogenization(), and par_linear_nonstat_solv_vform().

void actual_previous_nodval (  ) 
void approximation (  ) 

function computes quantity values in integration points values in integration points are obtained from nodal values

16.1.2002

function computes quantity values in integration points

16.1.2002

Definition at line 771 of file globmatt.cpp.

void approximation_puc (  ) 

function computes quantity values in integration points of PUC values in integration points are obtained from nodal values of PUC

TKr, 08/09/2010

Definition at line 745 of file globmatt.cpp.

References transmat::aux_values(), Gtt, intpointvalues_puc(), gtopology::leso, transtop::ne, Tm, and Tt.

Referenced by paral_transport_homogenization(), and transport_homogenization().

void assemble_average_c_matrix ( matrix cm  ) 

function assembles average capacity (C) matrix of PUC

Parameters:
lcid - load case id

Definition at line 1635 of file globmatt.cpp.

References allocm(), avercmat(), check_math_errel(), cmulm(), destrm(), transtop::give_ncomp(), Gtt, transbclc::lc, gtopology::leso, loadcaset::masterval, transtop::ne, probdesct::ntm, Tb, Tp, and Tt.

Referenced by paral_transport_homogenization(), and transport_homogenization().

void assemble_average_d_matrix ( matrix km,
double &  area 
)

function assembles average conductivity (D) matrix of PUC

Parameters:
lcid - load case id

Definition at line 1592 of file globmatt.cpp.

References allocm(), averdmat(), check_math_errel(), cmulm(), destrm(), transtop::give_ncomp(), Gtt, gtopology::leso, transtop::ne, probdesct::ntm, Tp, and Tt.

Referenced by paral_transport_homogenization(), and transport_homogenization().

void assemble_conductivity_matrix ( matrix km  ) 

function assembles conductivity matrix of PUC

Parameters:
lcid - load case id

Definition at line 1559 of file globmatt.cpp.

References allocm(), check_math_errel(), conductmat(), destrm(), gtopology::give_code_numbers(), gtopology::give_ndofe(), Gtt, gtopology::leso, mat_localize(), transtop::ne, and Tt.

void assemble_gradients_contrib ( double *  rhs  ) 

function assembles part of the vector of right hand side from gradients of PUC

Parameters:
rhs - right hand side

19/08/2010, TKr

Definition at line 1416 of file globmatt.cpp.

References vector::a, allocm(), allocv(), cmulv(), destrm(), destrv(), f, transtop::give_code_numbers(), transtop::give_ncomp(), transtop::give_ndofe(), grad, Gtt, transbclc::lc, gtopology::leso, locglob(), ltmat(), loadcaset::mastergrad, mxv(), transtop::ne, probdesct::ntm, Tb, Tp, and Tt.

Referenced by trfel_right_hand_side().

void assemble_init ( double *  rhs  ) 

function assembles part of the vector of right hand side

Parameters:
rhs - right hand side

21.3.2004, JK

Definition at line 897 of file globmatt.cpp.

void assemble_l_matrix ( matrix lm,
matrix ltm 
)

function assembles l matrix and l_t (transposed) matrix of PUC

Parameters:
lcid - load case id

Definition at line 1474 of file globmatt.cpp.

References allocm(), destrm(), gtopology::give_code_numbers(), transtop::give_ncomp(), transtop::give_ndofe(), Gtt, gtopology::leso, lmat(), ltmat(), mat_localize(), transtop::ne, probdesct::ntm, Tp, and Tt.

Referenced by paral_transport_homogenization(), and transport_homogenization().

void capacity_matrix ( long  lcid  ) 

function assembles capacity matrix of the problem

Parameters:
lcid - load case id

Definition at line 80 of file globmatt.cpp.

void compute_cycles ( double *  plhs,
double *  pplhs 
)

function computes number of cycles the function is intended for computation of frozing cycles

Parameters:
plhs - nodal values from previous time step
pplhs - nodal values from time step i-2

11.9.2007, JK

Definition at line 1321 of file globmatt.cpp.

References allocv(), transtop::aux, transmat::cycle_detection(), destrv(), transtop::elements, transtop::give_elemnodes(), transtop::give_ndofn(), transtop::give_nne(), elementt::ipp, transtop::ncycl, transtop::ne, transtop::nn, nod, nodalval(), prevnodval(), Tm, and Tt.

Referenced by nonlinear_nonstat_solv_dform_dneska().

void compute_req_valt ( long  lcid  ) 

function computes all required values this function is called e.g. before output print

Parameters:
lcid - load case id

1.4.2004, JK

01/02/2010 changed by TKr

function computes all required values this function is called e.g. before output print

Parameters:
lcid - load case id

1.4.2004, JK

25.6.2004 changed by TKr

Definition at line 1078 of file globmatt.cpp.

void conductivity_matrix ( long  lcid  ) 

function assembles conductivity matrix of the problem

Parameters:
lcid - load case id

Definition at line 18 of file globmatt.cpp.

void copy_nodval ( long  lcid  ) 

function copies nodal values from vector of nodal values (vector of solution) to the array nodval defined on node

Parameters:
lcid - load case id

JK, 8.1.2008

Definition at line 1387 of file globmatt.cpp.

References transtop::give_ndofn(), transtop::nn, nodalval(), transtop::nodes, nodet::save_nodval(), and Tt.

Referenced by approximation().

void dt_subdom (  ) 

function determines time increment for each subdomain

JK, 27. 5. 2014

Definition at line 1741 of file globmatt.cpp.

References seqtop::domel, Gtt, seqtop::ned, seqtop::ns, and gtopology::stop.

void elemvalues ( long  lcid,
long  eid,
double *  r,
long *  cn,
long  ndofe 
)

function extracts values on one element

Parameters:
lcid - number of load case
r - vector of nodal values
cn - array containing code numbers
ndofe - number of DOFs on actual element

9.7.2001

Definition at line 209 of file globmatt.cpp.

References allocv(), destrv(), discont_nonlin_nonstat_problem, discont_nonstat_problem, pvalt::getval(), transtop::give_elemnodes(), transtop::give_ncomp(), transtop::give_nne(), gtopology::gnodes, growing_np_problem, growing_np_problem_nonlin, Gtt, probdesct::homogt, transbclc::lc, lhsrhst::lhs, lhsrhst::lhsi, Lsrst, loadcaset::mastergrad, loadcaset::masterval, no, nod, nonlinear_nonstationary_problem, nonlinear_stationary_problem, nonstationary_problem, probdesct::ntm, print_err(), loadcaset::pv, stationary_problem, Tb, Tp, probdesct::tprob, Tt, gnode::x, gnode::y, and gnode::z.

Referenced by assemble_init_coup_upper(), transtop::initial_nodval(), trlineart::intpointgrad(), trlinaxisym::intpointgrad(), quadquadrilattax::intpointgrad(), quadquadrilatt::intpointgrad(), quadlineart::intpointgrad(), quadlinaxisym::intpointgrad(), quadhext::intpointgrad(), quadbartax::intpointgrad(), quadbart::intpointgrad(), lintett::intpointgrad(), linhext::intpointgrad(), linbartax::intpointgrad(), quadrilatc::intpointgrad(), barelc::intpointgrad(), trlineart::intpointval(), trlinaxisym::intpointval(), quadquadrilattax::intpointval(), quadquadrilatt::intpointval(), quadlineart::intpointval(), quadlinaxisym::intpointval(), quadhext::intpointval(), quadbartax::intpointval(), quadbart::intpointval(), lintett::intpointval(), linhext::intpointval(), linbartax::intpointval(), quadrilatc::intpointval(), barelc::intpointval(), trlinaxisym::nod_others(), quadquadrilattax::nod_others(), quadquadrilatt::nod_others(), quadlinaxisym::nod_others(), quadhext::nod_others(), quadbartax::nod_others(), lintett::nod_others(), linbartax::nod_others(), trlineart::nod_others_comp(), quadquadrilatt::nod_others_comp(), quadlineart::nod_others_comp(), quadbart::nod_others_comp(), linhext::nod_others_comp(), linbart::nod_others_comp(), and total_integral().

void elemvalues_puc ( long  lcid,
long  eid,
double *  r,
long  ndofe 
)

function computes and extracts values on one element of PUC

Parameters:
lcid - number of load case
r - vector of nodal values

TKr, 08/09/2010

Definition at line 159 of file globmatt.cpp.

References allocv(), transtop::give_elemnodes(), transtop::give_ncomp(), gtopology::give_ndofn(), transtop::give_nne(), gtopology::gnodes, Gtt, transbclc::lc, loadcaset::mastergrad, loadcaset::masterval, nodet::ncompgrad, nod, nodalval(), transtop::nodes, Tb, Tt, gnode::x, gnode::y, and gnode::z.

Referenced by trlineart::intpointval_puc(), quadlineart::intpointval_puc(), lintett::intpointval_puc(), and linhext::intpointval_puc().

void give_nodal_humid ( double *  gv,
long  mnt 
)

Definition at line 1135 of file globmatt.cpp.

void initialvalues ( double *  r,
long *  cn,
long  ndofe 
)

function extracts initial values on one element

Parameters:
r - vector of nodal values
cn - array containing code numbers
ndofe - number of DOFs on element

21.3.2004, JK

function extracts values on one element

Parameters:
eid - element id
r - vector of nodal values
cn - array containing code numbers

21.3.2004, JK

Definition at line 727 of file globmatt.cpp.

void initnodval ( long  lcid,
double *  r,
long  idn 
)

function extracts initial values on one node

Parameters:
lcid - number of load case
r - allocated array for nodal values
idn - node number

JK, 18.8.2008

Definition at line 480 of file globmatt.cpp.

References discont_nonlin_nonstat_problem, discont_nonstat_problem, pvalt::getval(), transtop::give_dof(), transtop::give_ndofn(), growing_np_problem, growing_np_problem_nonlin, transbclc::lc, lhsrhst::lhsi, Lsrst, nonlinear_nonstationary_problem, nonlinear_stationary_problem, nonstationary_problem, print_err(), loadcaset::pv, Tb, Tp, probdesct::tprob, and Tt.

Referenced by endnodet::compute_jump(), edget::compute_jump(), and edget::compute_node_jump().

void lnso_leso_setting ( long *  lsso  ) 

function sets actual values of arrays lnso and leso

nodes and elements are switched on or off with respect to subcycling algorithm

Parameters:
lsso - list of subdomains switched on/off

JK, 27. 5. 2014

Definition at line 1777 of file globmatt.cpp.

References seqtop::domel, transtop::give_elemnodes(), transtop::give_nne(), Gtt, gtopology::leso, gtopology::lnso, transtop::ne, seqtop::ned, transtop::nn, nodes, seqtop::ns, reallocv(), gtopology::stop, and Tt.

void nodalderivatives ( double *  r,
long *  cn,
long  ndofe 
)

function extracts first time derivatives of nodal values on one element

Parameters:
r - vector of derivatives of nodal values
cn - array containing code numbers
ndofe - number of DOFs on actual element

4.3.2003

Definition at line 666 of file globmatt.cpp.

void nodalotherval ( double *  r,
ivector nod 
)

function extracts nodal values stored in array other values are extracted for all nodes of required element

Parameters:
r - array containing nodal values
nod - list of nodes on element

17.9.2005, JK

Definition at line 642 of file globmatt.cpp.

References ivector::n, nodet::ncompother, transtop::nodes, nodet::other, and Tt.

Referenced by trlineart::intpointother(), trlinaxisym::intpointother(), quadquadrilattax::intpointother(), quadquadrilatt::intpointother(), quadlineart::intpointother(), quadlinaxisym::intpointother(), quadhext::intpointother(), quadbartax::intpointother(), quadbart::intpointother(), lintett::intpointother(), linhext::intpointother(), linbartax::intpointother(), and linbart::intpointother().

double nodalval ( long  lcid,
long  nid,
long  dofid 
)
void nodalval ( long  lcid,
double *  r,
long  nid 
)

function extracts all values on one node

Parameters:
lcid - load case id
r - allocated array for nodal values
nid - node id

9.7.2001

Definition at line 331 of file globmatt.cpp.

References discont_nonlin_nonstat_problem, discont_nonstat_problem, pvalt::getval(), transtop::give_dof(), transtop::give_ndofn(), growing_np_problem, growing_np_problem_nonlin, probdesct::homogt, transbclc::lc, lhsrhst::lhs, lhsrhst::lhsi, Lsrst, nonlinear_nonstationary_problem, nonlinear_stationary_problem, nonstationary_problem, print_err(), loadcaset::pv, stationary_problem, Tb, Tp, probdesct::tprob, and Tt.

Referenced by compute_cycles(), endnodet::compute_jump(), edget::compute_jump(), edget::compute_node_jump(), copy_nodval(), transtop::edge_temperature(), elemvalues_puc(), loadelt::give_external_nodval(), loadelt::give_nodval(), loadelt::give_trc(), nodeoutt::print_unkn(), outdiagt::print_unknowns(), solution_correction(), saltmat4::transmission_flux(), saltmat1::transmission_flux(), moistheatmat::transmission_flux(), kunmat::transmission_flux(), bazpedmat::transmission_flux(), saltmat4::transmission_nodval(), saltmat1::transmission_nodval(), moistheatmat::transmission_nodval(), kunmat::transmission_nodval(), bazpedmat::transmission_nodval(), saltmat4::transmission_transcoeff(), saltmat1::transmission_transcoeff(), kunmat::transmission_transcoeff(), bazpedmat::transmission_transcoeff(), quadlineart::transq_nodval_comp(), linbart::transq_nodval_comp(), write_gid_unkn(), and write_vtk_unkn().

void prescvalues ( double *  r,
long *  cn,
long  ndofe 
)

function extracts prescribed and initial values on one element

Parameters:
r - vector of nodal values
cn - array containing code numbers
ndofe - number of DOFs in element

21.3.2004, JK

function extracts values on one element

Parameters:
eid - element id
r - vector of nodal values
cn - array containing code numbers

21.3.2004, JK

Definition at line 701 of file globmatt.cpp.

void prevnodval ( long  lcid,
double *  r,
long  idn,
double *  lhs 
)

function extracts values from previous step on one node this function differs from the function nodval the vector of values is an input parameter while the function nodval uses the vector Lsrst->lhs

Parameters:
lcid - number of load case
r - allocated array for displacement
idn - node number
lhs - vector of values from the previous step

9.7.2001

Definition at line 557 of file globmatt.cpp.

References discont_nonlin_nonstat_problem, discont_nonstat_problem, pvalt::getval(), transtop::give_dof(), transtop::give_ndofn(), growing_np_problem, growing_np_problem_nonlin, transbclc::lc, lhsrhst::lhsi, Lsrst, nonlinear_nonstationary_problem, nonlinear_stationary_problem, nonstationary_problem, print_err(), loadcaset::pv, stationary_problem, Tb, Tp, probdesct::tprob, and Tt.

Referenced by compute_cycles().

void residuum ( double *  r,
double *  p,
double *  v,
double  dt,
long  n,
long  lcid 
)
Parameters:
r - vector of residuum
p - vector d_{n+1} - d_{n}
v - auxiliary vector
dt - actual time increment
lcid - load case id

JK, 2.2.2003

Definition at line 137 of file globmatt.cpp.

void solution_correction (  ) 

function corrects solution of algebraic system of equations unacceptable trial values are replaced by the limit values

14.7.2005

Definition at line 1256 of file globmatt.cpp.

double total_integral ( long  lcid  ) 

function computes integral of a variable over the whole domain the variable is stored on nodes

function computes integral of a variable over the whole domain the variable is stored on nodes

Parameters:
lcid - load case id

14. 3. 2013

Definition at line 1682 of file globmatt.cpp.

References vector::a, ivector::a, check_math_errel(), elem_total_integral(), elemvalues(), transtop::give_medium_code_numbers(), transtop::give_nne(), transtop::ne, nodval(), reallocv(), and Tt.

Referenced by nonlin_nonstat_dform(), and nonstat_solv_dform_comp().

double total_integral_ip ( long  varid  ) 

function computes integral of a variable over the whole domain the variable is stored in integration points

function computes integral of a variable over the whole domain the variable is stored in integration points in array other

Parameters:
varid - id of variable required, it is an index in the array other

3. 10. 2013, JK

Definition at line 1720 of file globmatt.cpp.

References elem_total_integral_ip(), transtop::ne, and Tt.

Referenced by lin_nonstat_dform().

void trfel_bound_flux ( long  lcid,
double *  iflux,
long  n 
)

function assembles flux on the boundary

Parameters:
lcid - load case id
iflux - array containing flux (right hand side)

12.3.2002

Definition at line 1051 of file globmatt.cpp.

void trfel_right_hand_side ( long  lcid,
double *  rhs,
long  n 
)

function assembles right hand side of the problem

Parameters:
lcid - load case id
rhs - array containing right hand side
n - number of components of array rhs

12.3.2002

function assembles right hand side of the problem

Parameters:
lcid - load case id
rhs - array containing right hand side

12.3.2002

Definition at line 953 of file globmatt.cpp.


Generated by  doxygen 1.6.2