-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmain.py
More file actions
51 lines (40 loc) · 1.74 KB
/
Copy pathmain.py
File metadata and controls
51 lines (40 loc) · 1.74 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
from pathlib import Path
from assemblage_classes import KansElement, Element, Faalmechanisme, Systeemkans
def main():
for element in elementen:
print(
f"Element ID: {element.id}, Length: {element.L}, Faalmechanisme: {element.faalmechanisme.naam}, "
f"Pf_dsn: {element.Pf_dsn.pof}, Pf_vak: {element.Pf_vak.pof}, Beta_dsn: {element.Pf_dsn.beta}")
print("\nSysteemkans berekening:")
print(f"Faalmechanisme: {systeemkans.faalmechanisme.naam}, Pf systeem: {systeemkans.systeemkans.pof}, "
f"Beta systeem: {systeemkans.systeemkans.beta}")
if __name__ == "__main__":
# Set the working directory to the workspace folder
Path.cwd().joinpath("workspace").mkdir(parents=True, exist_ok=True)
# set the input and output file paths
INPUT_FILE = "input/input_voorbeeld.xlsx"
OUTPUT_FOLDER = "output"
OUTPUT_FILE = "output/Systeemkans_voorbeeld.xlsx"
# define faalmechanismen
overtopping = Faalmechanisme(
id=1,
naam="Overtopping",
beschrijving="Overtopping door hoge waterstand",
dL=99000.0,
wijze_van_opschaling=["MAX"]
)
# define elements
el1 = Element(id=1, M_van=0.0, M_tot=100.0, a = 1.0,
faalmechanisme=overtopping,
Pf_dsn=KansElement(pof=0.001),
invloedsfactor_belasting=0.95,
)
el2 = Element(id=2, M_van=100.0, M_tot=200.0, a = 1.0,
faalmechanisme=overtopping,
Pf_dsn=KansElement(pof=0.002),
invloedsfactor_belasting=0.95,
)
elementen = [el1, el2]
# calculate systeemkans
systeemkans = Systeemkans(faalmechanisme=overtopping, elementen=elementen)
main()