ourocode 1.11.3__tar.gz → 2.1.2__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (127) hide show
  1. {ourocode-1.11.3/ourocode.egg-info → ourocode-2.1.2}/PKG-INFO +6 -5
  2. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/core/combinaison.py +35 -0
  3. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/core/model_generator.py +882 -0
  4. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/core/objet.py +55 -0
  5. ourocode-2.1.2/ourocode/eurocode/core/renderer.py +598 -0
  6. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec1/exploitation.py +4 -4
  7. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec1/neige.py +2 -2
  8. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec1/vent.py +2 -2
  9. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec3/assemblage/platine.py +1 -1
  10. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec3/assemblage/soudure.py +1 -1
  11. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec3/assemblage/tige.py +1 -1
  12. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec3/element_droit/cisaillement.py +1 -1
  13. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec3/element_droit/compression.py +1 -1
  14. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec3/element_droit/flexion.py +1 -1
  15. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec3/element_droit/plat.py +1 -1
  16. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec3/element_droit/traction.py +1 -1
  17. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec3/feu.py +2 -2
  18. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec5/__init__.py +3 -0
  19. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec5/assemblage/agrafe.py +1 -1
  20. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec5/assemblage/assemblage.py +1 -1
  21. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec5/assemblage/boulon.py +1 -1
  22. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec5/assemblage/broche.py +1 -1
  23. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec5/assemblage/embrevement.py +1 -1
  24. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec5/assemblage/pointe.py +1 -1
  25. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec5/assemblage/tirefond.py +1 -1
  26. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec5/cvt.py +2 -2
  27. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec5/element_droit/__init__.py +2 -0
  28. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec5/element_droit/barre.py +1 -1
  29. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec5/element_droit/cisaillement.py +1 -1
  30. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec5/element_droit/compression.py +23 -16
  31. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec5/element_droit/flexion.py +1 -1
  32. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec5/element_droit/traction.py +1 -1
  33. ourocode-2.1.2/ourocode/eurocode/ec5/element_droit/verification_EC5.py +780 -0
  34. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec5/feu/cisaillement_feu.py +5 -1
  35. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec5/feu/compression_feu.py +6 -1
  36. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec5/feu/feu.py +1 -1
  37. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec5/feu/flexion_feu.py +6 -1
  38. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec5/feu/traction_feu.py +5 -2
  39. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec8/sismique.py +2 -2
  40. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/mixins/math_utils.py +28 -0
  41. {ourocode-1.11.3 → ourocode-2.1.2/ourocode.egg-info}/PKG-INFO +6 -5
  42. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode.egg-info/SOURCES.txt +5 -1
  43. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode.egg-info/requires.txt +3 -5
  44. {ourocode-1.11.3 → ourocode-2.1.2}/pyproject.toml +6 -6
  45. {ourocode-1.11.3 → ourocode-2.1.2}/tests/test_EC5_Element_droit.py +1 -1
  46. {ourocode-1.11.3 → ourocode-2.1.2}/tests/test_EC5_Feu.py +2 -2
  47. ourocode-2.1.2/tests/test_EC5_Verification.py +314 -0
  48. {ourocode-1.11.3 → ourocode-2.1.2}/tests/test_EC8_Sismique.py +1 -1
  49. ourocode-2.1.2/tests/test_model_generator.py +280 -0
  50. {ourocode-1.11.3 → ourocode-2.1.2}/LICENSE +0 -0
  51. {ourocode-1.11.3 → ourocode-2.1.2}/MANIFEST.in +0 -0
  52. {ourocode-1.11.3 → ourocode-2.1.2}/README.md +0 -0
  53. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/__init__.py +0 -0
  54. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/__version__.py +0 -0
  55. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/caracteristique_meca_acier.csv +0 -0
  56. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/caracteristique_meca_beton.csv +0 -0
  57. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/caracteristique_meca_bois.csv +0 -0
  58. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/caracteristique_meca_panel.csv +0 -0
  59. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/carte_action_region.csv +0 -0
  60. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/coeff_psy.csv +0 -0
  61. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/exploitation.csv +0 -0
  62. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/gammaM.csv +0 -0
  63. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/kdef.csv +0 -0
  64. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/kfi.csv +0 -0
  65. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/kmod.csv +0 -0
  66. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/limite_fleche.csv +0 -0
  67. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/qualite_acier.csv +0 -0
  68. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/screenshot/C90_def.png +0 -0
  69. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/screenshot/CNC2M_4.3.3_tab15.png +0 -0
  70. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/screenshot/CNC2M_4.3.3_tab16.png +0 -0
  71. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/screenshot/EN1993-1-8_fig6_11.png +0 -0
  72. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/screenshot/Kv_def.png +0 -0
  73. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/screenshot/sign_convention.png +0 -0
  74. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/section_boulon.csv +0 -0
  75. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/sismique/categorie_importance.csv +0 -0
  76. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/sismique/categorie_importance_ns.csv +0 -0
  77. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/sismique/classe_sol.csv +0 -0
  78. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/sismique/spectre_eleastique_h_type1.csv +0 -0
  79. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/sismique/spectre_eleastique_h_type2.csv +0 -0
  80. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/vent/vent_Cp_toiture_isolee_1_versant.csv +0 -0
  81. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/vent/vent_Cp_toiture_isolee_1_versant.png +0 -0
  82. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/vent/vent_Cp_toiture_isolee_2_versants.csv +0 -0
  83. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/vent/vent_Cp_toiture_isolee_2_versants.png +0 -0
  84. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/vent/vent_Cpe_mur_verticaux.csv +0 -0
  85. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/vent/vent_Cpe_mur_verticaux.png +0 -0
  86. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/vent/vent_Cpe_toiture_1_versant.png +0 -0
  87. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/vent/vent_Cpe_toiture_1_versant_0_degres.csv +0 -0
  88. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/vent/vent_Cpe_toiture_1_versant_180_degres.csv +0 -0
  89. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/vent/vent_Cpe_toiture_1_versant_90_degres.csv +0 -0
  90. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/vent/vent_Cpe_toiture_2_versants.png +0 -0
  91. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/vent/vent_Cpe_toiture_2_versants_0_degres.csv +0 -0
  92. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/vent/vent_Cpe_toiture_2_versants_90_degres.csv +0 -0
  93. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/vent/vent_Cpe_toiture_terrasse.csv +0 -0
  94. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/vent/vent_Cpe_toiture_terrasse.png +0 -0
  95. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/data/vent/vent_Ffr.png +0 -0
  96. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/__init__.py +0 -0
  97. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/core/__init__.py +0 -0
  98. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/core/batiment.py +0 -0
  99. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/core/model_result.py +0 -0
  100. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/core/projet.py +0 -0
  101. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec1/__init__.py +0 -0
  102. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec3/__init__.py +0 -0
  103. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec3/assemblage/__init__.py +0 -0
  104. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec3/element_droit/__init__.py +0 -0
  105. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec5/assemblage/__init__.py +0 -0
  106. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec5/blc.py +0 -0
  107. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec5/feu/__init__.py +0 -0
  108. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/ec8/__init__.py +0 -0
  109. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/mixins/__init__.py +0 -0
  110. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/mixins/data_loader.py +0 -0
  111. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/mixins/serialization.py +0 -0
  112. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode/eurocode/mixins/synthese.py +0 -0
  113. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode.egg-info/dependency_links.txt +0 -0
  114. {ourocode-1.11.3 → ourocode-2.1.2}/ourocode.egg-info/top_level.txt +0 -0
  115. {ourocode-1.11.3 → ourocode-2.1.2}/setup.cfg +0 -0
  116. {ourocode-1.11.3 → ourocode-2.1.2}/tests/test_A0_Projet.py +0 -0
  117. {ourocode-1.11.3 → ourocode-2.1.2}/tests/test_EC0_Combinaison.py +0 -0
  118. {ourocode-1.11.3 → ourocode-2.1.2}/tests/test_EC1_Exploitation.py +0 -0
  119. {ourocode-1.11.3 → ourocode-2.1.2}/tests/test_EC1_Neige.py +0 -0
  120. {ourocode-1.11.3 → ourocode-2.1.2}/tests/test_EC3_Assemblage.py +0 -0
  121. {ourocode-1.11.3 → ourocode-2.1.2}/tests/test_EC3_Element_droit.py +0 -0
  122. {ourocode-1.11.3 → ourocode-2.1.2}/tests/test_EC3_Feu.py +0 -0
  123. {ourocode-1.11.3 → ourocode-2.1.2}/tests/test_EC3_Platine.py +0 -0
  124. {ourocode-1.11.3 → ourocode-2.1.2}/tests/test_EC5_Assemblage.py +0 -0
  125. {ourocode-1.11.3 → ourocode-2.1.2}/tests/test_EC5_BLC.py +0 -0
  126. {ourocode-1.11.3 → ourocode-2.1.2}/tests/test_EC5_CVT.py +0 -0
  127. {ourocode-1.11.3 → ourocode-2.1.2}/tests/test_EC5_Embrevement.py +0 -0
