ourocode 1.7.2__tar.gz → 1.7.3__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 (72) hide show
  1. {ourocode-1.7.2/ourocode.egg-info → ourocode-1.7.3}/PKG-INFO +1 -1
  2. ourocode-1.7.3/ourocode/__version__.py +1 -0
  3. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/eurocode/EC1_Vent.py +4 -2
  4. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/eurocode/EC5_CVT.py +15 -9
  5. {ourocode-1.7.2 → ourocode-1.7.3/ourocode.egg-info}/PKG-INFO +1 -1
  6. {ourocode-1.7.2 → ourocode-1.7.3}/pyproject.toml +1 -1
  7. ourocode-1.7.2/ourocode/__version__.py +0 -1
  8. {ourocode-1.7.2 → ourocode-1.7.3}/LICENSE +0 -0
  9. {ourocode-1.7.2 → ourocode-1.7.3}/MANIFEST.in +0 -0
  10. {ourocode-1.7.2 → ourocode-1.7.3}/README.md +0 -0
  11. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/__init__.py +0 -0
  12. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/caracteristique_meca_acier.csv +0 -0
  13. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/caracteristique_meca_bois.csv +0 -0
  14. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/caracteristique_meca_panel.csv +0 -0
  15. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/carte_action_region.csv +0 -0
  16. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/coeff_psy.csv +0 -0
  17. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/exploitation.csv +0 -0
  18. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/gammaM.csv +0 -0
  19. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/kdef.csv +0 -0
  20. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/kfi.csv +0 -0
  21. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/kmod.csv +0 -0
  22. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/limite_fleche.csv +0 -0
  23. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/qualite_acier.csv +0 -0
  24. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/screenshot/C90_def.png +0 -0
  25. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/screenshot/Kv_def.png +0 -0
  26. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/screenshot/sign_convention.png +0 -0
  27. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/section_boulon.csv +0 -0
  28. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/sismique/categorie_importance.csv +0 -0
  29. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/sismique/categorie_importance_ns.csv +0 -0
  30. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/sismique/classe_sol.csv +0 -0
  31. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/sismique/spectre_eleastique_h_type1.csv +0 -0
  32. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/sismique/spectre_eleastique_h_type2.csv +0 -0
  33. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/vent/vent_Cp_toiture_isolee_1_versant.csv +0 -0
  34. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/vent/vent_Cp_toiture_isolee_1_versant.png +0 -0
  35. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/vent/vent_Cp_toiture_isolee_2_versants.csv +0 -0
  36. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/vent/vent_Cp_toiture_isolee_2_versants.png +0 -0
  37. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/vent/vent_Cpe_mur_verticaux.csv +0 -0
  38. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/vent/vent_Cpe_mur_verticaux.png +0 -0
  39. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/vent/vent_Cpe_toiture_1_versant.png +0 -0
  40. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/vent/vent_Cpe_toiture_1_versant_0_degres.csv +0 -0
  41. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/vent/vent_Cpe_toiture_1_versant_180_degres.csv +0 -0
  42. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/vent/vent_Cpe_toiture_1_versant_90_degres.csv +0 -0
  43. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/vent/vent_Cpe_toiture_2_versants.png +0 -0
  44. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/vent/vent_Cpe_toiture_2_versants_0_degres.csv +0 -0
  45. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/vent/vent_Cpe_toiture_2_versants_90_degres.csv +0 -0
  46. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/vent/vent_Cpe_toiture_terrasse.csv +0 -0
  47. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/vent/vent_Cpe_toiture_terrasse.png +0 -0
  48. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/data/vent/vent_Ffr.png +0 -0
  49. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/eurocode/A0_Projet.py +0 -0
  50. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/eurocode/EC0_Combinaison.py +0 -0
  51. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/eurocode/EC1_Neige.py +0 -0
  52. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/eurocode/EC3_Assemblage.py +0 -0
  53. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/eurocode/EC3_Element_droit.py +0 -0
  54. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/eurocode/EC5_Assemblage.py +0 -0
  55. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/eurocode/EC5_Element_droit.py +0 -0
  56. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/eurocode/EC5_Feu.py +0 -0
  57. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/eurocode/EC8_Sismique.py +0 -0
  58. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/eurocode/__init__.py +0 -0
  59. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode/eurocode/objet.py +0 -0
  60. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode.egg-info/SOURCES.txt +0 -0
  61. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode.egg-info/dependency_links.txt +0 -0
  62. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode.egg-info/requires.txt +0 -0
  63. {ourocode-1.7.2 → ourocode-1.7.3}/ourocode.egg-info/top_level.txt +0 -0
  64. {ourocode-1.7.2 → ourocode-1.7.3}/setup.cfg +0 -0
  65. {ourocode-1.7.2 → ourocode-1.7.3}/tests/test_A0_Projet.py +0 -0
  66. {ourocode-1.7.2 → ourocode-1.7.3}/tests/test_EC0_Combinaison.py +0 -0
  67. {ourocode-1.7.2 → ourocode-1.7.3}/tests/test_EC1_Neige.py +0 -0
  68. {ourocode-1.7.2 → ourocode-1.7.3}/tests/test_EC5_Assemblage.py +0 -0
  69. {ourocode-1.7.2 → ourocode-1.7.3}/tests/test_EC5_CVT.py +0 -0
  70. {ourocode-1.7.2 → ourocode-1.7.3}/tests/test_EC5_Element_droit.py +0 -0
  71. {ourocode-1.7.2 → ourocode-1.7.3}/tests/test_EC5_Feu.py +0 -0
  72. {ourocode-1.7.2 → ourocode-1.7.3}/tests/test_EC8_Sismique.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ourocode
