Model-owned service for assigning nodal mass arrays.
Mass data lives on mesh parts before assembly and on the assembled mesh
after assembly. This manager provides convenience helpers that modify those
arrays without introducing separate mass objects or registries.
Attributes
_mesh_maker
instance-attribute
_events_subscribed
instance-attribute
_events_subscribed = False
_region_point_cache
instance-attribute
_region_point_cache: dict[int, ndarray] = {}
meshpart
instance-attribute
meshpart = _MeshPartMassHelper(self)
region
instance-attribute
region = _RegionMassHelper(self)
global_
instance-attribute
global_ = _GlobalMassHelper(self)
Methods:
register_events
register_events() -> None
unregister_events
unregister_events() -> None
_pad_mass
staticmethod
_pad_mass(vec: ArrayLike, ndf: int) -> np.ndarray
Return a vector of length FEMORA_MAX_NDF with zeros padded / truncated.
_combine
staticmethod
_combine(old: ndarray, new: ndarray, rule: str) -> np.ndarray
_handle_pre_assemble
_handle_pre_assemble(*_, **__)
Clear transient region caches before a fresh assembly.
clear
Clear manager caches and remove Mass arrays from the current model.
get_meshpart_mass_array
get_meshpart_mass_array(meshpart_name: str) -> np.ndarray
get_assembled_mass_array
get_assembled_mass_array() -> Optional[np.ndarray]