ASMsxDmx::swapProjectionBasis: move to ASMstruct

now there are no differences between the classes so let's unify.
also a step in making functionality available for non-mixed ASMs,
although there is more work before that is supported.
This commit is contained in:
Arne Morten Kvarving committed 2023-09-08 08:25:30 +02:00
1 parent ee77610cb2
commit 0f93b98fce
6 files changed
+10 -20

No files matched your search

-7
View File
@@ -1126,13 +1126,6 @@ void ASMs2Dmx::getBoundaryNodes (int lIndex, IntVec& nodes, int basis,
}
void ASMs2Dmx::swapProjectionBasis ()
{
if (projB2)
std::swap(projB, projB2);
}
int ASMs2Dmx::getFirstItgElmNode () const
{
return std::accumulate(elem_size.begin(), elem_size.begin() + itgBasis-1, 0);
-3
View File
@@ -182,9 +182,6 @@ public:
virtual bool evalSolution(Matrix& sField, const IntegrandBase& integrand,
const RealArray* gpar, bool regular) const;
//! \brief Swap between main and alternative projection basis.
virtual void swapProjectionBasis();
//! \brief Checks if a separate projection basis is used for this patch.
virtual bool separateProjectionBasis() const;
-7
View File
@@ -1242,13 +1242,6 @@ void ASMs3Dmx::getBoundaryNodes (int lIndex, IntVec& nodes, int basis,
}
void ASMs3Dmx::swapProjectionBasis ()
{
if (projB2)
std::swap(projB, projB2);
}
int ASMs3Dmx::getFirstItgElmNode () const
{
return std::accumulate(elem_size.begin(), elem_size.begin() + itgBasis-1, 0);
-3
View File
@@ -180,9 +180,6 @@ public:
virtual bool evalSolution(Matrix& sField, const IntegrandBase& integrand,
const RealArray* gpar, bool regular) const;
//! \brief Swap between main and alternative projection basis.
virtual void swapProjectionBasis();
//! \brief Checks if a separate projection basis is used for this patch.
virtual bool separateProjectionBasis() const;
+7
View File
@@ -178,3 +178,10 @@ bool ASMstruct::diracPoint (Integrand& integr, GlobalIntegral& glInt,
return ok;
}
void ASMstruct::swapProjectionBasis ()
{
if (projB2)
std::swap(projB, projB2);
}
+3
View File
@@ -81,6 +81,9 @@ public:
//! \brief Checks if a separate projection basis is used for this patch.
virtual bool separateProjectionBasis() const;
//! \brief Swaps between the first and second projection basis.
virtual void swapProjectionBasis();
protected:
//! \brief Adds extraordinary nodes associated with a patch boundary.
//! \param[in] dim Dimension of the boundary