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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109 | %% 1. Rotated steel shape
% Section tag = 1
ops.section('Fiber', 1, '-GJ', 1.0e6);
ops.patch('quad', 1, 4, 1, ...
0.032, 0.317, ...
-0.311, 0.067, ...
-0.266, 0.005, ...
0.077, 0.254);
ops.patch('quad', 1, 1, 4, ...
-0.075, 0.144, ...
-0.114, 0.116, ...
0.075, -0.144, ...
0.114, -0.116);
ops.patch('quad', 1, 4, 1, ...
0.266, -0.005, ...
-0.077, -0.254, ...
-0.032, -0.317, ...
0.311, -0.067);
%% 2. RC section
% Section tag = 2
Bcol = 0.711;
Hcol = Bcol;
c = 0.076; % cover
y1col = Hcol / 2.0;
z1col = Bcol / 2.0;
y2col = 0.5 * (Hcol - 2 * c) / 3.0;
nFibZ = 1;
nFib = 20;
nFibCover = 2;
nFibCore = 16;
As9 = 0.0006446;
ops.section('Fiber', 2, '-GJ', 1.0e6);
% core
ops.patch('rect', 2, nFibCore, nFibZ, ...
c - y1col, c - z1col, ...
y1col - c, z1col - c);
% cover patches
ops.patch('rect', 3, nFib, nFibZ, ...
-y1col, -z1col, ...
y1col, c - z1col);
ops.patch('rect', 3, nFib, nFibZ, ...
-y1col, z1col - c, ...
y1col, z1col);
ops.patch('rect', 3, nFibCover, nFibZ, ...
-y1col, c - z1col, ...
c - y1col, z1col - c);
ops.patch('rect', 3, nFibCover, nFibZ, ...
y1col - c, c - z1col, ...
y1col, z1col - c);
% reinforcement layers
ops.layer('straight', 4, 4, As9, ...
y1col - c, z1col - c, ...
y1col - c, c - z1col);
ops.layer('straight', 4, 2, As9, ...
y2col, z1col - c, ...
y2col, c - z1col);
ops.layer('straight', 4, 2, As9, ...
-y2col, z1col - c, ...
-y2col, c - z1col);
ops.layer('straight', 4, 4, As9, ...
c - y1col, z1col - c, ...
c - y1col, c - z1col);
%% 3. Circular cross-section
% Section tag = 3
nc1 = 8; nr1 = 3;
nc2 = 8; nr2 = 2;
ri1 = 0.1; re1 = 0.2;
ri2 = 0.2; re2 = 0.25;
a_beg = 0.0;
a_end = 360.0;
rbar3 = 0.225;
a_beg2 = 0.0;
a_end2 = 360.0;
ops.section('Fiber', 3, '-GJ', 1.0e6);
ops.patch('circ', 2, nc1, nr1, ...
0.0, 0.0, ri1, re1, a_beg, a_end);
ops.patch('circ', 3, nc2, nr2, ...
0.0, 0.0, ri2, re2, a_beg, a_end);
ops.layer('circ', 4, 6, As9, ...
0.0, 0.0, rbar3, a_beg2, a_end2);
|