1
2
3
•
•

4
5
6
•
•

•
•

7
•
•

8
•
•
•

9
•
•

•
•

10
•
•

•
•

11
private void RunScript(List<double> x,
double y, ref object output)
{
List<double> list = new List<double>();
list = x;
double diff = new double();
DataTree<double> tree = new DataTree<double>();
if (y.Equals(null) || y.Equals(0))
{
y = 0.05;
}
y = Math.Abs(y);
int i = 0;
while (list.Count > 1)
{
diff = list[0] - list[0] * y;
GH_Path path = new GH_Path(i);
while (list[0] > diff)
{
tree.Add(list[0], path);
if (list.Count > 1)
{
list.RemoveAt(0);
}
else
{
list[0] = 0;
}
}
i = i + 1;
}
output = tree;
}

12
13
14
15
16
17
18
19
20
21
22
23
•
•

24
90

80
70
60

Iniziale

50

Ottimizzata

40
30
20
10
0

<0

3

6

9

12

15

18

21

24

27

30

>30

[m]

400
350
300
250
200
150
100
50

0

[mm]

25
N°
Pannelli

8

11

15

19

23

26

30

Raggio +
[m]

-30
-26
-23
-19
Raggio [m]

26
N° Stampi

1

6

8

N° Pann.

86

108

80

€stampi

0

2

24

€pannelli

1

2

5

86

228

592

TOT

27
28
29
•
•
•

•
•

30
31
Analisi

Calcola UF
per ogni
trave

Tutti gli
UF<1?
yes

no

1.0
0.9

Fine loop

Aggiorna gli
spessori
32
33
34
1.05
1
0.95
0.9
0.85
0.8
0.75
0.7
0

25

50

75

100

125

150

25

50

75

100

125

150

ε
0.0025

0.002

0.0015

0.001

0.0005
0

35
36
37
38
kDEAD=0.29
kSnow=0.43
kWind=0.67

39
40
41
42
43

Master's Thesis