106 |
|
|
107 |
MatrixType& __A; |
MatrixType& __A; |
108 |
|
|
109 |
BoundaryConditionFDMDiscretization<MeshType>& __bc; |
const BoundaryConditionFDMDiscretization<MeshType>& __bc; |
110 |
|
|
111 |
public: |
public: |
112 |
|
|
183 |
const size_t equationNumber, |
const size_t equationNumber, |
184 |
const size_t unknownNumber, |
const size_t unknownNumber, |
185 |
MatrixType& A, |
MatrixType& A, |
186 |
BoundaryConditionFDMDiscretization<MeshType>& bc) |
const BoundaryConditionFDMDiscretization<MeshType>& bc) |
187 |
:__alpha(alpha), |
:__alpha(alpha), |
188 |
__equationNumber(equationNumber), |
__equationNumber(equationNumber), |
189 |
__unknownNumber(unknownNumber), |
__unknownNumber(unknownNumber), |
219 |
|
|
220 |
VectorType& __z; |
VectorType& __z; |
221 |
|
|
222 |
BoundaryConditionFDMDiscretization& __bc; |
const BoundaryConditionFDMDiscretization& __bc; |
223 |
|
|
224 |
public: |
public: |
225 |
|
|
284 |
__GetDiagonalNaturalBoundaryConditions(const UserFunction& alpha, |
__GetDiagonalNaturalBoundaryConditions(const UserFunction& alpha, |
285 |
const size_t equationNumber, |
const size_t equationNumber, |
286 |
VectorType& z, |
VectorType& z, |
287 |
BoundaryConditionFDMDiscretization& bc) |
const BoundaryConditionFDMDiscretization& bc) |
288 |
: __alpha(alpha), |
: __alpha(alpha), |
289 |
__equationNumber(equationNumber), |
__equationNumber(equationNumber), |
290 |
__z(z), |
__z(z), |
318 |
|
|
319 |
VectorType& __b; |
VectorType& __b; |
320 |
|
|
321 |
BoundaryConditionFDMDiscretization<MeshType>& __bc; |
const BoundaryConditionFDMDiscretization<MeshType>& __bc; |
322 |
|
|
323 |
public: |
public: |
324 |
|
|
381 |
__SetVariationalBoundaryConditionsFV(const UserFunction& g, |
__SetVariationalBoundaryConditionsFV(const UserFunction& g, |
382 |
const size_t equationNumber, |
const size_t equationNumber, |
383 |
VectorType& b, |
VectorType& b, |
384 |
BoundaryConditionFDMDiscretization& bc) |
const BoundaryConditionFDMDiscretization& bc) |
385 |
: __g(g), |
: __g(g), |
386 |
__equationNumber(equationNumber), |
__equationNumber(equationNumber), |
387 |
__b(b), |
__b(b), |
556 |
|
|
557 |
template <typename VectorType> |
template <typename VectorType> |
558 |
static void |
static void |
559 |
__StandardGetDiagonalVariationalBorderBilinearOperator(BoundaryConditionSurfaceMeshAssociation& __bcMeshAssociation, |
__StandardGetDiagonalVariationalBorderBilinearOperator(const BoundaryConditionSurfaceMeshAssociation& __bcMeshAssociation, |
560 |
BoundaryConditionFDMDiscretization<MeshType>& __bc, |
const BoundaryConditionFDMDiscretization<MeshType>& __bc, |
561 |
VectorType& z) |
VectorType& z) |
562 |
{ |
{ |
563 |
for (BoundaryConditionSurfaceMeshAssociation |
for (BoundaryConditionSurfaceMeshAssociation |
564 |
::BilinearBorderOperatorMeshAssociation |
::BilinearBorderOperatorMeshAssociation |
565 |
::iterator i = __bcMeshAssociation.beginOfBilinear(); |
::const_iterator i = __bcMeshAssociation.beginOfBilinear(); |
566 |
i != __bcMeshAssociation.endOfBilinear(); ++i) { |
i != __bcMeshAssociation.endOfBilinear(); ++i) { |
567 |
|
|
568 |
switch ((*(*i).first).type()) { |
switch ((*(*i).first).type()) { |
591 |
|
|
592 |
template <typename MatrixType> |
template <typename MatrixType> |
593 |
static void |
static void |
594 |
__StandardVariationalBorderBilinearOperator(BoundaryConditionSurfaceMeshAssociation& __bcMeshAssociation, |
__StandardVariationalBorderBilinearOperator(const BoundaryConditionSurfaceMeshAssociation& __bcMeshAssociation, |
595 |
BoundaryConditionFDMDiscretization<MeshType>& __bc, |
const BoundaryConditionFDMDiscretization<MeshType>& __bc, |
596 |
MatrixType& A) |
MatrixType& A) |
597 |
{ |
{ |
598 |
for (BoundaryConditionSurfaceMeshAssociation |
for (BoundaryConditionSurfaceMeshAssociation |
599 |
::BilinearBorderOperatorMeshAssociation |
::BilinearBorderOperatorMeshAssociation |
600 |
::iterator i = __bcMeshAssociation.beginOfBilinear(); |
::const_iterator i = __bcMeshAssociation.beginOfBilinear(); |
601 |
i != __bcMeshAssociation.endOfBilinear(); ++i) { |
i != __bcMeshAssociation.endOfBilinear(); ++i) { |
602 |
|
|
603 |
switch ((*(*i).first).type()) { |
switch ((*(*i).first).type()) { |
628 |
|
|
629 |
template <typename VectorType> |
template <typename VectorType> |
630 |
static void |
static void |
631 |
__StandardVariationalBorderLinearOperator(BoundaryConditionSurfaceMeshAssociation& __bcMeshAssociation, |
__StandardVariationalBorderLinearOperator(const BoundaryConditionSurfaceMeshAssociation& __bcMeshAssociation, |
632 |
BoundaryConditionFDMDiscretization<MeshType>& __bc, |
const BoundaryConditionFDMDiscretization<MeshType>& __bc, |
633 |
VectorType& b) |
VectorType& b) |
634 |
{ |
{ |
635 |
for (BoundaryConditionSurfaceMeshAssociation |
for (BoundaryConditionSurfaceMeshAssociation |
636 |
::LinearBorderOperatorMeshAssociation |
::LinearBorderOperatorMeshAssociation |
637 |
::iterator i = __bcMeshAssociation.beginOfLinear(); |
::const_iterator i = __bcMeshAssociation.beginOfLinear(); |
638 |
i != __bcMeshAssociation.endOfLinear(); ++i) { |
i != __bcMeshAssociation.endOfLinear(); ++i) { |
639 |
|
|
640 |
switch ((*(*i).first).type()) { |
switch ((*(*i).first).type()) { |