@@ -1,24 +1,25 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ourocode
3
- Version: 1.11.3
3
+ Version: 2.1.2
4
4
  Summary: Ceci est un catalogue de fonction permettant une utilisation rapide pour la réalisation de note de calcul personnalisée.
5
5
  Author-email: Anthony PARISOT <contact@ourea-structure.fr>
6
6
  License-Expression: Apache-2.0
7
7
  Project-URL: Homepage, https://github.com/AnthonyPrst/ourocode
8
8
  Classifier: Programming Language :: Python :: 3.12
9
+ Classifier: Programming Language :: Python :: 3.13
10
+ Classifier: Programming Language :: Python :: 3.14
9
11
  Classifier: Operating System :: OS Independent
10
12
  Requires-Python: >=3.12
11
13
  Description-Content-Type: text/markdown
12
14
  License-File: LICENSE
13
- Requires-Dist: handcalcs
14
15
  Requires-Dist: forallpeople
15
16
  Requires-Dist: pandas
16
17
  Requires-Dist: Pillow
18
+ Requires-Dist: matplotlib
19
+ Requires-Dist: pyvista[all,trame]
20
+ Requires-Dist: PyNiteFEA
17
21
  Provides-Extra: gui
18
22
  Requires-Dist: PySide6; extra == "gui"
