#include <quadbart.h>
Public Member Functions | |
| double | approx (double xi, vector &nodval) |
| void | bf_matrix (matrix &n, double xi) |
| void | boundary_flux (vector &tmv, long lcid, long eid, long leid, long ri, long ci) |
| void | capacity_matrix (long eid, long ri, long ci, matrix &cm) |
| void | codnum (long *cn, long ri) |
| void | conductivity_matrix (long lcid, long eid, long ri, long ci, matrix &km) |
| void | convection_vector (vector &f, long lcid, long eid, long leid, long ri, long ci) |
| void | grad_matrix (matrix &gm, vector &x, double xi, double &jac) |
| void | internal_fluxes (long lcid, long eid, vector &ifl) |
| void | intpointgrad (long eid) |
| void | intpointother (long eid) |
| void | intpointval (long eid) |
| void | nod_others_comp (long lcid, long eid, long ri, long ci) |
| quadbart (void) | |
| void | quantity_source_vector (vector &sv, vector &nodval, long eid, long ri, long ci) |
| void | res_boundary_flux (vector &f, long lcid, long eid, long leid) |
| void | res_capacity_matrix (long eid, matrix &cm) |
| void | res_conductivity_matrix (long eid, long lcid, matrix &km) |
| void | res_convection_vector (vector &f, long lcid, long eid, long leid) |
| void | res_internal_fluxes (long eid, vector &elemif) |
| void | res_quantity_source_vector (vector &sv, vector &nodval, long lcid, long eid) |
| void | res_transmission_vector (vector &f, long lcid, long eid, long leid) |
| void | res_volume_rhs_vector (vector &f, long eid, long lcid) |
| double | total_integral (long eid, vector &nodval) |
| void | transmission_matrix (long lcid, long eid, long ri, long ci, matrix &km) |
| void | transmission_vector (vector &tmv, long lcid, long eid, long leid, long ri, long ci) |
| void | volume_rhs_vector (long lcid, long eid, long ri, long ci, vector &vrhs) |
| ~quadbart (void) | |
Public Attributes | |
| long ** | dofe |
| numbers of DOFs for particular problems | |
| long ** | intordcm |
| orders of integration of capacity matrices | |
| long ** | intordkm |
| orders of integration of conductivity matrices | |
| long | napfun |
| number of approximated functions | |
| long | ncomp |
| problem dimension | |
| long | ndofe |
| total number of DOFs on the element | |
| long | ned |
| number of edges | |
| long | nen |
| number of end nodes | |
| long ** | nip |
| number of integration points | |
| long | nne |
| number of nodes on one element | |
| long | nned |
| number of nodes on one edge | |
| long | ntm |
| number of transported matters | |
| long ** | ordering |
| unknown ordering | |
class quadbart defines onedimensional element with quadratic approximation functions
Definition at line 9 of file quadbart.h.
| quadbart | ( | void | ) |
Definition at line 11 of file quadbart.cpp.
References dofe, intordcm, intordkm, napfun, ncomp, ndofe, ned, nen, nip, nne, nned, nomedium, probdesct::ntm, ntm, onemedium, ordering, print_err(), probdesct::savemode, threemediacoup, probdesct::tmatt, Tp, and twomediacoup.
| ~quadbart | ( | void | ) |
| double approx | ( | double | xi, | |
| vector & | nodval | |||
| ) |
function approximates function defined by nodal values
| xi | - natural coordinate on element | |
| nodval | - nodal values |
JK, 31.3.2002
Definition at line 140 of file quadbart.cpp.
References vector::a, bf_quad_1d(), f, nne, and scprd().
Referenced by boundary_flux(), capacity_matrix(), conductivity_matrix(), convection_vector(), internal_fluxes(), intpointother(), intpointval(), barelc::intpointval(), quantity_source_vector(), total_integral(), transmission_matrix(), transmission_vector(), and volume_rhs_vector().
| void bf_matrix | ( | matrix & | n, | |
| double | xi | |||
| ) |
function assembles matrix of base functions
| n | - matrix of base functions | |
| xi | - natural coordinate |
JK, 31.3.2002
Definition at line 359 of file quadbart.cpp.
References matrix::a, bf_quad_1d(), and fillm().
Referenced by boundary_flux(), capacity_matrix(), conductivity_matrix(), convection_vector(), barelc::lower_cap_coup_matrix(), barelc::lower_cond_coup_matrix(), quantity_source_vector(), transmission_matrix(), transmission_vector(), barelc::upper_cap_coup_matrix(), barelc::upper_cond_coup_matrix(), and barelc::upper_cond_coup_vector().
| void boundary_flux | ( | vector & | tmv, | |
| long | lcid, | |||
| long | eid, | |||
| long | leid, | |||
| long | ri, | |||
| long | ci | |||
| ) |
function computes contributions to the boundary flux from transmission vector
{Gamma_3} N^T c_{tr} N dGamma * nodal_external_value
| tmv | - vector of boundary fluxes | |
| lcid | - load case id | |
| eid | - element id | |
| leid | - element id | |
| ri,ci | - row and column indices of the computed block in the resulting matrix |
TKr, 28.2.2004
Definition at line 1204 of file quadbart.cpp.
References matrix::a, addv(), approx(), bf_matrix(), dofe, transtop::elements, loadcaset::elemload, fillm(), transcrsec::give_area(), loadelt::give_bc(), transtop::give_elemnodes(), transtop::give_node_coord1d(), loadelt::give_nodval(), loadelt::give_trc(), loadelt::give_trr(), elementt::ipp, transbclc::lc, mxv(), nne, nnj(), nodes, nodval(), probdesct::savemode, Tb, Tc, Tm, Tp, transmat::transmission_flux(), and Tt.
Referenced by res_boundary_flux().
| void capacity_matrix | ( | long | eid, | |
| long | ri, | |||
| long | ci, | |||
| matrix & | cm | |||
| ) |
function computes capacity matrix of 1D problems for one transported matter finite element with quadratic approximation functions
| eid | - number of element | |
| ri,ci | - row and column indices of the computed block in the resulting matrix | |
| cm | - capacity matrix |
JK, 31.3.2002
Definition at line 469 of file quadbart.cpp.
References matrix::a, approx(), bf_matrix(), transmat::capcoeff(), dofe, transtop::elements, fillm(), gauss_points(), transcrsec::give_area(), transcrsec::give_densitye(), transtop::give_elemnodes(), transtop::give_node_coord1d(), intordcm, intordkm, elementt::ipp, jac_1d(), matrix::m, matrix::n, nne, nnj(), nodes, probdesct::savemode, Tc, Tm, Tp, and Tt.
Referenced by res_capacity_matrix().
| void codnum | ( | long * | cn, | |
| long | ri | |||
| ) |
Definition at line 124 of file quadbart.cpp.
Referenced by res_boundary_flux(), res_capacity_matrix(), res_conductivity_matrix(), res_convection_vector(), res_internal_fluxes(), barelc::res_lower_cap_coup_matrix(), barelc::res_lower_cond_coup_matrix(), barelc::res_lower_internal_fluxes(), res_quantity_source_vector(), res_transmission_vector(), barelc::res_upper_cap_coup_matrix(), barelc::res_upper_cond_coup_matrix(), barelc::res_upper_cond_coup_vector(), res_volume_rhs_vector(), and barelc::res_volume_rhs_vector().
| void conductivity_matrix | ( | long | lcid, | |
| long | eid, | |||
| long | ri, | |||
| long | ci, | |||
| matrix & | km | |||
| ) |
function computes conductivity matrix of 1D problems for one transported matter finite element with quadratic approximation functions
| lcid | - number of load case | |
| eid | - number of element | |
| ri,ci | - row and column indices of the computed block in the resulting matrix | |
| km | - conductivity matrix |
JK, 31.3.2002
Definition at line 401 of file quadbart.cpp.
References matrix::a, approx(), bdbj(), bdbjac(), bf_matrix(), dofe, transtop::elements, fillm(), gauss_points(), transcrsec::give_area(), transtop::give_elemnodes(), transtop::give_node_coord1d(), grad_matrix(), intordkm, elementt::ipp, transmat::matcond(), transmat::matcond2(), ncomp, nne, nodes, reallocm(), probdesct::savemode, Tc, Tm, Tp, elementt::transi, transmission_matrix(), and Tt.
Referenced by res_conductivity_matrix().
| void convection_vector | ( | vector & | f, | |
| long | lcid, | |||
| long | eid, | |||
| long | leid, | |||
| long | ri, | |||
| long | ci | |||
| ) |
function computes contribution to the convection vector
{Gamma_2} N^T N dGamma * nodal_flux_values
| f | - convection vector of one matter | |
| lcid | - load case id | |
| eid | - element id | |
| ri,ci | - row and column indices of the block (ri must be equal to ci) |
JK, 8.10.2001
Definition at line 766 of file quadbart.cpp.
References matrix::a, addv(), approx(), bf_matrix(), dofe, loadcaset::elemload, fillm(), transcrsec::give_area(), loadelt::give_bc(), transtop::give_elemnodes(), transtop::give_node_coord1d(), loadelt::give_nodval(), transbclc::lc, mxv(), nne, nnj(), nodes, nodval(), Tb, Tc, and Tt.
Referenced by res_convection_vector().
function assembles gradient of matrix of base functions
| gm | - gradient matrix | |
| x | - array containing node coordinates | |
| xi | - natural coordinate |
JK, 31.3.2002
Definition at line 376 of file quadbart.cpp.
References vector::a, derivatives_1d(), dx_bf_quad_1d(), and nne.
Referenced by conductivity_matrix(), internal_fluxes(), intpointgrad(), barelc::intpointgrad(), barelc::lower_internal_fluxes(), and volume_rhs_vector().
| void internal_fluxes | ( | long | lcid, | |
| long | eid, | |||
| vector & | ifl | |||
| ) |
function computes internal fluxes of 1D problems for one transported matter finite element with quadratic approximation functions
| lcid | - number of load case | |
| eid | - number of element | |
| ifl | - vector of internal fluxes |
JK, 31.3.2002
Definition at line 824 of file quadbart.cpp.
References addv(), approx(), cmulv(), transmat::computenlfluxes(), dofe, transtop::elements, gauss_points(), transcrsec::give_area(), transtop::give_elemnodes(), transtop::give_node_coord1d(), transmat::givefluxes(), grad_matrix(), intordkm, elementt::ipp, mtxv(), ncomp, nne, nodes, probdesct::savemode, Tc, Tm, Tp, and Tt.
Referenced by res_internal_fluxes().
| void intpointgrad | ( | long | eid | ) |
function computes values in integration points from nodal values
| eid | - element id |
JK, 31.3.2003
Definition at line 219 of file quadbart.cpp.
References vector::a, ivector::a, dofe, transtop::elements, elemvalues(), gauss_points(), transtop::give_code_numbers(), transtop::give_node_coord2d(), grad, grad_matrix(), intordcm, intordkm, elementt::ipp, mxv(), ncomp, ndofe, nne, probdesct::ntm, ordering, reallocv(), probdesct::savemode, transmat::storegrad(), Tm, Tp, and Tt.
Referenced by intpointgradients().
| void intpointother | ( | long | eid | ) |
function approximates nodal values of array other to integration points
| eid | - element id |
JK, 17.9.2005
Definition at line 286 of file quadbart.cpp.
References vector::a, approx(), transtop::elements, gauss_points(), transtop::give_elemnodes(), intordcm, intordkm, transmat::ip, elementt::ipp, nodet::ncompother, nne, nodalotherval(), transtop::nodes, nodes, probdesct::ntm, intpointst::other, reallocv(), probdesct::savemode, Tm, Tp, and Tt.
Referenced by intpointothers().
| void intpointval | ( | long | eid | ) |
function computes values in integration points from nodal values
| eid | - element id |
JK, 31.3.2003
Definition at line 158 of file quadbart.cpp.
References vector::a, ivector::a, approx(), intpointst::av, dofe, transtop::elements, elemvalues(), gauss_points(), transtop::give_code_numbers(), intordcm, intordkm, transmat::ip, elementt::ipp, ndofe, nne, probdesct::ntm, ntm, ordering, reallocv(), probdesct::savemode, Tm, Tp, and Tt.
Referenced by intpointvalues().
| void nod_others_comp | ( | long | lcid, | |
| long | eid, | |||
| long | ri, | |||
| long | ci | |||
| ) |
function computes other values in nodes of element
| lcid | - load case id | |
| eid | - element id |
TKr, 23/02/2011
Definition at line 1325 of file quadbart.cpp.
References vector::a, ivector::a, allocv(), destrv(), transtop::elements, elemvalues(), transtop::give_code_numbers(), transtop::give_elemnodes(), transmat::givecompother(), transmat::givencompother(), h(), elementt::ipp, ndofe, nne, nod, transtop::nodes, ntm, other, probdesct::savemode, nodet::storeother(), Tm, Tp, and Tt.
Referenced by compute_nodeotherst_comp().
function computes source vector of one matter on one element
{Omega} N^T N d Omega . s
| sv | - source vector of one matter | |
| lcid | - load case id | |
| eid | - element id | |
| ri,ci | - row and column indices of the block (ri must be equal to ci) |
JK, 31.3.2002
Definition at line 527 of file quadbart.cpp.
References matrix::a, addv(), approx(), bf_matrix(), dofe, fillm(), gauss_points(), transcrsec::give_area(), transtop::give_elemnodes(), transtop::give_node_coord1d(), intordcm, jac_1d(), mxv(), nne, nnj(), nodes, Tc, and Tt.
Referenced by res_quantity_source_vector().
| void res_boundary_flux | ( | vector & | f, | |
| long | lcid, | |||
| long | eid, | |||
| long | leid | |||
| ) |
function assembles resulting element boundary flux vector
| f | - resulting boundary flux vector of one element | |
| lcid | - load case id | |
| eid | - element id | |
| leid | - element id |
TKr, 28.2.2004
Definition at line 1294 of file quadbart.cpp.
References vector::a, allocv(), boundary_flux(), codnum(), destrv(), dofe, transtop::elements, locglob(), ntm, elementt::transi, and Tt.
Referenced by elem_transmission_flux().
| void res_capacity_matrix | ( | long | eid, | |
| matrix & | cm | |||
| ) |
function assembles resulting element capacity matrix
| eid | - element id | |
| cm | - resulting capacity matrix of one element |
JK, 6.1.2002
Definition at line 995 of file quadbart.cpp.
References capacity_matrix(), codnum(), probdesct::diagcap, dofe, mat_localize(), ntm, reallocm(), and Tp.
Referenced by capacmat(), and res_internal_fluxes().
| void res_conductivity_matrix | ( | long | eid, | |
| long | lcid, | |||
| matrix & | km | |||
| ) |
function assembles resulting element conductivity matrix
| eid | - element id | |
| lcid | - load case id | |
| km | - resulting conductivity matrix of one element |
JK, 6.1.2002
Definition at line 876 of file quadbart.cpp.
References codnum(), conductivity_matrix(), dofe, mat_localize(), ntm, and reallocm().
Referenced by conductmat().
| void res_convection_vector | ( | vector & | f, | |
| long | lcid, | |||
| long | eid, | |||
| long | leid | |||
| ) |
function assembles resulting element convection vector
| f | - resulting convection vector of one element | |
| lcid | - load case id | |
| eid | - element id | |
| leid | - element id |
JK, 6.1.2002
Definition at line 1038 of file quadbart.cpp.
References vector::a, cmulv(), codnum(), convection_vector(), dofe, locglob(), and reallocv().
Referenced by elem_neumann_vector().
| void res_internal_fluxes | ( | long | eid, | |
| vector & | elemif | |||
| ) |
function assembles resulting element internal fluxes vector
| eid | - element id | |
| elemif | - resulting internal fluxes vector of one element |
JK, 6.1.2002
Definition at line 1115 of file quadbart.cpp.
References vector::a, codnum(), dofe, gtopology::give_code_numbers(), Gtt, internal_fluxes(), locglob(), mxv(), ndofe, nodalderivatives(), ntm, reallocm(), reallocv(), res_capacity_matrix(), and subv().
Referenced by internal_fluxes().
function assembles resulting element source vector
| sv | - resulting source vector of one element | |
| lcid | - load case id | |
| eid | - element id |
JK, 6.1.2002
Definition at line 1094 of file quadbart.cpp.
References vector::a, codnum(), dofe, locglob(), quantity_source_vector(), and reallocv().
| void res_transmission_vector | ( | vector & | f, | |
| long | lcid, | |||
| long | eid, | |||
| long | leid | |||
| ) |
function assembles resulting element transmission vector
| f | - resulting transmission vector of one element | |
| lcid | - load case id | |
| eid | - element id | |
| leid | - element id |
JK, 6.1.2002
Definition at line 1064 of file quadbart.cpp.
References vector::a, codnum(), dofe, transtop::elements, locglob(), ntm, reallocv(), elementt::transi, transmission_vector(), and Tt.
Referenced by elem_newton_vector().
| void res_volume_rhs_vector | ( | vector & | f, | |
| long | eid, | |||
| long | lcid | |||
| ) |
function assembles resulting element volume right-hand side
| eid | - element id | |
| lcid | - load case id | |
| f | - resulting volume right-hand side vector of one element |
TKr, 23/02/2011
Definition at line 970 of file quadbart.cpp.
References vector::a, codnum(), dofe, locglob(), ntm, reallocv(), and volume_rhs_vector().
Referenced by volume_rhs_vector().
| double total_integral | ( | long | eid, | |
| vector & | nodval | |||
| ) |
function computes element quantity integral
| eid | - element id | |
| nodval | - vector of quantity nodal values |
| f | - element quantity integral |
TKr, 30.1.2004
Definition at line 1155 of file quadbart.cpp.
References approx(), f, gauss_points(), transcrsec::give_area(), transtop::give_elemnodes(), transtop::give_node_coord1d(), jac_1d(), nne, nodes, Tc, and Tt.
Referenced by elem_total_integral().
| void transmission_matrix | ( | long | lcid, | |
| long | eid, | |||
| long | ri, | |||
| long | ci, | |||
| matrix & | km | |||
| ) |
function computes transmission complement to the conductivity matrix for one matter
{Gamma_3} N^T c_{tr} N dGamma
| lcid | - number of load case | |
| eid | - number of element | |
| ri,ci | - row and column indices | |
| km | - part of the conductivity matrix |
JK, 31.3.2002 TKr, 30.1.2004 - new added
Definition at line 578 of file quadbart.cpp.
References matrix::a, approx(), bf_matrix(), dofe, loadelt::eid, transtop::elements, loadcaset::elemload, transcrsec::give_area(), loadelt::give_bc(), transtop::give_elemnodes(), transtop::give_node_coord1d(), loadelt::give_trc(), elementt::ipp, transbclc::lc, matrix::m, matrix::n, loadcaset::neb, nne, nnj(), nodes, probdesct::savemode, Tb, Tc, Tm, Tp, transmat::transmission_transcoeff(), and Tt.
Referenced by conductivity_matrix().
| void transmission_vector | ( | vector & | tmv, | |
| long | lcid, | |||
| long | eid, | |||
| long | leid, | |||
| long | ri, | |||
| long | ci | |||
| ) |
function computes contributions to the transmission vector
{Gamma_3} N^T c_{tr} N dGamma * nodal_external_value
| tmv | - transmission vector of one matter | |
| lcid | - load case id | |
| eid | - element id | |
| ri,ci | - row and column indices of the block (ri must be equal to ci) |
JK, 5.10.2001 TKr, 30.1.2002 - new added
Definition at line 668 of file quadbart.cpp.
References matrix::a, addv(), approx(), bf_matrix(), dofe, transtop::elements, loadcaset::elemload, fillm(), transcrsec::give_area(), loadelt::give_bc(), transtop::give_elemnodes(), transtop::give_node_coord1d(), loadelt::give_nodval(), loadelt::give_trc(), loadelt::give_trr(), elementt::ipp, transbclc::lc, mxv(), nne, nnj(), nodes, nodval(), probdesct::savemode, Tb, Tc, Tm, Tp, transmat::transmission_nodval(), and Tt.
Referenced by res_transmission_vector().
| void volume_rhs_vector | ( | long | lcid, | |
| long | eid, | |||
| long | ri, | |||
| long | ci, | |||
| vector & | vrhs | |||
| ) |
function computes contributions to the right-hand side - volume integral
{Omega} B^T D dOmega
| tmv | - transmission vector of one matter | |
| lcid | - load case id | |
| eid | - element id | |
| ri,ci | - row and column indices of the block (ri must be equal to ci) |
TKr, 23/02/2011
Definition at line 908 of file quadbart.cpp.
References approx(), dofe, transtop::elements, fillm(), gauss_points(), transcrsec::give_area(), transtop::give_elemnodes(), transtop::give_node_coord1d(), grad_matrix(), intordkm, elementt::ipp, vector::n, ncomp, nne, nnjac(), nodes, reallocm(), probdesct::savemode, Tc, Tm, Tp, Tt, and transmat::volume_rhs().
Referenced by res_volume_rhs_vector().
| long** dofe |
numbers of DOFs for particular problems
Definition at line 50 of file quadbart.h.
Referenced by boundary_flux(), capacity_matrix(), conductivity_matrix(), convection_vector(), internal_fluxes(), intpointgrad(), intpointval(), quadbart(), quantity_source_vector(), res_boundary_flux(), res_capacity_matrix(), res_conductivity_matrix(), res_convection_vector(), res_internal_fluxes(), res_quantity_source_vector(), res_transmission_vector(), res_volume_rhs_vector(), transmission_matrix(), transmission_vector(), volume_rhs_vector(), and ~quadbart().
| long** intordcm |
orders of integration of capacity matrices
Definition at line 71 of file quadbart.h.
Referenced by capacity_matrix(), transtop::give_intordcm(), intpointgrad(), intpointother(), intpointval(), quadbart(), quantity_source_vector(), and ~quadbart().
| long** intordkm |
orders of integration of conductivity matrices
Definition at line 69 of file quadbart.h.
Referenced by capacity_matrix(), conductivity_matrix(), transtop::give_intordkm(), internal_fluxes(), intpointgrad(), intpointother(), intpointval(), quadbart(), volume_rhs_vector(), and ~quadbart().
| long napfun |
number of approximated functions
Definition at line 61 of file quadbart.h.
Referenced by quadbart().
| long ncomp |
problem dimension
Definition at line 63 of file quadbart.h.
Referenced by conductivity_matrix(), transtop::give_ncomp(), internal_fluxes(), intpointgrad(), quadbart(), and volume_rhs_vector().
| long ndofe |
total number of DOFs on the element
Definition at line 48 of file quadbart.h.
Referenced by barelc::barelc(), transtop::give_ndofe(), intpointgrad(), intpointval(), nod_others_comp(), quadbart(), and res_internal_fluxes().
| long ned |
number of edges
Definition at line 57 of file quadbart.h.
Referenced by transtop::give_ned(), and quadbart().
| long nen |
number of end nodes
Definition at line 54 of file quadbart.h.
Referenced by transtop::give_nbobjects(), and quadbart().
| long** nip |
number of integration points
Definition at line 65 of file quadbart.h.
Referenced by transtop::give_nip(), quadbart(), and ~quadbart().
| long nne |
number of nodes on one element
Definition at line 52 of file quadbart.h.
Referenced by approx(), barelc::barelc(), boundary_flux(), capacity_matrix(), codnum(), conductivity_matrix(), convection_vector(), transtop::give_nne(), grad_matrix(), internal_fluxes(), intpointgrad(), intpointother(), intpointval(), nod_others_comp(), quadbart(), quantity_source_vector(), total_integral(), transmission_matrix(), transmission_vector(), and volume_rhs_vector().
| long nned |
number of nodes on one edge
Definition at line 59 of file quadbart.h.
Referenced by transtop::give_nned(), and quadbart().
| long ntm |
number of transported matters
Definition at line 46 of file quadbart.h.
Referenced by intpointval(), nod_others_comp(), quadbart(), res_boundary_flux(), res_capacity_matrix(), res_conductivity_matrix(), res_internal_fluxes(), res_transmission_vector(), res_volume_rhs_vector(), and ~quadbart().
| long** ordering |
unknown ordering
Definition at line 67 of file quadbart.h.
Referenced by codnum(), intpointgrad(), intpointval(), quadbart(), and ~quadbart().
1.6.2