POINT_MASS — single-node lumped translational mass ================================================== A diagonal 3 × 3 contribution to the global mass matrix at a single grid node. Translational-only (3 DOFs per node); no stiffness contribution. * **Spec:** ``ELEMENTS.POINT_MASS`` .. raw:: html Verified vs single-DOF spring-mass oscillator natural frequency Cross-vendor mapping -------------------- ========================== ============================== ============================================ Solver Element name Notes ========================== ============================== ============================================ femorph-solver ``ELEMENTS.POINT_MASS`` translational only; rotational inertia not modelled ANSYS Mechanical APDL ``MASS21`` KEYOPT(3)=2 → translational only (matches our model) NX / MSC Nastran ``CONM1`` / ``CONM2`` CONM2 = standard concentrated mass with inertia tensor Abaqus ``MASS`` scalar mass element LS-DYNA ``ELEMENT_MASS`` lumped translational mass on a node ========================== ============================== ============================================ Restrictions ------------ Use a different approach when: * **Rotational inertia** is needed (e.g., flywheels, eccentric masses with offset CG) — currently un-modelled. Workaround: attach the mass via a stiff BEAM2 stub from the rotation axis. * **Anisotropic mass** (different in each direction) — the scalar :math:`m\, \mathbf{I}` form is isotropic by construction; use multiple coupled springs + masses if directional inertia matters. Mass ---- The full element contribution to the global mass matrix is .. math:: \mathbf{M}^{\mathrm{loc}} = m\, \mathbf{I}_{3 \times 3}, acting only on the three translational DOFs of the host node; zero on all rotational DOFs (this kernel does not model rotational inertia). The diagonal structure makes assembly trivial — no Gauss quadrature, no shape-function evaluation. Stiffness --------- None. POINT_MASS is a mass-only kernel. Real constants -------------- * ``REAL[0]`` — :math:`m`, the lumped mass in kg. Verification cross-references ----------------------------- * :ref:`sphx_glr_gallery_elements_mass21_example_mass21.py` — spring + lumped mass single-DOF oscillator, :math:`\omega = \sqrt{k / m}`. Implementation: :mod:`femorph_solver.elements.point_mass`. References ---------- * Cook, R. D., Malkus, D. S., Plesha, M. E., Witt, R. J. (2002) *Concepts and Applications of Finite Element Analysis*, 4th ed., Wiley, §11.3 (lumped mass). * Bathe, K.-J. (2014) *Finite Element Procedures*, 2nd ed., §11.4.1 (concentrated-mass elements).