quadquadrilattax Class Reference

#include <quadquadrilattax.h>

List of all members.

Public Member Functions

double approx (double xi, double eta, vector &nodval)
void bf_matrix (matrix &n, double xi, double eta)
void boundary_flux (vector &v, 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 &v, long lcid, long eid, long leid, long ri, long ci)
void edge_integral (long edg, vector &x, vector &y, long intord, vector &gp, vector &w, vector &t, vector &coef, matrix &km)
void edgenodeval (long edg, vector &nodval, vector &list)
void give_approx_fun (double &f, double xi, double eta, long i)
void grad_matrix (matrix &gm, vector &x, vector &y, double xi, double eta, double &jac)
void internal_fluxes (long lcid, long eid, vector &ifl)
void intpointgrad (long eid)
void intpointother (long eid)
void intpointval (long eid)
void ipcoordblock (long eid, long ri, long ci, double **coord)
void nod_others (long lcid, long eid, long ri, long ci)
 quadquadrilattax (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)
double total_integral (long eid, vector &nodval)
void transf_coeff (long edg, vector &coeff, vector &list, long eid, long ri, long ci, long ipp, bocontypet *bc)
void transf_flux (long edg, vector &coeff, vector &list, vector &trc, vector &trr, long eid, long ri, long ci, long ipp, bocontypet *bc)
void transf_val (long edg, vector &nodval, vector &list, vector &trc, vector &trr, long eid, long ri, long ci, long ipp, bocontypet *bc)
void transmission_matrix (long lcid, long eid, long ri, long ci, matrix &km)
void transmission_vector (vector &v, long lcid, long eid, long leid, long ri, long ci)
 ~quadquadrilattax (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 ** 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 matter
long ** ordering
 unknown ordering

Detailed Description

class quadquadrilattax defines plane quadrilateral element with quadratic approximation functions for transport problems for axisymmetric domain

Definition at line 11 of file quadquadrilattax.h.


Constructor & Destructor Documentation

quadquadrilattax ( void   ) 
~quadquadrilattax ( void   ) 

Definition at line 115 of file quadquadrilattax.cpp.

References dofe, intordcm, intordkm, nip, ntm, and ordering.


Member Function Documentation

double approx ( double  xi,
double  eta,
vector nodval 
)

function approximates function defined by nodal values

Parameters:
xi,eta - coordinates on element
nodval - vector of nodal values

JK, 8.5.2002

Definition at line 149 of file quadquadrilattax.cpp.

References vector::a, bf_quad_4_2d(), f, nne, and scprd().

Referenced by capacity_matrix(), conductivity_matrix(), edge_integral(), internal_fluxes(), intpointother(), intpointval(), ipcoordblock(), quantity_source_vector(), and total_integral().

void bf_matrix ( matrix n,
double  xi,
double  eta 
)

function assembles matrix of base functions

Parameters:
n - matrix of base functions
xi,eta - natural coordinates

JK, 25.9.2001

Definition at line 413 of file quadquadrilattax.cpp.

References matrix::a, bf_quad_4_2d(), and fillm().

Referenced by capacity_matrix(), conductivity_matrix(), edge_integral(), axiquadc::lower_cap_coup_matrix(), axiquadc::lower_cond_coup_matrix(), quantity_source_vector(), axiquadc::upper_cap_coup_matrix(), axiquadc::upper_cond_coup_matrix(), and axiquadc::upper_cond_coup_vector().

void boundary_flux ( vector v,
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

Parameters:
v - vector of boundary fluxes
lcid - load case id
eid - element id
leid - loaded element id
ri,ci - row and column indices

TKr, 28.2.2004

Definition at line 1228 of file quadquadrilattax.cpp.

References addv(), edge_integral(), edgenodeval(), transtop::elements, loadcaset::elemload, fillm(), fillv(), gauss_points(), loadelt::give_bc(), transtop::give_elemnodes(), transtop::give_node_coord2d(), loadelt::give_nodval(), loadelt::give_trc(), loadelt::give_trr(), intordkm, elementt::ipp, transbclc::lc, mxv(), ned, nne, nned, nodes, nodval(), probdesct::savemode, Tb, Tp, transf_flux(), and Tt.

Referenced by res_boundary_flux().

void capacity_matrix ( long  eid,
long  ri,
long  ci,
matrix cm 
)

function computes capacity matrix of 2D problems for one transported matter finite element with quadratic approximation functions

Parameters:
eid - number of element
ri,ci - row and column indices of the computed block in the resulting matrix
cm - capacity matrix

JK, 4.10.2001

Definition at line 548 of file quadquadrilattax.cpp.

References matrix::a, approx(), bf_matrix(), transmat::capcoeff(), dofe, transtop::elements, fillm(), gauss_points(), transcrsec::give_density(), transtop::give_elemnodes(), transtop::give_node_coord2d(), intordcm, intordkm, elementt::ipp, jac_2d(), 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 
)
void conductivity_matrix ( long  lcid,
long  eid,
long  ri,
long  ci,
matrix km 
)

function computes conductivity matrix of 2D problems for one transported matter finite element with quadratic approximation functions

Parameters:
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, 25.9.2001

Definition at line 478 of file quadquadrilattax.cpp.

References matrix::a, approx(), bdbj(), bdbjac(), bf_matrix(), dofe, transtop::elements, fillm(), gauss_points(), transtop::give_elemnodes(), transtop::give_node_coord2d(), grad_matrix(), intordkm, elementt::ipp, transmat::matcond(), transmat::matcond2(), ncomp, nne, nodes, reallocm(), probdesct::savemode, Tm, Tp, elementt::transi, transmission_matrix(), and Tt.

Referenced by res_conductivity_matrix().

void convection_vector ( vector v,
long  lcid,
long  eid,
long  leid,
long  ri,
long  ci 
)

function computes nodal fluxes from boundary values

{Gamma_2} N^T N dGamma * nodal_flux_values

Parameters:
v - array of nodal fluxes
lcid -
eid - element id
leid - id of loaded element
ri,ci - row and column indices

JK, 19.8.2004

Definition at line 1021 of file quadquadrilattax.cpp.

References addv(), edge_integral(), edgenodeval(), transtop::elements, loadcaset::elemload, fillm(), fillv(), gauss_points(), loadelt::give_bc(), transtop::give_elemnodes(), transtop::give_node_coord2d(), loadelt::give_nodval(), intordkm, elementt::ipp, transbclc::lc, mxv(), ned, nne, nned, nodes, nodval(), probdesct::savemode, Tb, Tp, and Tt.

Referenced by res_convection_vector().

void edge_integral ( long  edg,
vector x,
vector y,
long  intord,
vector gp,
vector w,
vector t,
vector coef,
matrix km 
)

function integrates N^T c N over edges

Parameters:
edg - edge id (number of edge)
x,y - coordinates of element nodes
intord - order of numerical integration
gp,w - coordinates and weights of integration points
t - nodal thicknesses
coef - array of nodal values of coefficient
km - output matrix

JK

Definition at line 1298 of file quadquadrilattax.cpp.

References matrix::a, approx(), bf_matrix(), jac1d_2d(), matrix::m, matrix::n, nne, and nnj().

Referenced by boundary_flux(), convection_vector(), transmission_matrix(), and transmission_vector().

void edgenodeval ( long  edg,
vector nodval,
vector list 
)

function picks up nodal values on required edges

Parameters:
edg - number of required edge
nodval - array of nodal values
list - array of nodal values defined on all edges

JK, 19.8.2004

Definition at line 1505 of file quadquadrilattax.cpp.

References ivector::a, fillv(), nned, and quadquadrilat_edgnod().

Referenced by boundary_flux(), convection_vector(), and transmission_vector().

void give_approx_fun ( double &  f,
double  xi,
double  eta,
long  i 
)

function returns one approximation function evaluated in required point

Parameters:
f - value of approximation function
xi,eta - natural coordinates
i - number of approximation function

JK, 1.2.2003

Definition at line 428 of file quadquadrilattax.cpp.

References bf_quad_4_2d().

void grad_matrix ( matrix gm,
vector x,
vector y,
double  xi,
double  eta,
double &  jac 
)

function assembles gradient of matrix of base functions

Parameters:
gm - gradient matrix
x,y - array containing node coordinates
xi,eta - natural coorodinates
jac - Jacobian

JK, 25.9.2001

Definition at line 446 of file quadquadrilattax.cpp.

References vector::a, derivatives_2d(), dx_bf_quad_4_2d(), dy_bf_quad_4_2d(), fillm(), and nne.

Referenced by conductivity_matrix(), internal_fluxes(), and intpointgrad().

void internal_fluxes ( long  lcid,
long  eid,
vector ifl 
)

function computes internal fluxes of 1D problems for one transported matter finite element with linear approximation functions

Parameters:
lcid - number of load case
eid - number of element
ifl - vector of internal fluxes

JK, 31.3.2002

Definition at line 641 of file quadquadrilattax.cpp.

References vector::a, addv(), approx(), cmulv(), transmat::computenlfluxes(), dofe, transtop::elements, gauss_points(), transtop::give_elemnodes(), transtop::give_node_coord2d(), transmat::givefluxes(), grad_matrix(), intordkm, elementt::ipp, mtxv(), ncomp, nne, nodes, reallocv(), probdesct::savemode, 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, 8.5.2002

Definition at line 266 of file quadquadrilattax.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

Parameters:
eid - element id

JK, 17.9.2005

Definition at line 336 of file quadquadrilattax.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, 8.5.2002

Definition at line 201 of file quadquadrilattax.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, ordering, reallocv(), probdesct::savemode, Tm, Tp, and Tt.

Referenced by intpointvalues().

void ipcoordblock ( long  eid,
long  ri,
long  ci,
double **  coord 
)

function assembles coordinates of integration points in block [ri][ci]

Parameters:
eid - element id
ri - row index
ci - column index
ipcoord - array containing coordinates of integration points

8.5.2002

Definition at line 171 of file quadquadrilattax.cpp.

References vector::a, approx(), gauss_points(), transtop::give_node_coord2d(), intordkm, nne, and Tt.

void nod_others ( long  lcid,
long  eid,
long  ri,
long  ci 
)

function computes other values in nodes of element

Parameters:
lcid - load case id
eid - element id
ri - row index
ci - column index

10.5.2002

Definition at line 961 of file quadquadrilattax.cpp.

References vector::a, ivector::a, transtop::elements, elemvalues(), transtop::give_code_numbers(), transtop::give_elemnodes(), transmat::givecompother(), transmat::givencompother(), h(), elementt::ipp, ndofe, nne, nod, ntm, other, reallocv(), probdesct::savemode, Tm, Tp, and Tt.

void quantity_source_vector ( vector sv,
vector nodval,
long  eid,
long  ri,
long  ci 
)

function computes source vector of one matter on one element

{Omega} N^T N d Omega . s

Parameters:
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, 4.10.2001

Definition at line 600 of file quadquadrilattax.cpp.

References matrix::a, addv(), approx(), bf_matrix(), dofe, fillm(), gauss_points(), transtop::give_node_coord2d(), intordcm, jac_2d(), mxv(), nne, nnj(), 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

Parameters:
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 928 of file quadquadrilattax.cpp.

References vector::a, boundary_flux(), codnum(), dofe, transtop::elements, locglob(), ntm, reallocv(), elementt::transi, and Tt.

Referenced by elem_transmission_flux().

void res_capacity_matrix ( long  eid,
matrix cm 
)

function assembles resulting element capacity matrix

Parameters:
eid - element id
cm - resulting capacity matrix of one element

JK, 6.1.2002

Definition at line 722 of file quadquadrilattax.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

Parameters:
eid - element id
lcid - load case id
km - resulting conductivity matrix of one element

JK, 6.1.2002

Definition at line 695 of file quadquadrilattax.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

Parameters:
f - resulting convection vector of one element
lcid - load case id
eid - element id
leid - element id

JK, 6.1.2002

Definition at line 769 of file quadquadrilattax.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

Parameters:
eid - element id
elemif - resulting internal fluxes vector of one element

JK, 6.1.2002

Definition at line 848 of file quadquadrilattax.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().

void res_quantity_source_vector ( vector sv,
vector nodval,
long  lcid,
long  eid 
)

function assembles resulting element source vector

Parameters:
sv - resulting source vector of one element
lcid - load case id
eid - element id

JK, 6.1.2002

Definition at line 827 of file quadquadrilattax.cpp.

References vector::a, codnum(), dofe, locglob(), quantity_source_vector(), and reallocv().

Referenced by source_vector().

void res_transmission_vector ( vector f,
long  lcid,
long  eid,
long  leid 
)

function assembles resulting element transmission vector

Parameters:
f - resulting transmission vector of one element
lcid - load case id
eid - element id
leid - element id

JK, 6.1.2002

Definition at line 796 of file quadquadrilattax.cpp.

References vector::a, codnum(), dofe, transtop::elements, locglob(), ntm, reallocv(), elementt::transi, transmission_vector(), and Tt.

Referenced by elem_newton_vector().

double total_integral ( long  eid,
vector nodval 
)

function computes element quantity integral

Parameters:
eid - element id
nodval - vector of quantity nodal values
Return values:
f - element quantity integral

TKr, 30.1.2004

Definition at line 887 of file quadquadrilattax.cpp.

References approx(), f, gauss_points(), transtop::give_elemnodes(), transtop::give_node_coord2d(), jac_2d(), nne, nodes, and Tt.

Referenced by elem_total_integral().

void transf_coeff ( long  edg,
vector coeff,
vector list,
long  eid,
long  ri,
long  ci,
long  ipp,
bocontypet bc 
)
void transf_flux ( long  edg,
vector coeff,
vector list,
vector trc,
vector trr,
long  eid,
long  ri,
long  ci,
long  ipp,
bocontypet bc 
)

function

Parameters:
edg - edge id
coeff - array of
list - array of nodal values prescribed on boundary
trc - array of transmission coefficients
trr - array of transmission/radiation coefficients
eid - element id
ri,ci - row and column indices
ipp - integration point id
bc - array describing type of boundary condition

Definition at line 1385 of file quadquadrilattax.cpp.

References ivector::a, fillv(), transtop::give_elemnodes(), nne, nned, nodes, quadquadrilat_edgnod(), Tm, transmat::transmission_flux(), and Tt.

Referenced by boundary_flux().

void transf_val ( long  edg,
vector nodval,
vector list,
vector trc,
vector trr,
long  eid,
long  ri,
long  ci,
long  ipp,
bocontypet bc 
)
Parameters:
edg - number of required edge
nodval - array of transformed nodal values
list - array of nodal values defined on all edges
trc -
trr -
ri,ci - row and column indices
ipp - integration point number
bc - array defining boundary conditions

JK, 19.8.2004

Definition at line 1461 of file quadquadrilattax.cpp.

References ivector::a, fillv(), transtop::give_elemnodes(), nne, nned, nodes, quadquadrilat_edgnod(), Tm, transmat::transmission_nodval(), and Tt.

Referenced by transmission_vector().

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

Parameters:
lcid - load case id
eid - element id
ri,ci - row and column indices
km - conductivity matrix

JK, 19.8.2004

Definition at line 1092 of file quadquadrilattax.cpp.

References vector::a, edge_integral(), loadelt::eid, transtop::elements, loadcaset::elemload, gauss_points(), loadelt::give_bc(), transtop::give_elemnodes(), transtop::give_node_coord2d(), loadelt::give_trc(), intordkm, elementt::ipp, transbclc::lc, loadcaset::neb, ned, nne, nned, nodes, probdesct::savemode, Tb, Tp, transf_coeff(), and Tt.

Referenced by conductivity_matrix().

void transmission_vector ( vector v,
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

Parameters:
v - transmission vector of one matter
lcid - load case id
eid - element id
leid - id of loaded element
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 1158 of file quadquadrilattax.cpp.

References addv(), edge_integral(), edgenodeval(), transtop::elements, loadcaset::elemload, fillm(), fillv(), gauss_points(), loadelt::give_bc(), transtop::give_elemnodes(), transtop::give_node_coord2d(), loadelt::give_nodval(), loadelt::give_trc(), loadelt::give_trr(), intordkm, elementt::ipp, transbclc::lc, mxv(), ned, nne, nned, nodes, nodval(), probdesct::savemode, Tb, Tp, transf_val(), and Tt.

Referenced by res_transmission_vector().


Member Data Documentation

long** dofe
long** intordcm
long** intordkm
long napfun

number of approximated functions

Definition at line 66 of file quadquadrilattax.h.

Referenced by quadquadrilattax().

long ncomp

problem dimension

Definition at line 68 of file quadquadrilattax.h.

Referenced by conductivity_matrix(), transtop::give_ncomp(), internal_fluxes(), intpointgrad(), and quadquadrilattax().

long ndofe

total number of DOFs on the element

Definition at line 56 of file quadquadrilattax.h.

Referenced by axiquadc::axiquadc(), transtop::give_ndofe(), intpointgrad(), intpointval(), nod_others(), quadquadrilattax(), and res_internal_fluxes().

long ned
long** nip

number of integration points

Definition at line 70 of file quadquadrilattax.h.

Referenced by transtop::give_nip(), quadquadrilattax(), and ~quadquadrilattax().

long nne
long nned
long ntm
long** ordering

unknown ordering

Definition at line 72 of file quadquadrilattax.h.

Referenced by codnum(), intpointgrad(), intpointval(), quadquadrilattax(), and ~quadquadrilattax().


The documentation for this class was generated from the following files:

Generated by  doxygen 1.6.2