H5DRM Pattern
The H5DRM pattern implements the Domain Reduction Method (DRM) using the H5DRM data format for seismic analysis.
Overview
The H5DRM pattern is used to apply seismic forces and displacements to a finite element model using data stored in the H5DRM format. It supports coordinate transformations and scaling for flexible integration with different models.
Parameters
The following table describes the parameters for the H5DRM pattern:
Parameter |
Type |
Description |
---|---|---|
filepath |
str |
Path to the H5DRM dataset (required). |
factor |
float |
Scale factor for DRM forces and displacements (required). |
crd_scale |
float |
Scale factor for dataset coordinates (required). |
distance_tolerance |
float |
Tolerance for DRM point to FE mesh matching (required). |
do_coordinate_transformation |
int |
Whether to apply coordinate transformation (0/1, required). |
transform_matrix |
list[float] |
3x3 transformation matrix [T00, T01, T02, T10, T11, T12, T20, T21, T22] (required). |
origin |
list[float] |
Origin location after transformation [x00, x01, x02] (required). |
Usage Example
from femora.components.Pattern.patternBase import PatternManager
# Get the pattern manager instance
pattern_manager = PatternManager()
# Create an H5DRM pattern
h5drm_pattern = pattern_manager.create_pattern(
'h5drm',
filepath='path/to/h5drm/file',
factor=1.0,
crd_scale=1.0,
distance_tolerance=0.01,
do_coordinate_transformation=1,
transform_matrix=[1.0, 0.0, 0.0, 0.0, 1.0, 0.0, 0.0, 0.0, 1.0],
origin=[0.0, 0.0, 0.0]
)