Changed: Make SIMoptions::parseProjectionMethod public.
Added: Argument iComp to return the projection of only a specified component.
This commit is contained in:
@@ -1763,13 +1763,17 @@ bool SIMbase::extractPatchSolution (IntegrandBase* problem,
|
||||
|
||||
|
||||
bool SIMbase::project (Vector& ssol, const Vector& psol,
|
||||
SIMoptions::ProjectionMethod pMethod) const
|
||||
SIMoptions::ProjectionMethod pMethod, size_t iComp) const
|
||||
{
|
||||
Matrix stmp;
|
||||
if (!this->project(stmp,psol,pMethod))
|
||||
return false;
|
||||
|
||||
ssol = stmp;
|
||||
if (iComp > 0)
|
||||
ssol = stmp.getRow(iComp);
|
||||
else
|
||||
ssol = stmp;
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@@ -445,10 +445,12 @@ public:
|
||||
//! \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
|
||||
//! \param[in] iComp One-based index of the component to return (0 = all)
|
||||
//!
|
||||
//! \details Convenience overload, for stationary problems only.
|
||||
bool project(Vector& ssol, const Vector& psol,
|
||||
SIMoptions::ProjectionMethod pMethod = SIMoptions::GLOBAL) const;
|
||||
SIMoptions::ProjectionMethod pMethod = SIMoptions::GLOBAL,
|
||||
size_t iComp = 0) const;
|
||||
|
||||
//! \brief Projects the analytical secondary solution, if any.
|
||||
//! \param[out] ssol Vector of control point values of the secondary solution
|
||||
|
||||
@@ -65,7 +65,6 @@ public:
|
||||
//! \brief Prints out the simulation options to the given stream.
|
||||
utl::LogStream& print(utl::LogStream& os, bool addBlankLine = false) const;
|
||||
|
||||
private:
|
||||
//! \brief Parses a projection method XML-tag.
|
||||
bool parseProjectionMethod(const char* ptype, int version = 1);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user