Skip to content

AnthonyPrst/ourocode

Repository files navigation

📐 Ourocode - Bibliothèque Python pour le calcul de structure selon les Eurocodes

License: Apache License 2.0

Tests Coverage


🔍 Description

Ourocode est une bibliothèque Python regroupant les formules normalisées issues des différentes parties des Eurocodes aux Annexes Nationales Française :

  • EN 1990 : Bases de calcul
  • EN 1991 : Actions sur les structures
  • EN 1993 : Calcul des structures en acier
  • EN 1995 : Calcul des structures en bois

Elle permet de construire un catalogue de fonctions réutilisables pour générer rapidement des notes de calcul personnalisées, intégrables dans des applications de vérification ou de génération de rapports.


🚀 Objectifs

  • Offrir une implémentation fiable et vérifiée des formules Eurocode.
  • Permettre une utilisation modulaire dans des interfaces No-Code, des scripts ou des applications.
  • Fournir une base open source transparente, adaptée aux ingénieurs, bureaux d’études, enseignants ou développeurs.

📦 Installation

pip install ourocode

Installez directement depuis le dépôt :

pip install git+https://github.com/AnthonyPrst/ourocode.git

✨ Fonctionnalités

  • Calculs normalisés : flexion, traction, cisaillement, flambement, assemblage EC5 et EC3, flèche…
  • Support des classes de résistance bois (C24, GL24h, etc.) et acier (S235, S355…)
  • Prise en compte des effets de feu (EN 1995-1-2)
  • Intégration avec handcalcs pour génération LaTeX des formules
  • Compatible avec le logiciel OUREA-NoCode
  • Organisé en modules clairs par norme et fonction (EN1990, EN1991, etc.)

🛠 Exemple d'utilisation

from ourocode.eurocode.EC5_Element_droit import Barre, Flexion

panne = Barre(b=100, h=200, section="Rectangulaire", classe="C24", cs=2, Hi=12, Hf=12)
panne_flexion = Flexion(lo=5000, coeflef=0.9, pos="Charge sur fibre comprimée")
latex_fmd, fmd = panne_flexion.f_m_d("Moyen terme", "Fondamentales")
latex_sigmamd, sigmamd = panne_flexion.sigma_m_d(20, axe="y")
latex_taux, taux = panne_flexion.taux_m_d()

✅ Tests & couverture

pytest --cov=. --cov-report html

Les tests couvrent les modules principaux.


🤝 Contribuer

Les contributions sont les bienvenues ! Pour proposer une amélioration ou corriger un bug n'hésité pas à fork le dépôt !


📄 Licence

Distribué sous licence Apache License 2.0.


👷 Auteur

Développé par Anthony PARISOT, ingénieur structure bois & développeur, dans le cadre du projet open source OUREA STRUCTURE.


⭐ Si vous trouvez ce projet utile...

N'hésitez pas à ⭐️ le repo GitHub pour le soutenir !

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •