Commit 8ae82d7d authored by GILLES Sebastien's avatar GILLES Sebastien
Browse files

#1189 Fixes in code (just remove asserts...) and comments to remove the...

#1189 Fixes in code (just remove asserts...) and comments to remove the conditions put on unknown and test unknown lists.
parent f8b67045
......@@ -52,7 +52,6 @@ namespace MoReFEM
const auto& infos_at_quad_pt_list = elementary_data.GetInformationsAtQuadraturePointList();
const auto& ref_felt = elementary_data.GetRefFElt(GetNthUnknown(0));
const auto& test_ref_felt = elementary_data.GetTestRefFElt(GetNthTestUnknown(0));
......
......@@ -47,9 +47,11 @@ namespace MoReFEM
/*!
* \class doxygen_hide_test_unknown_list_param
*
* \param[in] test_unknown_list Same as \a unknown_list for test unknowns; order follows the same
* convention as \a unknown_list (meaning the third item for instance is the test function associated
* to the third unknown).
* \param[in] test_unknown_list Same as \a unknown_list for test unknowns; there are no implicit
* relationship expected between this one and \a unknown_list. Usually for most operators each
* test unknown is related to the solution unknown ranked at the same position, but it is really
* at the discretion of the operator developer, depending on its choice of ordering for both
* unknowns and test unknowns in constructor. However, the library itself doesn't expect anything.
*/
/*!
......
......@@ -70,6 +70,9 @@ namespace MoReFEM
* \brief Stores data related to a given quadrature point, such as the geometric and finite element shape
* function values.
*
* All unknowns (or test unknowns) are referenced in this object; it's up to the variational operator
* developer to know how unknowns and tests unknowns are structured.
*
*/
class InformationsAtQuadraturePoint final
{
......@@ -178,16 +181,20 @@ namespace MoReFEM
///@}
/*!
* \brief Specific data related to the unknown.
* \brief Specific data related to the unknowns (by opposition to test unknowns).
*
* If test unknown is the same, these data are also used for it.
*/
AtQuadPointNS::ForUnknown::unique_ptr for_unknown_ = nullptr;
/*!
* \brief Specific data related to the test unknown.
* \brief Specific data related to the test unknowns.
*
* Optional is not filled if test unknowns are the same as unknowns.
*
* Optional is not filled if test unknown is the same as unknown.
* There might be a different number of unknowns and test unknowns, and no ordering relationship
* is assumed: all these considerations are up to the developer of the variational operator
* (in the order in which he/she puts the unknowns and test unknowns in the constructor).
*/
MOREFEM_OPTIONAL<AtQuadPointNS::ForUnknown::unique_ptr> for_test_unknown_;
......
......@@ -159,7 +159,6 @@ namespace MoReFEM
{
const auto& ref_felt_space = GetRefLocalFEltSpace();
assert(unknown_storage.size() == test_unknown_storage.size());
assert(ref_felt_list_.empty());
assert(Nnode_col_ == 0u);
......@@ -192,8 +191,6 @@ namespace MoReFEM
Nnode_row_,
Ndof_row_,
MOREFEM_OPTIONAL_VALUE(test_ref_felt_list_));
assert(MOREFEM_OPTIONAL_VALUE(test_ref_felt_list_).size() == ref_felt_list_.size());
}
}
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment