#include <mechbclc.h>
Public Member Functions | |
void | alloc_sumcomp () |
void | comp_sum (double *rhs) |
void | comp_sum_pdreact () |
void | comp_sum_react () |
void | eigstrain_computation (double time) |
void | give_comp_sum (double *sum) |
void | inicipval (void) |
mechbclc () | |
void | print (FILE *out) |
void | print_eigenstrains (FILE *out) |
long | printinic (FILE *out) |
void | read (XFILE *in) |
void | read_eigenstrains (XFILE *in) |
long | readinic (XFILE *in) |
~mechbclc () | |
Public Attributes | |
dloadcase * | dlc |
array of time dependent load cases | |
gfunct * | eigstrfun |
array of general functions describing the eigenstrains | |
inicd * | ico |
array of initial conditions | |
loadcase * | lc |
array of static load cases | |
long | ncsum |
number of components of array sumcomp | |
long | ngfes |
the number of general functions describing the eigenstrains | |
long | nico |
number of initcond | |
long | nlc |
number of load cases | |
double * | pd_reactsumcomp |
array containing sums of components of reactions at prescribed displacements in particular directions | |
double * | reactsumcomp |
array containing sums of components of reactions at supports in particular directions | |
strastrestate | strastre |
stress-strain state | |
double * | sumcomp |
array containing sums of components of load vector in particular directions |
Class mechbclc:
It is one of the 5 most important classes of the program. (probdesc, mechtop, mechmat, mechbclc, mechcrsec)
Class mechbclc contains data about boundary conditions, load cases.
Created by JK, TKo
Definition at line 22 of file mechbclc.h.
mechbclc | ( | ) |
Constructor initializes data members to zero or default values.
Created by JK, Modified by TKo, TKr,
Definition at line 26 of file mechbclc.cpp.
References dlc, eigstrfun, ico, lc, ncsum, ngfes, nico, nlc, pd_reactsumcomp, reactsumcomp, and sumcomp.
~mechbclc | ( | ) |
Destructor releases allocated memory of the mechbclc object.
Created by JK, Modified by TKo, TKr,
Definition at line 57 of file mechbclc.cpp.
References dlc, eigstrfun, ico, lc, pd_reactsumcomp, reactsumcomp, and sumcomp.
void alloc_sumcomp | ( | ) |
Function allocates array containing sums of components in particular directions of the nodal force vector.
Created by JK, 6.10.2003
Definition at line 1080 of file mechbclc.cpp.
References mechtop::give_ndofn(), memset(), Mt, ncsum, pd_reactsumcomp, reactsumcomp, and sumcomp.
Referenced by mefel_init(), metr_init(), par_newton_raphson_parcoupl_lin_vform(), par_solve_timemech_prob(), par_solve_timemech_prob_old(), pmefel_init(), and pmetr_init().
void comp_sum | ( | double * | rhs | ) |
Function computes sums of components in particular directions of the nodal force vector.
rhs | - vector of right hand side (nodal forces) |
Created by JK, 6.10.2003
Definition at line 1101 of file mechbclc.cpp.
References mechtop::give_dof(), gtopology::gnodes, Gtm, Mt, ncsum, Ndofm, gnode::ndofn, mechtop::nn, nullv(), and sumcomp.
Referenced by newton_raphson_gparcoupl_lin(), newton_raphson_gparcoupl_nonlin(), newton_raphson_parcoupl_lin(), newton_raphson_parcoupl_nonlin(), newton_raphson_parcoupl_nonlin_new(), newton_raphson_parcoupl_nonlin_old(), one_step(), par_newton_raphson_gparcoupl_lin(), par_newton_raphson_gparcoupl_nonlin(), par_newton_raphson_parcoupl_lin(), par_newton_raphson_parcoupl_lin_vform(), par_newton_raphson_parcoupl_nonlin(), par_one_step(), par_one_step_mefel(), par_solve_prob_constr_phases(), par_solve_timemech_prob(), par_solve_timemech_prob_old(), solve_prob_constr_phases(), and visco_solver().
void comp_sum_pdreact | ( | ) |
The function computes sums of components in particular directions of the reactions caused by prescribed displacements. Particular sums of components are stored in pd_reactsumcomp array.
Created by Tomas Koudelka, 12.2009
Definition at line 1165 of file mechbclc.cpp.
References mechtop::give_dof(), gtopology::gnodes, Gtm, Mt, ncsum, gnode::ndofn, mechtop::nn, mechtop::nodes, nullv(), pd_reactsumcomp, node::r, and sumcomp.
Referenced by newton_raphson_gparcoupl_nonlin(), par_newton_raphson_gparcoupl_lin(), par_newton_raphson_gparcoupl_nonlin(), par_solve_prob_constr_phases(), and solve_prob_constr_phases().
void comp_sum_react | ( | ) |
The function computes sums of components in particular directions of the reactions at supports. Particular sums of components are stored in reactsumcomp array.
Created by Tomas Koudelka, 12.2009
Definition at line 1139 of file mechbclc.cpp.
References mechtop::give_dof(), gtopology::gnodes, Gtm, Mt, ncsum, gnode::ndofn, mechtop::nn, mechtop::nodes, nullv(), node::r, and reactsumcomp.
Referenced by newton_raphson_gparcoupl_nonlin(), par_newton_raphson_gparcoupl_lin(), par_newton_raphson_gparcoupl_nonlin(), par_solve_prob_constr_phases(), and solve_prob_constr_phases().
void eigstrain_computation | ( | double | time | ) |
function computes eigenstrains
time | - actual time |
8. 11. 2012
Definition at line 869 of file mechbclc.cpp.
References mechmat::eigstrains, probdesc::eigstrains, mechmat::eigstresses, eigstrfun, mechmat::eigstrid, gfunct::getval(), intpoints::give_ncompstr(), mechmat::ip, Mm, Mp, and mechmat::tnip.
Referenced by nodal_eigstrain_forces(), and read_eigenstrains().
void give_comp_sum | ( | double * | sum | ) |
Function returns sums of components in particular directions of the nodal force vector.
Created by JK, 6.10.2003
Definition at line 1188 of file mechbclc.cpp.
References ncsum, and sumcomp.
Referenced by consol::get_hc().
void inicipval | ( | void | ) |
Function computes initial values at integration points from initial nodal values.
Created by Tomas Koudelka,
Definition at line 977 of file mechbclc.cpp.
References allocm(), allocv(), Asymlq, Asymlt, axisymmlq, axisymmlt, Bar2d, bar2d, Barq2d, barq2d, Cct, cctel, destrm(), destrv(), Dkt, dktel, Dst, dstel, fillm(), mechtop::give_elem_type(), mechtop::give_elemnodes(), gtopology::give_ndofn(), mechtop::give_nne(), Gtm, ico, quadhex::inicipval(), linhex::inicipval(), quadtet::inicipval(), lintet::inicipval(), shellq::inicipval(), shelltr::inicipval(), axisymlt::inicipval(), axisymlq::inicipval(), q4plate::inicipval(), dstelem::inicipval(), dktelem::inicipval(), cctelem::inicipval(), planeelemsubqt::inicipval(), planeelemrotlq::inicipval(), planeelemqq::inicipval(), planeelemlq::inicipval(), planeelemrotlt::inicipval(), planeelemqt::inicipval(), planeelemlt::inicipval(), springel::inicipval(), barelq2d::inicipval(), barel2d::inicipval(), inidisp, gtopology::leso, Lhex, linearhex, lineartet, Ltet, Mt, mechtop::ne, nodval(), inicd::nval, Pelq, Pelt, Peqq, Peqt, Perlq, Perlt, Pesqt, planeelementlq, planeelementlt, planeelementqq, planeelementqt, planeelementrotlq, planeelementrotlt, planeelementsubqt, print_err(), Q4pl, q4plateel, Qhex, Qtet, quadrhex, quadrtet, shellqelem, shelltrelem, Shq, Shtr, Spring, spring_1, spring_2, spring_3, spring_4, spring_5, spring_6, inicd::type, type, and inicd::val.
Referenced by mefel_init(), metr_init(), pmefel_init(), and pmetr_init().
void print | ( | FILE * | out | ) |
Function prints data about boundary conditions and load cases.
out | - pointer to the opened FILE |
TKr, 07/02/2013 according to read (XFILE *in)
Definition at line 300 of file mechbclc.cpp.
References dlc, earth_pressure, eigen_dynamics, epplast_sol, forced_dynamics, geom_nonlinear_statics, growing_mech_structure, hemivar_inequal, layered_linear_statics, lc, lin_floating_subdomain, linear_statics, load_balancing, mat_nonlinear_statics, mech_timedependent_prob, Mp, nlc, nonlin_floating_subdomain, nonlinear_dynamics, dloadcase::print(), loadcase::print(), print_eigenstrains(), print_err(), printinic(), probdesc::tepsol, and probdesc::tprob.
void print_eigenstrains | ( | FILE * | out | ) |
function prints eigenstrains, according to read_eigenstrains (XFILE *in)
out | - output file |
TKr, 07/02/2013
Definition at line 759 of file mechbclc.cpp.
References axisymm, bar, probdesc::eigstrains, eigstrfun, mechmat::eigstrid, mechtop::elements, mechtop::give_ssst(), element::ipp, Mm, Mp, Mt, mechtop::ne, ngfes, planestress, gfunct::print(), print_err(), and spacestress.
Referenced by print().
long printinic | ( | FILE * | out | ) |
This function prints section with data about initial conditions in the nodes and if it is necessarry it allocates memory for mechmat ic array.
out | is pointer to the structure with opened file. |
0 | - on succes | |
1 | - error reading number of nodes with initial condition | |
2 | - error reading node number |
TKr, 11/02/2013 according to readinic (XFILE *in)
Definition at line 952 of file mechbclc.cpp.
References ico, nico, and inicd::print().
Referenced by print().
void read | ( | XFILE * | in | ) |
Function reads data about boundary conditions and load cases.
in | - pointer to the opened XFILE |
Created by JK, Modified by Tomas Koudelka,
Definition at line 87 of file mechbclc.cpp.
References dlc, earth_pressure, eigen_dynamics, probdesc::eigsol, epplast_sol, forced_dynamics, geom_nonlinear_statics, growing_mech_structure, hemivar_inequal, layered_linear_statics, lc, lin_floating_subdomain, linear_statics, load_balancing, mat_nonlinear_statics, mech_timedependent_prob, Mp, eigvalsol::neigv, nlc, nodval(), nonlin_floating_subdomain, nonlinear_dynamics, print_err(), dloadcase::read(), loadcase::read(), read_eigenstrains(), readinic(), probdesc::straincomp, probdesc::stresscomp, probdesc::tepsol, probdesc::tprob, and xfscanf().
Referenced by mefel_init(), metr_init(), pmefel_init(), and pmetr_init().
void read_eigenstrains | ( | XFILE * | in | ) |
function reads eigenstrains
in | - input file |
JK, 8.11.2012
Definition at line 444 of file mechbclc.cpp.
References axisymm, bar, eigstrain_computation(), mechmat::eigstrains, probdesc::eigstrains, mechmat::eigstresses, eigstrfun, mechmat::eigstrid, mechtop::elements, mechtop::give_ssst(), mechtop::give_tnip(), mechmat::ip, element::ipp, memset(), Mespr, Mm, Mp, Mt, intpoints::ncompstr, mechtop::ne, ngfes, planestress, print_err(), gfunct::read(), spacestress, strastrestate_kwdset(), probdesc::time, mechmat::tnip, and xfscanf().
Referenced by read().
long readinic | ( | XFILE * | in | ) |
This method reads section with data about initial conditions in the nodes and if it is necessarry it allocates memory for mechmat ic array.
in | is pointer to the structure with opened file. |
0 | - on succes | |
1 | - error reading number of nodes with initial condition | |
2 | - error reading node number |
Created by Tomas Koudelka,
Definition at line 906 of file mechbclc.cpp.
References mechmat::ic, ico, inicond, memset(), Mm, Mt, nico, mechtop::nn, print_err(), inicd::read(), mechmat::tnip, type, and xfscanf().
Referenced by read().
array of time dependent load cases
Definition at line 58 of file mechbclc.h.
Referenced by compute_req_val(), difference_method(), eldispl(), elprdispl(), general_epressure(), general_epressure_varsup(), lhsrhs::initcond(), mechbclc(), mefel_right_hand_side(), newmark_method(), nonlin_newmark_method(), print(), read(), response_spectrum_method(), select_noddispl(), solve_epressure(), and ~mechbclc().
array of general functions describing the eigenstrains
Definition at line 65 of file mechbclc.h.
Referenced by eigstrain_computation(), mechbclc(), print_eigenstrains(), read_eigenstrains(), and ~mechbclc().
array of initial conditions
Definition at line 60 of file mechbclc.h.
Referenced by inicipval(), lhsrhs::initcond(), mechbclc(), mefel_init(), metr_init(), pmefel_init(), pmetr_init(), printinic(), readinic(), and ~mechbclc().
array of static load cases
Definition at line 56 of file mechbclc.h.
Referenced by stochdriver::changenodloads(), compute_req_val(), difference_method(), eldispl(), elprdispl(), general_epressure(), general_epressure_varsup(), mechbclc(), mefel_right_hand_side(), newmark_method(), beamel2d::nodal_forces(), nonlin_newmark_method(), par_solve_layered_linear_statics(), par_solve_linear_statics(), prdisplincr(), print(), print_displacements(), read(), select_noddispl(), solve_epressure(), solve_layered_linear_statics(), solve_var_stiff_method(), linhex::tempstrains(), axisymqq::tempstrains(), axisymlq::tempstrains(), and ~mechbclc().
long ncsum |
number of components of array sumcomp
Definition at line 47 of file mechbclc.h.
Referenced by alloc_sumcomp(), comp_sum(), comp_sum_pdreact(), comp_sum_react(), give_comp_sum(), and mechbclc().
long ngfes |
the number of general functions describing the eigenstrains
Definition at line 63 of file mechbclc.h.
Referenced by mechbclc(), print_eigenstrains(), and read_eigenstrains().
long nico |
number of initcond
Definition at line 44 of file mechbclc.h.
Referenced by lhsrhs::initcond(), mechbclc(), printinic(), and readinic().
long nlc |
number of load cases
Definition at line 42 of file mechbclc.h.
Referenced by mechtop::alloc_nodes_arrays(), mechmat::clean_ip(), mechtop::clean_nodes(), mechmat::computenlstressesincr(), mechmat::init_ip_2(), lhsrhs::lhsrhs(), mechbclc(), planeelemlq::mechq_nodval_comp(), barel2d::mechq_nodval_comp(), print(), outdriverm::print_graphics(), outdriverm::print_graphics_forced(), adaptivity::print_test(), read(), mechmat::restore_intpoints_bin(), mechmat::restore_intpoints_txt(), mechmat::save_intpoints_bin(), and mechmat::save_intpoints_txt().
double* pd_reactsumcomp |
array containing sums of components of reactions at prescribed displacements in particular directions
Definition at line 53 of file mechbclc.h.
Referenced by alloc_sumcomp(), comp_sum_pdreact(), mechbclc(), newton_raphson_gparcoupl_nonlin(), solve_prob_constr_phases(), and ~mechbclc().
double* reactsumcomp |
array containing sums of components of reactions at supports in particular directions
Definition at line 51 of file mechbclc.h.
Referenced by alloc_sumcomp(), comp_sum_react(), mechbclc(), newton_raphson_gparcoupl_nonlin(), solve_prob_constr_phases(), and ~mechbclc().
stress-strain state
Definition at line 67 of file mechbclc.h.
double* sumcomp |
array containing sums of components of load vector in particular directions
Definition at line 49 of file mechbclc.h.
Referenced by alloc_sumcomp(), comp_sum(), comp_sum_pdreact(), give_comp_sum(), mechbclc(), newton_raphson_gparcoupl_lin(), newton_raphson_gparcoupl_nonlin(), newton_raphson_parcoupl_lin(), newton_raphson_parcoupl_nonlin(), 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(), solve_prob_constr_phases(), and ~mechbclc().