@@ -38,18 +38,23 @@ def setup(self):
38
38
else :
39
39
self .k = [0.43 , 0.38 , 0.85 ]
40
40
41
- add_aviary_input (self , Aircraft .HorizontalTail .VERTICAL_TAIL_FRACTION )
41
+ add_aviary_input (self , Aircraft .HorizontalTail .VERTICAL_TAIL_FRACTION , val = 0 )
42
42
43
- add_aviary_input (self , Aircraft .Fuselage .LENGTH )
43
+ add_aviary_input (self , Aircraft .Fuselage .LENGTH , val = 129.4 )
44
44
45
45
self .add_input ("cab_w" , 13.1 , units = "ft" , desc = "SWF: Cabin width" )
46
46
47
- add_aviary_input (self , Aircraft .Wing .AREA )
47
+ add_aviary_input (self , Aircraft .Wing .AREA , val = 1370 )
48
48
49
- self .add_input ("wing_ref" , 12.615 , units = "ft" , desc = (
50
- "CBARW | B: Wing reference parameter. Wing chord for a "
51
- "horizontal tail. Wing span for a vertical tail." ),
52
- )
49
+ self .add_input (
50
+ "wing_ref" ,
51
+ 12.615 ,
52
+ units = "ft" ,
53
+ desc = (
54
+ "CBARW | B: Wing reference parameter. Wing chord for a "
55
+ "horizontal tail. Wing span for a vertical tail."
56
+ ),
57
+ )
53
58
54
59
self .add_output (
55
60
"vol_coef" , units = "unitless" , desc = "VBARH | VBARV: Tail volume coefficient" )
@@ -102,22 +107,32 @@ def setup(self):
102
107
desc = "VBARH | VBARV: Horizontal tail volume coefficient"
103
108
)
104
109
105
- add_aviary_input (self , Aircraft .Wing .AREA )
106
-
107
- self .add_input ("r_arm" , 0.2307 , units = "unitless" ,
108
- desc = ("COELTH | BOELTV: For a horizontal tail, the ratio of "
109
- "wing chord to tail moment arm. For a vertical tail, the "
110
- "ratio of wing span to vertical tail moment arm." ),
111
- )
112
- self .add_input ("wing_ref" , 12.615 , units = "ft" ,
113
- desc = ("CBARW | B: Reference wing parameter for tail moment arm. "
114
- "For a horizontal tail, the mean wing chord. For a "
115
- "vertical tail, the wing span." ),
116
- )
110
+ add_aviary_input (self , Aircraft .Wing .AREA , val = 1370 )
111
+
112
+ self .add_input (
113
+ "r_arm" ,
114
+ 0.2307 ,
115
+ units = "unitless" ,
116
+ desc = (
117
+ "COELTH | BOELTV: For a horizontal tail, the ratio of "
118
+ "wing chord to tail moment arm. For a vertical tail, the "
119
+ "ratio of wing span to vertical tail moment arm."
120
+ ),
121
+ )
122
+ self .add_input (
123
+ "wing_ref" ,
124
+ 12.615 ,
125
+ units = "ft" ,
126
+ desc = (
127
+ "CBARW | B: Reference wing parameter for tail moment arm. "
128
+ "For a horizontal tail, the mean wing chord. For a "
129
+ "vertical tail, the wing span."
130
+ ),
131
+ )
117
132
self .add_input (
118
133
"ar" , 4.75 , units = "unitless" , desc = "ARHT | ARVT: Tail aspect ratio." )
119
134
self .add_input (
120
- "tr" , 0.352 , units = "unitless" , desc = "SLMH | SLMV: Tail taper ratio." )
135
+ Aircraft . HorizontalTail . TAPER_RATIO , 0.352 , units = "unitless" , desc = "SLMH | SLMV: Tail taper ratio." )
121
136
122
137
self .add_output ("area" , units = "ft**2" , desc = "SHT | SVT: Tail area" )
123
138
self .add_output ("span" , units = "ft" , desc = "BHT | BVT: Tail span" )
@@ -131,10 +146,10 @@ def setup_partials(self):
131
146
self .declare_partials ("area" , ["vol_coef" , Aircraft .Wing .AREA , "r_arm" ])
132
147
self .declare_partials ("span" , ["vol_coef" , Aircraft .Wing .AREA , "r_arm" , "ar" ])
133
148
self .declare_partials (
134
- "rchord" , ["vol_coef" , Aircraft .Wing .AREA , "r_arm" , "ar" , "tr" ]
149
+ "rchord" , ["vol_coef" , Aircraft .Wing .AREA , "r_arm" , "ar" , Aircraft . HorizontalTail . TAPER_RATIO ]
135
150
)
136
151
self .declare_partials (
137
- "chord" , ["vol_coef" , Aircraft .Wing .AREA , "r_arm" , "ar" , "tr" ]
152
+ "chord" , ["vol_coef" , Aircraft .Wing .AREA , "r_arm" , "ar" , Aircraft . HorizontalTail . TAPER_RATIO ]
138
153
)
139
154
self .declare_partials ("arm" , ["r_arm" , "wing_ref" ])
140
155
@@ -171,14 +186,14 @@ def compute_partials(self, inputs, J):
171
186
J ["rchord" , Aircraft .Wing .AREA ] = vol_coef * r_arm / cse2
172
187
J ["rchord" , "r_arm" ] = wing_area * vol_coef / cse2
173
188
J ["rchord" , "ar" ] = - vol_coef * wing_area * r_arm / (ar * cse2 )
174
- J ["rchord" , "tr" ] = - 2 * vol_coef * wing_area * r_arm / (cse2 * (tr + 1 ))
189
+ J ["rchord" , Aircraft . HorizontalTail . TAPER_RATIO ] = - 2 * vol_coef * wing_area * r_arm / (cse2 * (tr + 1 ))
175
190
176
191
cse3 = tr - (tr / (tr + 1 )) + 1
177
192
J ["chord" , "vol_coef" ] = 2 / 3.0 * wing_area * r_arm * cse3 / cse2
178
193
J ["chord" , Aircraft .Wing .AREA ] = 2 / 3.0 * vol_coef * r_arm * cse3 / cse2
179
194
J ["chord" , "r_arm" ] = 2 / 3.0 * vol_coef * wing_area * cse3 / cse2
180
195
J ["chord" , "ar" ] = - 2 / 3.0 * vol_coef * wing_area * r_arm * cse3 / (ar * cse2 )
181
- J ["chord" , "tr" ] = 4 / 3.0 * cse1 * (tr - 1 ) / (ar * (tr + 1 ) ** 3 )
196
+ J ["chord" , Aircraft . HorizontalTail . TAPER_RATIO ] = 4 / 3.0 * cse1 * (tr - 1 ) / (ar * (tr + 1 ) ** 3 )
182
197
183
198
J ["arm" , "r_arm" ] = - wing_ref / r_arm ** 2
184
199
J ["arm" , "wing_ref" ] = 1.0 / r_arm
@@ -218,7 +233,7 @@ def setup(self):
218
233
]
219
234
higher_level_inputs_htail = [
220
235
("wing_ref" , Aircraft .Wing .AVERAGE_CHORD ),
221
- ("tr" , Aircraft .HorizontalTail .TAPER_RATIO ),
236
+ # ("tr", Aircraft.HorizontalTail.TAPER_RATIO),
222
237
]
223
238
higher_level_inputs_vtail = [
224
239
("wing_ref" , Aircraft .Wing .SPAN ),
@@ -232,7 +247,7 @@ def setup(self):
232
247
]
233
248
rename_inputs_vtail = [
234
249
("r_arm" , Aircraft .VerticalTail .MOMENT_RATIO ),
235
- ("tr" , Aircraft .VerticalTail .TAPER_RATIO ),
250
+ # ("tr", Aircraft.VerticalTail.TAPER_RATIO),
236
251
]
237
252
238
253
# outputs that are used in groups other than this one
0 commit comments