Español · English
Modelos de datos estructurales (material, sección, esfuerzos) en Pydantic v2, y dos ayudas de rigidez de barra.
StructuralMaterial,FrameSectioneInternalForces: tres modelos validados, con unidades SI en el nombre de cada campo y sin campos desconocidos.- JSON Schema de los modelos, para generar tipos en otros lenguajes (hay un ejemplo que lo convierte a TypeScript).
- Matriz de rigidez de una viga acartelada o con cartelas (EI(x) a trozos) y rigidez condensada de una viga con nudos semirrígidos.
pip install git+https://github.com/jmurgass99/loadpath.gitfrom loadpath import StructuralMaterial
acero = StructuralMaterial(
name="S355", material_type="steel",
E_MPa=210_000, poisson=0.3, density_kg_m3=7850, Fy_MPa=355, Fu_MPa=490,
)
print(acero.model_json_schema()["properties"].keys())
StructuralMaterial(name="X", material_type="steel", E_MPa=-1, poisson=0.3, density_kg_m3=7850)
# pydantic.ValidationError (E_MPa debe ser positivo)Más casos en examples/.
- No incluye catálogo de perfiles ni de materiales: valida lo que recibe, no lo rellena.
- No hace comprobaciones de norma (resistencias, pandeo, clasificación de secciones).
- No ensambla ni resuelve estructuras:
feada matrices de elemento. FrameSectionguarda propiedades, no geometría, y no distingue secciones de clase 4.
El detalle está en docs/LIMITACIONES.md.
pip install -e ".[test]"
pytest -qMIT. Ver LICENSE. Autor: Jesús Murgas.