|
ug4
|
a special constraint that sets functions and matrices in the outer subdomain to given values More...
#include <dom_disc_embb.h>
Inheritance diagram for ug::LSGFConstraint< TDomain, TAlgebra, TExtrapolation >:Public Types | |
| typedef TAlgebra | algebra_type |
| Algebra type. | |
| typedef TDomain | domain_type |
| Domain type. | |
| typedef TExtrapolation | extrapolation_type |
| Extrapolation type. | |
| typedef algebra_type::matrix_type | matrix_type |
| Matrix type in the algebra. | |
| typedef algebra_type::vector_type | vector_type |
| Vector type in the algebra. | |
Public Types inherited from ug::IDomainConstraint< TDomain, TAlgebra > | |
| typedef TAlgebra | algebra_type |
| Algebra type. | |
| typedef TDomain | domain_type |
| Domain Type. | |
| typedef algebra_type::matrix_type | matrix_type |
| Type of algebra matrix. | |
| typedef algebra_type::vector_type | vector_type |
| Type of algebra vector. | |
Public Types inherited from ug::IConstraint< TAlgebra > | |
| typedef TAlgebra | algebra_type |
| Algebra type. | |
| typedef algebra_type::matrix_type | matrix_type |
| Type of algebra matrix. | |
| typedef algebra_type::vector_type | vector_type |
| Type of algebra vector. | |
Public Member Functions | |
| void | adjust_defect (vector_type &d, const vector_type &u, ConstSmartPtr< DoFDistribution > dd, int type, number time=0.0, ConstSmartPtr< VectorTimeSeries< vector_type > > vSol=SPNULL, const std::vector< number > *vScaleMass=NULL, const std::vector< number > *vScaleStiff=NULL) |
| sets a zero value in the defect for all conductor indices | |
| void | adjust_jacobian (matrix_type &J, const vector_type &u, ConstSmartPtr< DoFDistribution > dd, int type, number time=0.0, ConstSmartPtr< VectorTimeSeries< vector_type > > vSol=SPNULL, const number s_a0=1.0) |
| sets a unity row for all conductor indices | |
| void | adjust_linear (matrix_type &A, vector_type &b, ConstSmartPtr< DoFDistribution > dd, int type, number time=0.0) |
| sets unity rows in A and dirichlet values in right-hand side b | |
| void | adjust_rhs (vector_type &b, const vector_type &u, ConstSmartPtr< DoFDistribution > dd, int type, number time=0.0) |
| sets the dirichlet value in the right-hand side | |
| void | adjust_solution (vector_type &u, ConstSmartPtr< DoFDistribution > dd, int type, number time=0.0) |
| sets the value in the solution for all conductor indices | |
| LSGFConstraint (extrapolation_type &rExtrapolation) | |
| class constructor | |
| int | type () const |
| returns the type of the constraints | |
| virtual | ~LSGFConstraint () |
| virtual destructor | |
Public Member Functions inherited from ug::IDomainConstraint< TDomain, TAlgebra > | |
| SmartPtr< ApproximationSpace< TDomain > > | approximation_space () |
| returns approximation space | |
| ConstSmartPtr< ApproximationSpace< TDomain > > | approximation_space () const |
| returns approximation space | |
| virtual SmartPtr< IErrEstData< TDomain > > | err_est_data () |
| returns the pointer to the error estimator data object (or NULL) | |
| bool | err_est_enabled () const |
| find out whether or not a posteriori error estimation is to be performed for this disc | |
| IDomainConstraint () | |
| constructor | |
| virtual void | set_approximation_space (SmartPtr< ApproximationSpace< TDomain > > approxSpace) |
| sets the approximation space | |
| void | set_ass_tuner (ConstSmartPtr< AssemblingTuner< TAlgebra > > spAssemblingTuner=NULL) |
| sets the assemble adapter for the constraints | |
| void | set_error_estimator (SmartPtr< IErrEstData< TDomain > > ee) |
| sets the pointer to an error estimator data object (or NULL) | |
Public Member Functions inherited from ug::IConstraint< TAlgebra > | |
| virtual void | adjust_correction (vector_type &c, ConstSmartPtr< DoFDistribution > dd, int type, number time=0.0) |
| virtual void | adjust_error (const vector_type &u, ConstSmartPtr< DoFDistribution > dd, int type, number time=0.0, ConstSmartPtr< VectorTimeSeries< vector_type > > vSol=SPNULL, const std::vector< number > *vScaleMass=NULL, const std::vector< number > *vScaleStiff=NULL) |
| adjusts the assembled error estimator values in the attachments according to the constraint | |
| virtual void | adjust_linear_residual (vector_type &d, const vector_type &u, ConstSmartPtr< DoFDistribution > dd, int type, number time=0.0) |
| adjust linear residual | |
| virtual void | adjust_prolongation (matrix_type &P, ConstSmartPtr< DoFDistribution > ddFine, ConstSmartPtr< DoFDistribution > ddCoarse, int type, number time=0.0) |
| sets constraints in prolongation | |
| virtual void | adjust_prolongation (vector_type &uFine, GridLevel fineLvl, const vector_type &uCoarse, GridLevel coarseLvl, int type) |
| sets the constraints in a solution vector | |
| virtual void | adjust_restriction (matrix_type &R, ConstSmartPtr< DoFDistribution > ddCoarse, ConstSmartPtr< DoFDistribution > ddFine, int type, number time=0.0) |
| sets constraints in restriction | |
| virtual void | adjust_restriction (vector_type &uCoarse, GridLevel coarseLvl, const vector_type &uFine, GridLevel fineLvl, int type) |
| sets the constraints in a solution vector | |
| virtual void | modify_solution (SmartPtr< VectorTimeSeries< vector_type > > vSolMod, ConstSmartPtr< VectorTimeSeries< vector_type > > vSol, ConstSmartPtr< DoFDistribution > dd, int type) |
| modify_solution for instationary case | |
| virtual void | modify_solution (vector_type &uMod, const vector_type &u, ConstSmartPtr< DoFDistribution > dd, int type) |
| modifies solution vector before calling the assembling routine | |
| virtual | ~IConstraint () |
| virtual destructor | |
Private Attributes | |
| extrapolation_type & | m_rExtrapolation |
| Extrapolation in the GF method. | |
Additional Inherited Members | |
Protected Member Functions inherited from ug::IDomainConstraint< TDomain, TAlgebra > | |
| ConstSmartPtr< DoFDistribution > | dd (const GridLevel &gl) const |
| returns the level dof distribution | |
Protected Attributes inherited from ug::IDomainConstraint< TDomain, TAlgebra > | |
| SmartPtr< ApproximationSpace< TDomain > > | m_spApproxSpace |
| Approximation Space. | |
| ConstSmartPtr< AssemblingTuner< TAlgebra > > | m_spAssTuner |
| Assemble adapter. | |
| SmartPtr< IErrEstData< TDomain > > | m_spErrEstData |
| error estimation object associated to the element discretization | |
a special constraint that sets functions and matrices in the outer subdomain to given values
This class implements a constraint for the LSF based ghost-fluid method to set grid functions and matrices in the outer subdomain to given values.
| TDomain | domain type |
| TAlgebra | algebra type |
| TExtrapolation | extrapolation class |
| typedef TAlgebra ug::LSGFConstraint< TDomain, TAlgebra, TExtrapolation >::algebra_type |
Algebra type.
| typedef TDomain ug::LSGFConstraint< TDomain, TAlgebra, TExtrapolation >::domain_type |
Domain type.
| typedef TExtrapolation ug::LSGFConstraint< TDomain, TAlgebra, TExtrapolation >::extrapolation_type |
Extrapolation type.
| typedef algebra_type::matrix_type ug::LSGFConstraint< TDomain, TAlgebra, TExtrapolation >::matrix_type |
Matrix type in the algebra.
| typedef algebra_type::vector_type ug::LSGFConstraint< TDomain, TAlgebra, TExtrapolation >::vector_type |
Vector type in the algebra.
|
inline |
class constructor
| rExtrapolation | the GF extrapolation |
|
inlinevirtual |
virtual destructor
|
inlinevirtual |
sets a zero value in the defect for all conductor indices
Implements ug::IConstraint< TAlgebra >.
References ug::IDomainConstraint< TDomain, TAlgebra >::dd(), and ug::LSGFConstraint< TDomain, TAlgebra, TExtrapolation >::m_rExtrapolation.
|
inlinevirtual |
sets a unity row for all conductor indices
Implements ug::IConstraint< TAlgebra >.
References ug::IDomainConstraint< TDomain, TAlgebra >::dd(), and ug::LSGFConstraint< TDomain, TAlgebra, TExtrapolation >::m_rExtrapolation.
|
inlinevirtual |
sets unity rows in A and dirichlet values in right-hand side b
Implements ug::IConstraint< TAlgebra >.
References ug::IDomainConstraint< TDomain, TAlgebra >::dd(), and ug::LSGFConstraint< TDomain, TAlgebra, TExtrapolation >::m_rExtrapolation.
|
inlinevirtual |
sets the dirichlet value in the right-hand side
Implements ug::IConstraint< TAlgebra >.
References ug::IDomainConstraint< TDomain, TAlgebra >::dd(), and ug::LSGFConstraint< TDomain, TAlgebra, TExtrapolation >::m_rExtrapolation.
|
inlinevirtual |
sets the value in the solution for all conductor indices
Implements ug::IConstraint< TAlgebra >.
References ug::IDomainConstraint< TDomain, TAlgebra >::dd(), and ug::LSGFConstraint< TDomain, TAlgebra, TExtrapolation >::m_rExtrapolation.
|
inlinevirtual |
returns the type of the constraints
Implements ug::IDomainConstraint< TDomain, TAlgebra >.
References ug::CT_DIRICHLET.
|
private |
Extrapolation in the GF method.
Referenced by ug::LSGFConstraint< TDomain, TAlgebra, TExtrapolation >::adjust_defect(), ug::LSGFConstraint< TDomain, TAlgebra, TExtrapolation >::adjust_jacobian(), ug::LSGFConstraint< TDomain, TAlgebra, TExtrapolation >::adjust_linear(), ug::LSGFConstraint< TDomain, TAlgebra, TExtrapolation >::adjust_rhs(), and ug::LSGFConstraint< TDomain, TAlgebra, TExtrapolation >::adjust_solution().