#include <Problem.hpp>


Public Types | |
| enum | Type { pde, variational } |
Public Member Functions | |
| void | setDomain (ReferenceCounting< Domain > omega) |
| const Problem::Type & | type () const |
| std::string | typeName () const |
| ConstReferenceCounting< Domain > | domain () const |
| virtual size_t | numberOfUnknown () const =0 |
| virtual ReferenceCounting < Problem > | operator* (const ConstReferenceCounting< ScalarFunctionBase > &c) const =0 |
| virtual const BoundaryConditionSet & | boundaryConditionSet (const size_t &i) const =0 |
| Problem (const Problem::Type &t, ConstReferenceCounting< Domain > omega) | |
| Problem (const Problem &P) | |
| virtual | ~Problem () |
Private Attributes | |
| ConstReferenceCounting< Domain > | __omega |
| const Problem::Type | __type |
Definition at line 37 of file Problem.hpp.
| enum Problem::Type |
| Problem::Problem | ( | const Problem::Type & | t, | |
| ConstReferenceCounting< Domain > | omega | |||
| ) | [inline] |
Constructor
| t | the type of the problem | |
| omega | a pointer to the domain where the problem is posed |
Definition at line 136 of file Problem.hpp.
| Problem::Problem | ( | const Problem & | P | ) | [inline] |
| virtual Problem::~Problem | ( | ) | [inline, virtual] |
| void Problem::setDomain | ( | ReferenceCounting< Domain > | omega | ) | [inline] |
Sets the domain of computation
| omega | |
Definition at line 58 of file Problem.hpp.
References __omega.
00059 { 00060 __omega = omega; 00061 }
| const Problem::Type& Problem::type | ( | ) | const [inline] |
Access to the problem type
Definition at line 69 of file Problem.hpp.
References __type.
Referenced by SpectralFEMPreconditioner::Internal::__solveFEM(), SpectralLegendreDiscretizer::assembleSecondMember(), BoundaryConditionSurfaceMeshAssociation::BoundaryConditionSurfaceMeshAssociation(), BoundaryMeshAssociation::BoundaryMeshAssociation(), DiscretizedOperators< FiniteElement::ElementaryMatrix >::DiscretizedOperators(), SpectralLegendreDiscretizer::getDiagonal(), BoundaryConditionDiscretizationSpectralConform::getDiagonal(), SpectralLegendreDiscretizer::getMultiDiagonal(), BoundaryConditionDiscretizationSpectralConform::setSecondMember(), SpectralLegendreDiscretizer::timesX(), BoundaryConditionDiscretizationSpectralConform::timesX(), SpectralLegendreDiscretizer::transposedTimesX(), and BoundaryConditionDiscretizationSpectralConform::transposedTimesX().
00070 { 00071 return __type; 00072 }
| std::string Problem::typeName | ( | ) | const [inline] |
Definition at line 74 of file Problem.hpp.
References __type, pde, ErrorHandler::unexpected, and variational.
00075 { 00076 switch(__type) { 00077 case pde: { 00078 return "PDE"; 00079 } 00080 case variational: { 00081 return "Variational"; 00082 } 00083 default: { 00084 throw ErrorHandler(__FILE__,__LINE__, 00085 "Unknown problem type name", 00086 ErrorHandler::unexpected); 00087 } 00088 } 00089 return ""; 00090 }
| ConstReferenceCounting<Domain> Problem::domain | ( | ) | const [inline] |
Access to the domain of computation
Definition at line 98 of file Problem.hpp.
References __omega.
00099 { 00100 return __omega; 00101 }
| virtual size_t Problem::numberOfUnknown | ( | ) | const [pure virtual] |
Access to the number of unknown
Implemented in PDESystem, and VariationalProblem.
Referenced by SpectralLegendreDiscretizer::assembleSecondMember(), FEMDiscretization< GivenMeshType, TypeOfDiscretization >::assembleSecondMember(), BoundaryConditionDiscretizationSpectralConform::BoundaryConditionDiscretizationSpectralConform(), BoundaryConditionDiscretizationSpectralNonConform::BoundaryConditionDiscretizationSpectralNonConform(), BoundaryConditionSurfaceMeshAssociation::BoundaryConditionSurfaceMeshAssociation(), DiscretizedOperators< FiniteElement::ElementaryMatrix >::DiscretizedOperators(), SpectralLegendreDiscretizer::getDiagonal(), BoundaryConditionDiscretizationSpectralConform::getDiagonal(), BoundaryConditionDiscretizationPenalty< MeshType, TypeOfDiscretization >::getDiagonal(), SpectralLegendreDiscretizer::getMultiDiagonal(), BoundaryConditionDiscretizationPenalty< MeshType, TypeOfDiscretization >::setMatrix(), BoundaryConditionDiscretizationSpectralConform::setSecondMember(), BoundaryConditionDiscretizationPenalty< MeshType, TypeOfDiscretization >::setSecondMember(), SpectralLegendreDiscretizer::SpectralLegendreDiscretizer(), SpectralLegendreDiscretizer::timesX(), BoundaryConditionDiscretizationSpectralConform::timesX(), BoundaryConditionDiscretizationPenalty< MeshType, TypeOfDiscretization >::timesX(), SpectralLegendreDiscretizer::transposedTimesX(), BoundaryConditionDiscretizationSpectralConform::transposedTimesX(), and BoundaryConditionDiscretizationPenalty< MeshType, TypeOfDiscretization >::transposedTimesX().
| virtual ReferenceCounting<Problem> Problem::operator* | ( | const ConstReferenceCounting< ScalarFunctionBase > & | c | ) | const [pure virtual] |
"multiplies" the problem definition by a function
| c | the given coefficient |
Implemented in PDESystem, and VariationalProblem.
| virtual const BoundaryConditionSet& Problem::boundaryConditionSet | ( | const size_t & | i | ) | const [pure virtual] |
Access to the boundary condition set associated to the ith unknown
| i | ith unknown number |
Implemented in PDESystem, and VariationalProblem.
Referenced by BoundaryConditionSurfaceMeshAssociation::BoundaryConditionSurfaceMeshAssociation(), and BoundaryMeshAssociation::BoundaryMeshAssociation().
ConstReferenceCounting<Domain> Problem::__omega [private] |
domain of computation
Definition at line 47 of file Problem.hpp.
Referenced by domain(), and setDomain().
const Problem::Type Problem::__type [private] |
type of the problem
Definition at line 50 of file Problem.hpp.
Referenced by type(), and typeName().
1.5.6