19
- Provides-Extra: mef
20
- Requires-Dist: PyNiteFEA; extra == "mef"
21
- Requires-Dist: pyvista[all,trame]; extra == "mef"
22
23
  Provides-Extra: full
23
24
  Requires-Dist: ourocode[gui,mef]; extra == "full"
24
25
  Provides-Extra: dev
@@ -1804,6 +1804,41 @@ class Combinaison(Projet):
1804
1804
  return dict_loads
1805
1805
 
1806
1806
 
1807
+ def type_combi(self, name_combi: str) -> str:
1808
+ """Retourne le type de combinaison EC0 (``"Fondamentales"`` ou ``"Accidentelles"``).
1809
+
1810
+ Déduit le type à partir du préfixe du nom de la combinaison tel que
1811
+ généré par :class:`Combinaison` :
1812
+
1813
+ - ``"ELU_STR_ACC ..."`` -> ``"Accidentelles"`` (EC0 §6.4.3.3)
1814
+ - ``"ELU_STR ..."`` ou tout autre ELU -> ``"Fondamentales"`` (EC0 §6.4.3.2)
1815
+
1816
+ Cette information sert notamment à déterminer le coefficient partiel
1817
+ ``γM`` pour les vérifications Eurocode (EC5 §2.4.1, EC3 §6.1…) selon
1818
+ que la situation est durable/transitoire ou accidentelle.
1819
+
1820
+ Args:
1821
+ name_combi (str): Nom de la combinaison à analyser
1822
+ (ex. ``"ELU_STR 1.35G + 1.5Q"`` ou ``"ELU_STR_ACC G + Ae"``).
1823
+
1824
+ Returns:
1825
+ str: ``"Accidentelles"`` si le nom débute par ``ELU_STR_ACC``,
1826
+ sinon ``"Fondamentales"``.
1827
+
1828
+ Raises:
1829
+ ValueError: Si ``name_combi`` ne correspond pas à une combinaison
1830
+ ELU reconnue (ni ``ELU_STR`` ni ``ELU_STR_ACC``).
1831
+ """
1832
+ if name_combi.startswith("ELU_STR_ACC"):
1833
+ return "Accidentelles"
1834
+ if name_combi.startswith("ELU_STR"):
1835
+ return "Fondamentales"
1836
+ raise ValueError(
1837
+ f"La combinaison '{name_combi}' n'est pas une combinaison ELU "
1838
+ f"(préfixe attendu : 'ELU_STR' ou 'ELU_STR_ACC')."
1839
+ )
1840
+
1841
+
1807
1842
  def min_type_load(self, name_combi: str) -> str:
1808
1843
  """Retourne la classe de durée de chargement la plus courte présente dans une combinaison.
1809
1844