Added: Overloaded project method accepting a Vector as output argument
This commit is contained in:
parent
a76086e342
commit
ebca327675
@ -1663,6 +1663,18 @@ bool SIMbase::extractPatchSolution (IntegrandBase* problem,
|
||||
}
|
||||
|
||||
|
||||
bool SIMbase::project (Vector& ssol, const Vector& psol,
|
||||
SIMoptions::ProjectionMethod pMethod) const
|
||||
{
|
||||
Matrix stmp;
|
||||
if (!this->project(stmp,psol,pMethod))
|
||||
return false;
|
||||
|
||||
ssol = stmp;
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
size_t SIMbase::extractPatchSolution (const Vector& sol, Vector& vec,
|
||||
int pindx, unsigned char nndof,
|
||||
unsigned char basis) const
|
||||
|
@ -28,7 +28,6 @@ class AnaSol;
|
||||
class SAM;
|
||||
class AlgEqSystem;
|
||||
class LinSolParams;
|
||||
class TimeStep;
|
||||
class SystemVector;
|
||||
class Vec4;
|
||||
|
||||
@ -411,6 +410,14 @@ public:
|
||||
bool project(Matrix& ssol, const Vector& psol,
|
||||
SIMoptions::ProjectionMethod pMethod = SIMoptions::GLOBAL,
|
||||
const TimeDomain& time = TimeDomain()) const;
|
||||
//! \brief Projects the secondary solution associated with a primary solution.
|
||||
//! \param[out] ssol Vector of control point values of the secondary solution
|
||||
//! \param[in] psol Vector of control point values of the primary solution
|
||||
//! \param[in] pMethod Projection method to use
|
||||
//!
|
||||
//! \details Convenience overload, for stationary problems only.
|
||||
bool project(Vector& ssol, const Vector& psol,
|
||||
SIMoptions::ProjectionMethod pMethod = SIMoptions::GLOBAL) const;
|
||||
|
||||
//! \brief Projects a scalar function onto the specified basis.
|
||||
//! \param[out] values Resulting control point values
|
||||
|
@ -51,6 +51,7 @@ public:
|
||||
//! \param[out] X The Cartesian coordinates of the point
|
||||
//! \param[out] param The parameters of the point in the knot-span domain
|
||||
//! \param[in] patch 1-based patch index containing the evaluation point
|
||||
//! \param[in] global If \e true, return global number, otherwise patch-local
|
||||
//! \return Patch-local or global node number of node that matches the point
|
||||
int evalPoint(const double* xi, Vec3& X, double* param = nullptr,
|
||||
int patch = 1, bool global = false) const;
|
||||
|
Loading…
Reference in New Issue
Block a user