Claude-skill-registry abaqus-modal-analysis
Complete workflow for modal/frequency analysis - extract natural frequencies and mode shapes. Use for vibration analysis and resonance avoidance.
git clone https://github.com/majiayu000/claude-skill-registry
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/abaqus-modal-analysis" ~/.claude/skills/majiayu000-claude-skill-registry-abaqus-modal-analysis && rm -rf "$T"
skills/data/abaqus-modal-analysis/SKILL.mdAbaqus Modal Analysis Skill
Extract natural frequencies and mode shapes from a structure. Use for vibration analysis, resonance avoidance, and dynamic characterization.
When to Use This Skill
Route here when user mentions:
- "Natural frequency", "modal analysis", "vibration"
- "Resonance", "mode shapes", "eigenvalue"
- "How will it vibrate?", "avoid resonance at X Hz"
- "First mode frequency", "natural frequency of beam/plate"
Route elsewhere:
- Forced vibration response → use transient dynamic
- Frequency response function → use steady-state dynamics
- Static stress/deflection →
/abaqus-static-analysis - Impact/crash →
/abaqus-dynamic-analysis
Prerequisites
Before modal analysis:
- Geometry and mesh ready
- Material MUST have density defined (required for mass matrix)
- Boundary conditions define the modal boundary
- NO loads needed for eigenvalue extraction
Workflow: Modal Analysis
Step 1: Understand User's Goal
Ask if unclear:
- How many modes? First few (5-10) or all in frequency range?
- Boundary conditions? Fixed, pinned, free-free?
- Frequency range of interest? Motor at 60 Hz, etc.?
- What geometry? Beam, plate, bracket, assembly?
Step 2: Create Geometry
Route to
/abaqus-geometry for part creation.
Step 3: Define Material WITH DENSITY
Route to
/abaqus-material - density is essential.
Without density, Abaqus cannot compute the mass matrix and modal analysis will fail.
| Material | Density (tonne/mm^3) |
|---|---|
| Steel | 7.85e-9 |
| Aluminum | 2.7e-9 |
| Titanium | 4.5e-9 |
Step 4: Create Mesh
Route to
/abaqus-mesh for meshing.
Mesh quality affects mode shapes - finer mesh gives more accurate high-frequency modes.
Step 5: Apply Boundary Conditions
Route to
/abaqus-bc to define support type.
| Configuration | Expected Modes | Use Case |
|---|---|---|
| Free-free (no BCs) | 6 rigid body modes at ~0 Hz, then elastic | Test correlation |
| Cantilever (one end fixed) | First mode is bending | Mounted component |
| Simply supported | Bending, plate modes | Bridge-like structures |
| Fixed-fixed | Higher frequencies than cantilever | Both ends constrained |
Note: Free-free analysis gives 6 modes at ~0 Hz (rigid body translation/rotation). Real elastic modes start at mode 7.
Step 6: Create Frequency Step
Route to
/abaqus-step for FrequencyStep configuration.
Key decisions:
- Fixed count: Extract exactly N modes (numEigen=10)
- Frequency range: All modes between min and max Hz
- Shift-invert: Modes near target frequency (for high-frequency focus)
Step 7: Run and Extract
Route to
/abaqus-job to submit, then /abaqus-odb to read frequencies from result frames.
Key Parameters
| Parameter | Recommended | Notes |
|---|---|---|
| Eigensolver | LANCZOS | Best for most problems |
| numEigen | 10 | Start with first 10 modes |
| Normalization | DISPLACEMENT | Mode shapes max = 1 |
| Mesh size | Adequate for highest mode | Finer mesh for high frequencies |
Validation Checklist
After analysis, verify:
- Density defined in material
- BCs match intended support condition
- No loads applied (eigenvalue extraction ignores loads)
- Mesh adequate for highest mode of interest
- Frequencies reasonable for geometry/material
- Free-free: confirm 6 modes near 0 Hz
Analytical Comparison (Simple Geometries)
For cantilever beams, first mode can be verified analytically:
- f1 ~ (1.875^2 / 2piL^2) * sqrt(EI / rhoA)
Compare FEA result to analytical for validation.
Troubleshooting
| Problem | Likely Cause | Solution |
|---|---|---|
| "Material has no density" | Density not defined | Add density to material |
| Negative eigenvalue | Unconstrained/unstable | Check BCs or add soft springs |
| 6 zero-frequency modes | Free-free (expected) | Real modes start at mode 7 |
| Frequencies too high/low | Unit error | Verify mm-tonne-s-N-MPa units |
| Memory error | Too many modes/elements | Reduce numEigen or coarsen mesh |
Related Skills
- Must include density/abaqus-material
- Define modal boundary conditions/abaqus-bc
- FrequencyStep configuration/abaqus-step
- Extract frequencies and mode shapes/abaqus-odb
- Create geometry/abaqus-geometry
- Mesh affects mode accuracy/abaqus-mesh
Code Patterns
For API syntax and code examples, see: