diff --git a/assets/dynamic/mesh/core2.msh b/assets/dynamic/mesh/core_hires.msh similarity index 100% rename from assets/dynamic/mesh/core2.msh rename to assets/dynamic/mesh/core_hires.msh diff --git a/src/poly/solver/public/polySolver.h b/src/poly/solver/public/polySolver.h index 738bbe1..952ffe8 100644 --- a/src/poly/solver/public/polySolver.h +++ b/src/poly/solver/public/polySolver.h @@ -45,10 +45,10 @@ struct solverBundle { }; struct formBundle { - std::unique_ptr M; - std::unique_ptr Q; - std::unique_ptr D; - std::unique_ptr f; + std::unique_ptr M; //<-- M ∫∇ψ^θ·N^φ dV + std::unique_ptr Q; //<-- Q ∫ψ^φ·∇N^θ dV + std::unique_ptr D; //<-- D ∫ψ^φ·N^φ dV + std::unique_ptr f; //<-- f(θ) ∫ψ^θ·θ^n dV }; class PolySolver final{ @@ -96,7 +96,7 @@ private: // Private methods * * Create the block offsets. These define the start of each block in the combined vector. * Block offsets will be [0, thetaDofs, thetaDofs + phiDofs]. - * The interpretation of this is that each block tells the operator where in the flattned (1D) vector + * The interpretation of this is that each block tells the operator where in the flattened (1D) vector * the degrees of freedom or coefficients for that free parameter start and end. I.e. * we know that in any flattened vector will have a size thetaDofs + phiDofs. The theta dofs will span * from blockOffsets[0] -> blockOffsets[1] and the phiDofs will span from blockOffsets[1] -> blockOffsets[2]. @@ -118,10 +118,7 @@ private: // Private methods * @breif Build the individual forms for the block operator (M, Q, D, and f) * * @param blockOffsets The offsets for the blocks in the operator - * @param Mform The mixed bilinear form for the mass matrix - * @param Qform The mixed bilinear form for the gradient matrix - * @param Dform The bilinear form for the divergence matrix - * @param fform The nonlinear form for the source term + * @return forms The forms for the block operator * * @note These forms are build exactly how they are defined in the derivation. This means that Mform -> M not -M and Qform -> Q not -Q. * @@ -152,7 +149,7 @@ private: // Private methods * \f] * * @note MFEM’s MixedVectorWeakDivergenceIntegrator implements - * \f$ -\nabla\!\cdot \f$, so we supply a –1 coefficient to make + * \f$ -\nabla\!\cdot \f$ so we supply a –1 coefficient to make * `Mform` represent the +M from the derivation. The single negation * in `PolytropeOperator` then restores the final block sign. * @@ -183,6 +180,6 @@ private: // Private methods void LoadSolverUserParams(double &newtonRelTol, double &newtonAbsTol, int &newtonMaxIter, int &newtonPrintLevel, double &gmresRelTol, double &gmresAbsTol, int &gmresMaxIter, int &gmresPrintLevel) const; - void GetDofCoordinates(mfem::FiniteElementSpace &fes, const std::string& filename) const; + static void GetDofCoordinates(const mfem::FiniteElementSpace &fes, const std::string& filename); }; \ No newline at end of file