3
- Version: 1.7.2
3
+ Version: 1.7.3
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
@@ -0,0 +1 @@
1
+ __version__ = "1.7.3"
@@ -252,12 +252,14 @@ class Vent(Batiment):
252
252
  @handcalc(override="short", precision=2, jupyter_display=self.JUPYTER_DISPLAY, left="\\[", right="\\]")
253
253
  def val():
254
254
  C0_z = 1 + 0.004 * Delta_A_C * mt.exp(z - 10)
255
- return C0_z
255
+ res = max(C0_z, 1)
256
+ return res
256
257
  else:
257
258
  @handcalc(override="short", precision=2, jupyter_display=self.JUPYTER_DISPLAY, left="\\[", right="\\]")
258
259
  def val():
259
260
  C0_z = 1 + 0.004 * Delta_A_C * mt.exp(0)
260
- return C0_z
261
+ res = max(C0_z, 1)
262
+ return res
261
263
 
262
264
  case "2":
263
265
  raise ValueError("Erreur la catégorie orographique 2 n'est pas encore implémentée")
@@ -25,15 +25,23 @@ class MOB(Batiment):
25
25
  Cette classe est hérité de la classe Batiment, provenant du module A0_Projet.py.
26
26
 
27
27
 
28
+
28
29
  Un système de mur à ossature bois est composé de plusieurs murs servant aux contreventements,
29
30
  ces murs sont intérompus par les portes et fenêtres. Ces murs sont eux même composés de plusieurs panneaux.
30
31
 
31
- Il convient donc d'ajouter une classe MOB puis d'ajouter via la méthode "add_wall" chaque système de mur.
32
- Ensuite d'ajouter les murs internes au système de mur via la méthode "add_internal_wall", puis d'ajouter ensuite les panneaux
32
+ Il convient donc d'ajouter une classe MOB puis d'ajouter via la méthode "add_sys_wall" chaque système de mur.
33
+ Ensuite d'ajouter les murs internes au système de mur via la méthode "add_wall_to_sys", puis d'ajouter ensuite les panneaux
33
34
  à chaque murs via la méthode "add_panel_to_wall".
34
-
35
35
  Une méthode plus efficace consiste à écrire dans un fichier JSON les informations pour chaque système de mur,
36
- puis d'utiliser la méthode "load_data" pour charger les informations.
36
+ puis d'utiliser la méthode "load_walls_data" pour charger les informations.
37
+
38
+ Ensuite on peu utiliser la méthode "calculate_loads_and_deformations" pour calculer les efforts de contreventements et les déformations,
39
+ suivant le centre de gravité et la raideur des systèmes de mur.
40
+ Sinon on peux donner directement les efforts Fv_Ed_ELS et Fv_Ed_ELU par système de mur dans la méthode "add_sys_wall".
41
+
42
+ Enfin on utilise les méthodes "taux_walls" et "taux_ancrage" pour récupérer les taux de contreventements et les taux d'ancrage.
43
+ Attention cette classe ne calcule pas les montants bois notamment au flambement, ni la compression perpendiculaire des montants sur la lisse basse.
44
+ Pour réaliser ces calculs, il faut utiliser la classe Barre et les classes de vérification associées du module EC5_Element_droit.py
37
45
 
38
46
  Args:
39
47
  connecteurs_int (Agrafe, Pointe, optional): Objet Agrafe ou Pointe, représentant les connecteurs intérieurs du mur à ossature bois provenant du module EC5_Assemblage.py.
@@ -103,11 +111,11 @@ class MOB(Batiment):
103
111
  alpha_Fw_rad = radians(alpha_Fw)
