Femora logo
Femora

Fast Efficient Meta-modeling for OpenSees-based Resilience Analysis

Modular 3DOpenSees Meta-Modeling

An open-source Python product for composing soil, structure, interface, loading, and recorder systems into large 3D OpenSees models. Build headlessly, inspect while coding, and assemble complex resilience workflows with full control.

3D
Assembly-first Modeling
HPC
Partition-aware Workflows
OSS
Composable Open-source Core
Soil-Structure Interaction
Drag to orbit / scroll to zoom
Live mesh scene

This viewer is exported from the project VTK scene, so the website shows the actual SSI model instead of a synthetic hero animation.

Build Complex Models fromIndependent Expert Modules

Femora is designed so geotechnical, structural, and simulation experts can implement their own pieces independently and still assemble one coherent 3D OpenSees model.

Modular 3D Assembly

Compose reusable soil, topography, basin, foundation, pile, structure, and bridge-ready model parts into one assembled OpenSees system.

Research-grade Partitioning

Keep explicit control over domain decomposition so researchers can decide which regions, interfaces, or subsystems run on which cores.

Interfaces & Embedding

Model embedded piles, embedded beams, embedded nodes, and other coupling strategies needed for demanding soil-structure interaction workflows.

Wave-input Workflows

Generate DRM loads, consume H5DRM inputs, and compute transfer functions for site-response and wave-propagation studies when the workflow demands it.

In-Code Visualization

Inspect mesh parts, assembly sections, and final assembled meshes directly from scripts or notebooks while you build and debug the model.

Targeted Recording & Export

Attach recorders and postprocessing logic to the regions that matter, then export to OpenSees workflows with the control needed for large studies.

How FemoraActually Works

Femora is not just a mesher and not just a script wrapper. It is an assembly workflow for turning independently developed engineering modules into one inspectable 3D OpenSees model.

01

Build Independent Modules

Create reusable soil, structure, interface, loading, and recorder components with the manager that owns each concern.

02

Assemble One 3D Model

Combine independently authored pieces into one coherent OpenSees-ready assembly while keeping control over partition-aware workflows.

03

Inspect While Coding

Plot mesh parts, interfaces, assembly sections, and final meshes directly from Python or notebook cells as the model evolves.

04

Export and Study

Attach targeted recorders, run wave-input workflows when needed, and push the assembled model into larger analysis studies.

Workflow Logic

From expert-owned pieces to one coherent model

Geotechnical, structural, and simulation specialists can implement different parts independently. Femora gives those parts a shared assembly language so you can inspect the process, keep decomposition explicit, and scale from a simple study to a larger research workflow.

Inputs

Soil modules, structures, interfaces, loading, recorders, and partitioning choices.

Assembly

Assemble, inspect, refine, and coordinate mesh regions without collapsing everything into one script.

Output

OpenSees-ready workflows, targeted recording logic, screenshots, and reproducible research pipelines.

What You CanBuild With It

Femora is most useful when the model is too large, too modular, or too collaborative to live comfortably in one handwritten OpenSees script.

Site Response and Basin Models

Build layered soil domains, topography-aware regions, and basin-scale studies while preserving modular control over each part of the model.

Soil modulesTopographyRecorder regions

Soil-Structure Interaction

Assemble soil, foundations, piles, structures, and coupling interfaces into one 3D workflow that can still be inspected and refined during development.

StructuresFoundationsEmbedded strategies

Wave-input and DRM Workflows

Generate DRM loads, consume wave-input data, and compute transfer-function oriented workflows when site-response or input-motion studies require them.

DRM loadsH5DRM inputTransfer functions

Bridge-ready and Multi-system Assemblies

Compose multiple expert-owned subsystems into one partition-aware research model without flattening the workflow into an unmaintainable script.

Sub-assembliesCore decompositionTargeted recorders

Two PracticalWorkflows

Femora stays scriptable for supercomputing workflows while still letting you inspect the model as it is being assembled.

Headless Mode

Pure Python model construction for reproducible studies, HPC execution, automated exports, and large scripted model-generation pipelines.

Scriptable and reproducible workflows

Batch generation, export, and supercomputing workflows

Parametric studies, modular reuse, and AI-ready code generation

Python
import femora as fm
model = fm.MeshMaker()
# build materials, mesh parts, patterns, and assembly
model.assembler.Assemble()
Learn More

Interactive Inspection

Inspect mesh parts, assembly sections, interfaces, and final assembled meshes directly from Python or notebook cells without switching to a separate modeling product.

Plot individual mesh parts during model creation

Inspect assembly sections, interfaces, and the final assembled mesh

Use from Python scripts, screenshots, and Jupyter workflows

Python
import femora as fm
model = fm.MeshMaker()
mesh_part.plot()
model.assembler.plot(show_edges=True)
Learn More

ComprehensiveDocumentation

Use the documentation to learn the workflow, browse the API surface, and work through real examples. Use the Tools area when you want an interactive helper instead of a guide.

Need environment setup details or local build steps? Open Installation.

Ready to Get Started?

Install Femora with pip and start building modular OpenSees-ready 3D models in Python.

pip install femora
AI-Native Direction

Structured forFuture AI Workflows

Femora's modular, scriptable workflow is designed so future AI assistants can reason about model parts, assembly steps, interfaces, and recorder strategies instead of only generating disconnected scripts.

Model Generation

Translate high-level modeling intent into reusable Femora modules and code-first workflows.

Interactive Assistant

Help users understand assembly choices, interfaces, recorders, and decomposition decisions as the model grows.

Smart Optimization

Suggest cleaner partitioning, reusable modules, and better recording or postprocessing strategies for large studies.

Why This Matters

"As the library grows, the same modular structure that helps researchers build large 3D systems also gives AI a cleaner representation of the model, its parts, and the engineering intent behind them."

AI Response

"I found your soil module, structural module, embedded interface, and recorder setup. I can now help modify the assembly, inspect the mesh, or generate a new OpenSees-ready workflow."

Share Your Ideas