104
112
  Ks = self.get_Kser_wall()
105
113
  sys_walls_names = self._get_all_sys_walls_names()
114
+ df_sw = pd.DataFrame(index=sys_walls_names, columns=["dn_p_sw", "dn_sw", "a", "b", "c", "d", "e", "C1", "C2", "C3", "C6"])
106
115
  if not hasattr(self, "data_sys_walls_loads"):
107
116
  self.data_sys_walls_loads = pd.DataFrame(index=sys_walls_names, columns=["Étage", "delta,v,Ed,i ELS", "Fv,Ed,i ELU"])
108
117
  self.data_walls_loads = pd.DataFrame(index=self.data_walls.keys(), columns=["Étage", "Fv,Ed,i ELU", "Ft,Ed,i ELU (soulèvement)"])
109
118
  self.data_panels_loads = pd.DataFrame(index=self.data_panels.keys(), columns=["Étage", "Fv,Ed,i ELU"])
110
- df_sw = pd.DataFrame(index=sys_walls_names, columns=["dn_p_sw", "dn_sw", "a", "b", "c", "d", "e", "C1", "C2", "C3", "C6"])
111
119
 
112
120
  for etage_data, sys in self.data.items():
113
121
  if etage_data != etage:
@@ -608,12 +616,10 @@ class MOB(Batiment):
608
616
  k_wall[1] = k_wall[1] + panel['Nombre'] * self.data_Kser_panels.loc[panel_name]['Kser,p unit.']
609
617
  k_wall[2] = k_wall[2] + panel['Nombre'] * self.data_Kser_panels.loc[panel_name]['Coeff. équivalence']
610
618
  k_wall[3] = self.data_Kser_panels.loc[panel_name]['Kser,p,ref']
619
+ k_sys_wall[3] = self.data_Kser_panels.loc[panel_name]['Kser,p,ref']
611
620
  self.data_Kser_walls.loc[wall_name] = k_wall
612
621
  k_sys_wall[1] = k_sys_wall[1] + k_wall[1]
613
622
  k_sys_wall[2] = k_sys_wall[2] + k_wall[2]
614
-
615
- if self.data_Kser_panels.get(panel_name):
616
- k_sys_wall[3] = self.data_Kser_panels.loc[panel_name]['Kser,p,ref']
617
623
  self.data_Kser_sys_walls.loc[sys_name] = k_sys_wall
618
624
 
619
625
  # Trier par index (nommés 'Système de mur' et 'Mur')
@@ -788,7 +794,7 @@ class MOB(Batiment):
788
794
  Fv_Rk_anc_li = Fv_Rk_anc_li * si.kN
789
795
  e_anc_lb = e_anc_lb * si.mm
790
796
  e_anc_li = e_anc_li * si.mm
791
- self.taux_ancr_walls = pd.DataFrame(columns=['Étage', 'Longueur mur', 'Ft,Ed', 'Ft,Rd', 'Taux ancrage soulèvement (%)', 'Fv,anc,Ed', 'Fv,anc,lb,Rd', 'Nbr ancr,lb', 'entraxe anc,lb', 'Taux ancr. lisse basse (%)', 'Fv,anc,li,Rd', 'Nbr ancr,li', 'entraxe anc,li', 'Taux ancr. lisse impl. (%)'])
797
+ self.taux_ancr_walls = pd.DataFrame(columns=['Étage', 'Longueur mur', 'Ft,Ed', 'Ft,Rd', 'Taux ancr. soulèvement (%)', 'Fv,anc,Ed', 'Fv,anc,lb,Rd', 'Nbr ancr,lb', 'entraxe anc,lb', 'Taux ancr. lisse basse (%)', 'Fv,anc,li,Rd', 'Nbr ancr,li', 'entraxe anc,li', 'Taux ancr. lisse impl. (%)'])
792
798
 
793
799
  for wall_name, wall in self.data_walls_loads.iterrows():
794
800
  if etage and wall['Étage'] != etage:
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: ourocode
3
- Version: 1.7.2
3
+ Version: 1.7.3
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
@@ -8,7 +8,7 @@ include = ["ourocode*"]
8
8
 
9
9
  [project]
10
10
  name = "ourocode"
11
- version = "1.7.2"
11
+ version = "1.7.3"
12
12
  description = "Ceci est un catalogue de fonction permettant une utilisation rapide pour la réalisation de note de calcul personnalisée."
13
13
  readme = "README.md"
14
14
  authors = [{name = "Anthony PARISOT", email = "contact@ourea-structure.fr"}]
@@ -1 +0,0 @@
1
- __version__ = "1.7.2"
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes