jsbsim.js
Version:
JSBSim flight dynamics model ported to JavaScript
1,738 lines (1,558 loc) • 60.8 kB
text/xml
<?xml version="1.0"?>
<!-- $Id: Submarine_Scout.xml,v 1.10 2009/04/14 19:33:22 andgi Exp $ -->
<!--
Submarine Scout airship flight model for JSBSim.
Copyright (C) 2007 - 2009 Anders Gidenstam (anders(at)gidenstam.org)
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-->
<?xml-stylesheet type="text/xsl" href="http://jsbsim.sourceforge.net/JSBSim.xsl"?>
<fdm_config name="SubmarineScout" version="2.0" release="ALPHA"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="http://jsbsim.sourceforge.net/JSBSim.xsd">
<fileheader>
<author>Anders Gidenstam</author>
<email>anders at gidenstam dot org</email>
<description>JSBSim model of a Submarine Scout Zero class airship.</description>
<license licenseName="GPL"
licenseURL="http://www.gnu.org/licenses/gpl.html"/>
<filecreationdate>2007-02-11</filecreationdate>
<version>$Id: Submarine_Scout.xml,v 1.10 2009/04/14 19:33:22 andgi Exp $</version>
<reference refID="Freeman:1932:Akron"
author="Hugh B. Freeman"
title="Force Measurements on a 1/40-scale Model of the U.S. Airship ``Akron''; NACA Report #432"
date="1932"/>
<reference refID="Mowthrope:1998:Battlebags"
author="Ces Mowthorpe"
title="Battlebags British Airships of the First World War"
date="1998"/>
<reference refID="VentryKo:1982:AS"
author="Lord Ventry and Eugene M. Kolesnik"
title="Airship Saga; ISBN 0 7137 1001 2"
date="1982"/>
<reference refID="WD:1941:AATM"
author="War Department"
title="Airship Aerodynamics Technical Manual; TM 1-310; ISBN 1-4102-0614-9"
date="1941"/>
<reference refID="Whale:1919:BA"
author="George Whale"
title="British Airships: Past, Present and Future; http://www.gutenberg.org"
date="1919"/>
</fileheader>
<!--
==== Metrics ===============================================================
-->
<metrics>
<documentation>
NOTE: The center of the bow of the envelope is the origo of
the body coordinate system.
x/y/z = back/right/up
</documentation>
<documentation>
According to [Whale:1919:BA] the horizontal and vertical fins of a
S.S. B.E.2C ship were of the same size and measured 16' by 8'6" and
the rudder/elevators measured 4' by 8'6" each.
The vertical fin of a S.S. Zero might be longer.
Total gas volume vol = 70000 ft^3 = 1982.2 m^3.
Performance numbers from [Whale:1919:BA]:
- Max speed
- S.S. B.E.2C: 40 - 50.5 mph
- S.S. Maurice Farman: "slightly slower"
- S.S. Zero 45 mph
- Endurance
- S.S. Zero: expected 17 hours. Record: 50:55
</documentation>
<documentation>
From [AHT,
http://www.aht.ndirect.co.uk/airships/Technical%20Spec/SSZ%20Airship.htm]:
Envelope capacity 70,000 cubic feet
Ballonets Ballonets (two) capacity 19,600 cubic feet
Length 143 feet 5 inches
Diameter 30 feet
Height 46 feet
Plane area (each) 110 square feet
Car boat-shaped, streamlined,length 17 feet 6 inches
Engine 75 hp Rolls Royce
Propeller Four-bladed 9 feet diameter
Petrol tanks (two) capacity ;120 (UK?) gallons total
Water ballast capacity 26 gallons
Gross lift 2.2 tons
Disposable lift 0.6 tons
Endurance at full speed 17 hours
Top speed 53 mph
Climb 1,200 feet per minute
Turning circle 40 seconds minimum, 230 diameter
</documentation>
<wingarea unit="M2"> 65.0 </wingarea> <!-- Cross-sectional area.-->
<wingspan unit="M"> 9.1 </wingspan> <!-- Envelope diameter. -->
<chord unit="M"> 43.7 </chord> <!-- Envelope length. -->
<htailarea unit="M2"> 25.27 </htailarea>
<htailarm unit="M"> 12.15 </htailarm> <!-- From CG. -->
<vtailarea unit="M2"> 12.64 </vtailarea>
<vtailarm unit="M"> 12.15 </vtailarm> <!-- From CG. -->
<!-- Total gas volume vol = 70000 ft^3 = 1982.2 m^3 -->
<!-- Aerodynamic Reference Point. -->
<location name="AERORP" unit="M">
<x> 20.0 </x>
<y> 0.0 </y>
<z> 0.0 </z>
</location>
<location name="EYEPOINT" unit="M">
<x> 16.1 </x>
<y> 0.0 </y>
<z> -6.4 </z>
</location>
<!-- Visual Reference Point -->
<location name="VRP" unit="M">
<x> 13.7 </x>
<y> 0.0 </y>
<z> -6.85 </z>
</location>
</metrics>
<!--
==== Mass balance =========================================================
-->
<mass_balance>
<documentation>
According to [VentryKo:1982:AS] the SS Zero class had a useful lift
of 1344lbs (~610kg). Considering that the lift of 1 m^3 hydrogen
approximately is 1 kg that leaves 1370kg of lift for the structure
itself.
</documentation>
<emptywt unit="KG"> 300 </emptywt>
<documentation>
The empty weight is estimated to consist of:
- The weight of the envelope, guesstimated to 300 kg.
The car and engine will be added as point masses.
</documentation>
<documentation>
% Very rough estimation model of the empty weight CG and inertia tensor.
% Assume the empty weight of is to 100% a cylindrical shell.
m = 300.0 % KG
r = 4.5 % meter
l = 43.7 % meter
% Very rough estimate of center of gravity (based on the inertial estimate):
CGx = 0
CGy = 0
CGz = 0
% Steiners theorem:
% Ixx = \bar{Ixx} + m sqrt(\bar{y}^2 + \bar{z}^2)
% Ixy = \bar{Ixy} + m \bar{x} \bar{y}
% Very rough estimation model of Ixx, Iyy and Izz relative the CG.
Ixx = m * r^2
Iyy = 1/2*m * r^2 + 1/12*m*l^2
Izz = 1/2*m * r^2 + 1/12*m*l^2
Ixy = 0
Ixz = 0
Iyz = 0
</documentation>
<ixx unit="KG*M2"> 6075.0 </ixx>
<iyy unit="KG*M2"> 50780.0 </iyy>
<izz unit="KG*M2"> 50780.0 </izz>
<ixy unit="KG*M2"> 0.0 </ixy>
<ixz unit="KG*M2"> 0.0 </ixz>
<iyz unit="KG*M2"> 0.0 </iyz>
<location name="CG" unit="M">
<x> 21.850 </x>
<y> 0.000 </y>
<z> 0.000 </z>
</location>
<!--
=== Ballast ================================================
-->
<documentation>
Ballast for a S.S. b.E.2C according to [Whale:1919:BA]:
- Water ballast tank
- Located immediatly behind pilot
- Capacity 14 gallons.
</documentation>
<!-- Experimental ballast setup. -->
<!-- Center ballast -->
<pointmass name="Ballast_Center">
<!-- According to the AHT this should be max 100 kg -->
<location unit="M">
<x> 17.22 </x>
<y> 0.0 </y>
<z> -7.20 </z>
</location>
<weight unit="KG"> 500 </weight>
</pointmass>
<!--
Ballast tanks for fine tuning the CG.
These are controlled by the FCS.
-->
<!-- Forward ballast -->
<pointmass name="Ballast_Forward">
<location unit="M">
<x> 0.0 </x>
<y> 0.0 </y>
<z> -1.0 </z>
</location>
<weight unit="KG"> 70 </weight>
</pointmass>
<!-- Aft ballast -->
<pointmass type="Ballast_Aft">
<location unit="M">
<x> 43.7 </x>
<y> 0.0 </y>
<z> -1.0 </z>
</location>
<weight unit="KG"> 70 </weight>
</pointmass>
<!--
=== Armament ===============================================
-->
<documentation>
According to [VentryKo:1982:AS] page 44 these ships normally carried
two 65lb bombs set as depth charges.
</documentation>
<pointmass name="Bomb1">
<weight unit="LBS"> 65.0 </weight>
<location name="POINTMASS" unit="M">
<x> 17.00 </x>
<y> -0.57 </y>
<z> -7.35 </z>
</location>
</pointmass>
<pointmass name="Bomb2">
<weight unit="LBS"> 65.0 </weight>
<location name="POINTMASS" unit="M">
<x> 17.00 </x>
<y> 0.57 </y>
<z> -7.35 </z>
</location>
</pointmass>
<!--
=== Engine =================================================
-->
<documentation>
According to [Whale:1919:BA] the engine of a S.S. B.E.2C
(also 75h.p. but air cooled) weighed 438lb.
</documentation>
<documentation>
According to [VentryKo:1982:AS] the engine was a 75h.p.
Rolls Royce engine.
Guesstimated weight: 250 kg.
</documentation>
<pointmass name="Engine">
<weight unit="KG"> 250.0 </weight>
<location name="POINTMASS" unit="M">
<x> 18.555 </x>
<y> 0.0 </y>
<z> -5.90 </z>
</location>
</pointmass>
<!--
=== Other point masses =====================================
-->
<pointmass name="Crew 1 Observer">
<weight unit="KG"> 85.0 </weight>
<location name="POINTMASS" unit="M">
<x> 14.9 </x>
<y> 0.0 </y>
<z> -6.85 </z>
</location>
</pointmass>
<pointmass name="Crew 2 Pilot">
<weight unit="KG"> 85.0 </weight>
<location name="POINTMASS" unit="M">
<x> 16.17 </x>
<y> 0.0 </y>
<z> -6.85 </z>
</location>
</pointmass>
<pointmass name="Crew 3 Mechanic">
<weight unit="KG"> 85.0 </weight>
<location name="POINTMASS" unit="M">
<x> 17.22 </x>
<y> 0.0 </y>
<z> -6.85 </z>
</location>
</pointmass>
<pointmass name="Car">
<!-- Pure guess. More of the weight should be in the engine. -->
<weight unit="KG"> 400.0 </weight>
<location name="POINTMASS" unit="M">
<x> 16.72 </x>
<y> 0.0 </y>
<z> -7.20 </z>
</location>
</pointmass>
</mass_balance>
<!--
=== Gas cell ==============================================================
-->
<buoyant_forces>
<documentation>
NOTE: The cell is placed based on the envelope centroid location
as computed by BRLCAD.
</documentation>
<documentation>
Envelope and gas control for a S.S. b.E.2C according to [Whale:1919:BA]:
- Ripping panel at the top of the envelope towards the front
- 14'5" by 8'
- Nose stiffeners: 24
- 2 Ballonets
- capacity 6,375 feet^3 each
- automatic spring valves set to open at 25 - 28mm (of water I presume)
- 2 gas valves one at the bottom and one at the top of the envelope
- Bottom valve automatically opens at 30 - 35mm pressure.
- Top valve is manual only
(")
</documentation>
<documentation>
Envelope and ballonet volumes according to [Mowthrope:1998:Battlebags]:
- Envelope 70,000 feet^3
- 2 Ballonets 9,800 feet^3 each
</documentation>
<!-- Forward declaration of ballonet inflow properties -->
<property value="0.0">ballonets/in-flow-ft3ps[0]</property>
<property value="0.0">ballonets/in-flow-ft3ps[1]</property>
<gas_cell type="HYDROGEN">
<location unit="M">
<x> 18.8 </x>
<y> 0.0 </y>
<z> 0.0 </z>
</location>
<x_radius unit="M"> 22.86 </x_radius>
<y_radius unit="M"> 4.55 </y_radius>
<z_radius unit="M"> 4.55 </z_radius>
<max_overpressure unit="PA"> 340.0 </max_overpressure>
<valve_coefficient unit="M4*SEC/KG"> 0.0075 </valve_coefficient>
<fullness>0.90</fullness>
<!-- heat exchange with the environment. [lb ft / sec] -->
<!-- Note: The surface area of an ellipsiod is approximately
4*pi*((a^p*b^p + a^p*c^p + b^p*c^p)/3)^(1/p)
where p=1.6075
-->
<heat>
<!-- Heat transfer due to temperature difference. -->
<function name="buoyant_forces/gas-cell/dU_conduction">
<product>
<value> 11186.0 </value> <!-- Surface area [ft2] -->
<value> 0.05 </value> <!-- Conductivity [lb / (K ft sec)] (Guess) -->
<difference>
<property> atmosphere/T-R </property>
<property> buoyant_forces/gas-cell/temp-R </property>
</difference>
</product>
</function>
<function name="buoyant_forces/gas-cell/dU_radiation">
<product>
<value> 0.1714e-8 </value> <!-- Stefan-Boltzmann's constant
[Btu / (h ft^2 R^4)] -->
<value> 0.2 </value> <!-- Emissivity [0,1] (Guess) -->
<value> 11186.0 </value> <!-- Surface area [ft2] -->
<difference>
<pow>
<property> atmosphere/T-R </property>
<value> 4.0 </value>
</pow>
<pow>
<property> buoyant_forces/gas-cell/temp-R </property>
<value> 4.0 </value>
</pow>
</difference>
</product>
</function>
</heat>
<!-- Forward ballonet -->
<ballonet type="AIR">
<location unit="M">
<x> 8.8 </x>
<y> 0.0 </y>
<z> -3.1 </z>
</location>
<x_radius unit="M"> 6.45 </x_radius>
<y_radius unit="M"> 3.00 </y_radius>
<z_radius unit="M"> 2.23 </z_radius>
<max_overpressure unit="PA"> 255.0 </max_overpressure>
<valve_coefficient unit="M4*SEC/KG"> 0.01 </valve_coefficient>
<fullness>0.5</fullness>
<heat>
<!-- Heat transfer due to temperature difference. -->
<function name="buoyant_forces/gas-cell/ballonet[0]/dU_conduction">
<product>
<value> 5916.06 </value> <!-- Surface area [ft2] -->
<value> 0.05 </value> <!-- Conductivity [lb / (K ft sec)] (Guess) -->
<difference>
<property> buoyant_forces/gas-cell/temp-R </property>
<property> buoyant_forces/gas-cell/ballonet[0]/temp-R </property>
</difference>
</product>
</function>
<function name="buoyant_forces/gas-cell/ballonet[0]/dU_radiation">
<product>
<value> 0.1714e-8 </value> <!-- Stefan-Boltzmann's constant
[Btu / (h ft^2 R^4)] -->
<value> 0.2 </value> <!-- Emissivity [0,1] (Guess) -->
<value> 5916.06 </value> <!-- Surface area [ft2] -->
<difference>
<pow>
<property> buoyant_forces/gas-cell/temp-R </property>
<value> 4.0 </value>
</pow>
<pow>
<property> buoyant_forces/gas-cell/ballonet[0]/temp-R </property>
<value> 4.0 </value>
</pow>
</difference>
</product>
</function>
</heat>
<blower_input>
<function name="buoyant_forces/gas-cell/ballonet[0]/in-flow-ft3ps">
<property>ballonets/in-flow-ft3ps[0]</property>
</function>
</blower_input>
</ballonet>
<!-- Aft ballonet -->
<ballonet type="AIR">
<location unit="M">
<x> 34.0 </x>
<y> 0.0 </y>
<z> -2.0 </z>
</location>
<x_radius unit="M"> 7.55 </x_radius>
<y_radius unit="M"> 2.85 </y_radius>
<z_radius unit="M"> 2.00 </z_radius>
<max_overpressure unit="PA"> 250.0 </max_overpressure>
<valve_coefficient unit="M4*SEC/KG"> 0.01 </valve_coefficient>
<fullness>0.5</fullness>
<heat>
<!-- Heat transfer due to temperature difference. -->
<function name="buoyant_forces/gas-cell/ballonet[1]/dU_conduction">
<product>
<value> 6557.48 </value> <!-- Surface area [ft2] -->
<value> 0.05 </value> <!-- Conductivity [lb / (K ft sec)] (Guess) -->
<difference>
<property> buoyant_forces/gas-cell/temp-R </property>
<property> buoyant_forces/gas-cell/ballonet[1]/temp-R </property>
</difference>
</product>
</function>
<function name="buoyant_forces/gas-cell/ballonet[1]/dU_radiation">
<product>
<value> 0.1714e-8 </value> <!-- Stefan-Boltzmann's constant
[Btu / (h ft^2 R^4)] -->
<value> 0.2 </value> <!-- Emissivity [0,1] (Guess) -->
<value> 6557.48 </value> <!-- Surface area [ft2] -->
<difference>
<pow>
<property> buoyant_forces/gas-cell/temp-R </property>
<value> 4.0 </value>
</pow>
<pow>
<property> buoyant_forces/gas-cell/ballonet[1]/temp-R </property>
<value> 4.0 </value>
</pow>
</difference>
</product>
</function>
</heat>
<blower_input>
<function name="buoyant_forces/gas-cell/ballonet[1]/in-flow-ft3ps">
<property>ballonets/in-flow-ft3ps[1]</property>
</function>
</blower_input>
</ballonet>
</gas_cell>
</buoyant_forces>
<!--
==== Ground reactions ======================================================
-->
<ground_reactions>
<!--
=== Landing gears ===================================================
-->
<contact type="BOGEY" name="CAR_KEEL_FRONT">
<location unit="M">
<x> 14.7 </x>
<y> 0.0 </y>
<z> -8.2 </z>
</location>
<static_friction> 1.0 </static_friction>
<dynamic_friction> 2.0 </dynamic_friction>
<rolling_friction> 0.8 </rolling_friction>
<spring_coeff unit="N/M"> 50000 </spring_coeff>
<damping_coeff unit="N/M/SEC"> 10000 </damping_coeff>
<max_steer unit="DEG"> 0.0 </max_steer>
<brake_group> NONE </brake_group>
<retractable>0</retractable>
</contact>
<contact type="BOGEY" name="CAR_KEEL_MIDDLE">
<location unit="M">
<x> 16.6 </x>
<y> 0.0 </y>
<z> -8.2 </z>
</location>
<static_friction> 1.0 </static_friction>
<dynamic_friction> 2.0 </dynamic_friction>
<rolling_friction> 0.8 </rolling_friction>
<spring_coeff unit="N/M"> 50000 </spring_coeff>
<damping_coeff unit="N/M/SEC"> 10000 </damping_coeff>
<max_steer unit="DEG"> 0.0 </max_steer>
<brake_group> NONE </brake_group>
<retractable>0</retractable>
</contact>
<contact type="BOGEY" name="CAR_KEEL_AFT">
<location unit="M">
<x> 18.4 </x>
<y> 0.0 </y>
<z> -8.2 </z>
</location>
<static_friction> 1.0 </static_friction>
<dynamic_friction> 2.0 </dynamic_friction>
<rolling_friction> 0.8 </rolling_friction>
<spring_coeff unit="N/M"> 50000 </spring_coeff>
<damping_coeff unit="N/M/SEC"> 10000 </damping_coeff>
<max_steer unit="DEG"> 0.0 </max_steer>
<brake_group> NONE </brake_group>
<retractable>0</retractable>
</contact>
<!--
=== Other contact points ============================================
-->
<!-- These should induce structural failure. -->
<contact type="STRUCTURE" name="NOSE">
<location unit="M">
<x> 0.0 </x>
<y> 0.0 </y>
<z> 0.0 </z>
</location>
<static_friction> 0.2 </static_friction>
<dynamic_friction> 0.2 </dynamic_friction>
<rolling_friction> 0.2 </rolling_friction>
<spring_coeff unit="N/M"> 100000 </spring_coeff>
<damping_coeff unit="N/M/SEC"> 20000 </damping_coeff>
<max_steer unit="DEG"> 0.0 </max_steer>
<brake_group> NONE </brake_group>
<retractable>0</retractable>
</contact>
<contact type="STRUCTURE" name="TAIL">
<location unit="M">
<x> 43.7 </x>
<y> 0.0 </y>
<z> 0.0 </z>
</location>
<static_friction> 0.2 </static_friction>
<dynamic_friction> 0.2 </dynamic_friction>
<rolling_friction> 0.2 </rolling_friction>
<spring_coeff unit="N/M"> 100000 </spring_coeff>
<damping_coeff unit="N/M/SEC"> 20000 </damping_coeff>
<max_steer unit="DEG"> 0.0 </max_steer>
<brake_group> NONE </brake_group>
<retractable>0</retractable>
</contact>
<contact type="STRUCTURE" name="TAIL_FIN">
<location unit="M">
<x> 35.6 </x>
<y> 0.0 </y>
<z> -5.6 </z>
</location>
<static_friction> 0.2 </static_friction>
<dynamic_friction> 0.2 </dynamic_friction>
<rolling_friction> 0.2 </rolling_friction>
<spring_coeff unit="N/M"> 100000 </spring_coeff>
<damping_coeff unit="N/M/SEC"> 20000 </damping_coeff>
<max_steer unit="DEG"> 0.0 </max_steer>
<brake_group> NONE </brake_group>
<retractable>0</retractable>
</contact>
<contact type="BOGEY" name="CAR_FRONT">
<location unit="M">
<x> 13.7 </x>
<y> 0.0 </y>
<z> -6.85 </z>
</location>
<static_friction> 0.5 </static_friction>
<dynamic_friction> 0.5 </dynamic_friction>
<rolling_friction> 0.5 </rolling_friction>
<spring_coeff unit="N/M"> 25000 </spring_coeff>
<damping_coeff unit="N/M/SEC"> 10000 </damping_coeff>
<max_steer unit="DEG"> 0.0 </max_steer>
<brake_group> NONE </brake_group>
<retractable>0</retractable>
</contact>
</ground_reactions>
<!--
==== Propulsion ============================================================
-->
<propulsion>
<!--
=== Engine ================================================
-->
<documentation>
Propulsion installation information for S.S. Zero from [Whale:1919:BA]:
- Water-cooled Rolls Royce
- 75hp
- 4 bladed pusher propeller.
- 9 foot diameter according to [AHT, www.aht.ndirect.co.uk].
- Weight? S.S. B.E.2C: 438 lb.
- Petrol tanks.
- "The petrol is carried in aluminium tanks slung
on the axis of the envelope, identically with the system in use
on the S.S.P's."
What axis? Photos indicate one on each side of the envelope
roughly above the engine.
- Capacity? S.S. B.E.2C: 60 (UK?) gallons.
- 2 tanks. Total capacity 120 (UK?) gallons [AHT, www.aht.ndirect.co.uk].
- 2, 4 or 6 tanks for S.S.Zero [Mowthrope:1998:Battlebags] (a 60 gal UK?)
</documentation>
<documentation>
According to [VentryKo:1982:AS] the engine was a 75h.p.
Rolls Royce engine.
</documentation>
<!-- Engine -->
<engine file="eng_RRhawk">
<location unit="M">
<x> 19.2 </x>
<y> 0.0 </y>
<z> -6.0 </z>
</location>
<orient unit="DEG">
<roll> 0.0 </roll>
<pitch> 0 </pitch>
<yaw> 0 </yaw>
</orient>
<feed>0</feed>
<feed>1</feed>
<thruster file="prop_SSZ">
<location unit="M">
<x> 19.2 </x>
<y> 0.0 </y>
<z> -6.0 </z>
</location>
<orient unit="DEG">
<roll> 0.0 </roll>
<pitch> 0.0 </pitch>
<yaw> 0.0 </yaw>
</orient>
</thruster>
</engine>
<!--
=== Fuel tanks ============================================
-->
<tank type="FUEL">
<location unit="M">
<x> 17.26 </x>
<y> -4.50 </y>
<z> 0.0 </z>
</location>
<!-- 196.39 kg for 60 UK gallon at AVGAS density 0.72 kg/liter. -->
<capacity unit="KG"> 196.39 </capacity>
<contents unit="KG"> 196.39 </contents>
</tank>
<tank type="FUEL">
<location unit="M">
<x> 17.26 </x>
<y> 4.50 </y>
<z> 0.0 </z>
</location>
<!-- 196.39 kg for 60 UK gallon at AVGAS density 0.72 kg/liter. -->
<capacity unit="KG"> 196.39 </capacity>
<contents unit="KG"> 196.39 </contents>
</tank>
</propulsion>
<!--
==== Instrumentation =======================================================
-->
<system name="Instrumentation">
<documentation>
Instrumentation for a S.S. b.E.2C according to [Whale:1919:BA]:
Pilot:
- watch
- air-speed indicator graduated in knots
- aneroid (pressure altimeter?) reading to 10,000 feet.
- Elliot revolution counter (tachometer?)
- Clift inclinometer reading up to 20 degrees depression or elevation.
- map case
- oil pressure gauge
- petrol pressure gauge
- glass petrol level
- two concentric glass pressure gauges for gas pressure
- Compass mounted on a small wooden pedestal in front of the pilot.
- Controls:
- rudder pedals
- elevator wheel mounted in a fore-aft direction across the seat (?)
- Valve cord to top gas valve
- Valve cords to the ballonet valves(?)
- Rip cord
Observer/Wireless operator:
- radio w. range up to 50-60 miles.
- Lewis machine gun
</documentation>
<channel name="Instruments">
<fcs_function name="instrumentation/gas-pressure-psf[0]">
<function>
<difference>
<property> buoyant_forces/gas-cell/pressure-psf </property>
<property> atmosphere/P-psf </property>
</difference>
</function>
<output>/instrumentation/gas-manometer[0]/gas-pressure-psf</output>
</fcs_function>
<fcs_function name="instrumentation/gas-pressure-psf[1]">
<function>
<difference>
<property> buoyant_forces/gas-cell/pressure-psf </property>
<property> atmosphere/P-psf </property>
</difference>
</function>
<output>/instrumentation/gas-manometer[1]/gas-pressure-psf</output>
</fcs_function>
</channel>
</system>
<!--
==== Flight control system =================================================
-->
<system file="Submarine_Scout_crew_ap">
<limitation>
The real aircraft did not have any autopilot. This autopilot is
mostly intended for scripted flights in JSBSim/standalone.
The autopilot is only minimally tuned.
</limitation>
</system>
<system name="Ballonet and gas control">
<documentation>
"Two ballonets are provided, one forward and one aft, the capacity
of each being 6,375 cubic feet. The supply of air for filling
these is taken from the propeller draught by a slanting aluminium
tube to the underside of the envelope, where it meets a
longitudinal fabric hose which connects the two ballonet air
inlets. Non-return fabric valves known as crab-pots are fitted in
this fabric hose on either side of their junction with the air
scoop. Two automatic air valves are fitted to the underside of the
envelope, one for each ballonet. The air pressure tends to open
the valve instead of keeping it shut and to counteract this the
spring of the valve is inside the envelope. The springs are set to
open at a pressure of 25 to 28 mm." [Whale:1919:BA] on the S.S.B.E. 2C.
"The valve cords are led to the pilot's seat through eyes attached
to the envelope." [Whale:1919:BA] on the S.S.B.E. 2C.
"Two gas valves are also fitted, one on the top of the envelope,
the other at the bottom. The bottom gas valve spring is set to
open at 30 to 35 mm. pressure, the top valve is hand controlled
only." [Whale:1919:BA] on the S.S.B.E. 2C.
"One ripping panel is fitted, which is situated on the top of the
envelope towards the nose. It has a length of 14 feet 5 inches and
a breadth of about 8 inches." [Whale:1919:BA] on the S.S.B.E. 2C.
</documentation>
<limitation>
The slip stream pressure calculation does not take the direction of the
relative wind into account.
</limitation>
<!-- Pilot inputs. -->
<property value="0.0">fcs/gas-valve-cmd-norm[0]</property>
<property value="0.0">fcs/ballonet-valve-cmd-norm[0]</property>
<property value="0.0">fcs/ballonet-valve-cmd-norm[1]</property>
<property value="0.0">fcs/rip-cord-cmd-norm</property>
<channel name="Gas valve">
<switch name="fcs/ripped-sample-hold">
<default value="fcs/rip-cord-cmd-norm"/>
<test logic="AND" value="fcs/ripped-sample-hold">
fcs/ripped-sample-hold GE 1.0
</test>
</switch>
<fcs_function name="fcs/gas-valve-pos-norm">
<function>
<sum>
<property>fcs/gas-valve-cmd-norm</property>
<property>ap/gas-valve-cmd-norm</property>
<product>
<value>100.0</value>
<property>fcs/ripped-sample-hold</property>
</product>
</sum>
</function>
<output>buoyant_forces/gas-cell/valve_open</output>
</fcs_function>
</channel>
<channel name="Ballonet air supply">
<fcs_function name="ballonets/slip-stream-pressure-psf">
<function>
<sum>
<property>atmosphere/P-psf</property>
<property>aero/qbar-psf</property>
<quotient>
<property>propulsion/engine/thrust-lbs</property>
<value>63.62</value> <!-- Propeller disc area ft^2 -->
</quotient>
</sum>
</function>
</fcs_function>
<fcs_function name="ballonets/crab-pot-valve-flow-ft3ps[0]">
<function>
<product>
<value>20.0</value> <!-- Inflow valve coefficient ft4*sec/slug -->
<max>
<value>0.0</value>
<difference>
<property>ballonets/slip-stream-pressure-psf</property>
<property>buoyant_forces/gas-cell/ballonet[0]/pressure-psf</property>
</difference>
</max>
</product>
</function>
<output>ballonets/in-flow-ft3ps[0]</output>
</fcs_function>
<fcs_function name="ballonets/crab-pot-valve-flow-ft3ps[1]">
<function>
<product>
<value>20.0</value> <!-- Inflow valve coefficient ft4*sec/slug -->
<max>
<value>0.0</value>
<difference>
<property>ballonets/slip-stream-pressure-psf</property>
<property>buoyant_forces/gas-cell/ballonet[1]/pressure-psf</property>
</difference>
</max>
</product>
</function>
<output>ballonets/in-flow-ft3ps[1]</output>
</fcs_function>
</channel>
<channel name="Ballonet out-flow valves">
<fcs_function name="ballonets/valve-pos-norm[0]">
<function>
<sum>
<property>fcs/ballonet-valve-cmd-norm[0]</property>
<property>ap/ballonet-valve-cmd-norm[0]</property>
</sum>
</function>
<output>buoyant_forces/gas-cell/ballonet[0]/valve_open</output>
</fcs_function>
<fcs_function name="ballonets/valve-pos-norm[1]">
<function>
<sum>
<property>fcs/ballonet-valve-cmd-norm[1]</property>
<property>ap/ballonet-valve-cmd-norm[1]</property>
</sum>
</function>
<output>buoyant_forces/gas-cell/ballonet[1]/valve_open</output>
</fcs_function>
</channel>
</system>
<flight_control name="Aerodynamic controls">
<!--
=== Pitch ==================================================
-->
<channel name="Pitch">
<summer name="fcs/pitch-trim-sum">
<input>fcs/elevator-cmd-norm</input>
<input>fcs/pitch-trim-cmd-norm</input>
<input>ap/elevator-cmd-norm</input>
<clipto>
<min>-1</min>
<max>1</max>
</clipto>
</summer>
<aerosurface_scale name="Elevator Control">
<input>fcs/pitch-trim-sum</input>
<gain>0.5236</gain>
<domain>
<min>-1</min>
<max>1</max>
</domain>
<range>
<min>-0.5236</min>
<max>0.5236</max>
</range>
<output>fcs/elevator-pos-rad</output>
</aerosurface_scale>
<aerosurface_scale name="Elevator Position Normalized">
<input>fcs/elevator-pos-rad</input>
<gain>1.9099</gain>
<domain>
<min>-0.5236</min>
<max>0.5236</max>
</domain>
<range>
<min>-1</min>
<max>1</max>
</range>
<output>fcs/elevator-pos-norm</output>
</aerosurface_scale>
</channel>
<!--
=== Yaw ====================================================
-->
<channel name="Yaw">
<summer name="fcs/yaw-trim-sum">
<input>fcs/rudder-cmd-norm</input>
<input>fcs/yaw-trim-cmd-norm</input>
<input>ap/rudder-cmd-norm</input>
<clipto>
<min>-1</min>
<max>1</max>
</clipto>
</summer>
<aerosurface_scale name="Rudder Control">
<input>fcs/yaw-trim-sum</input>
<gain>0.5236</gain>
<domain>
<min>-1</min>
<max>1</max>
</domain>
<range>
<min>-0.5236</min>
<max>0.5236</max>
</range>
<output>fcs/rudder-pos-rad</output>
</aerosurface_scale>
<aerosurface_scale name="Rudder Position Normalized">
<input>fcs/rudder-pos-rad</input>
<gain>1.9099</gain>
<domain>
<min>-0.5236</min>
<max>0.5236</max>
</domain>
<range>
<min>-1</min>
<max>1</max>
</range>
<output>fcs/rudder-pos-norm</output>
</aerosurface_scale>
</channel>
<!--
=== Static Trim ============================================
-->
<property value="0.65">fcs/static-trim-cmd-norm</property>
<channel name="StaticTrim">
<!--
This is for fine-tuning the CoG.
In-flight pitch trim was mainly handled by the ballonets.
-->
<summer name="fcs/static-trim-norm">
<input>fcs/static-trim-cmd-norm</input>
<clipto>
<min>0</min>
<max>1</max>
</clipto>
</summer>
<summer name="fcs/inverse-static-trim-norm">
<input>-fcs/static-trim-norm</input>
<bias>1</bias>
<clipto>
<min>0</min>
<max>1</max>
</clipto>
</summer>
<aerosurface_scale name="Ballast Trim Fore">
<input>fcs/inverse-static-trim-norm</input>
<domain>
<min>0</min>
<max>1</max>
</domain>
<range>
<min>0</min>
<max>320</max>
</range>
<output>inertia/pointmass-weight-lbs[1]</output>
</aerosurface_scale>
<aerosurface_scale name="Ballast Trim Aft">
<input>fcs/static-trim-norm</input>
<domain>
<min>0</min>
<max>1</max>
</domain>
<range>
<min>0</min>
<max>320</max>
</range>
<output>inertia/pointmass-weight-lbs[2]</output>
</aerosurface_scale>
</channel>
</flight_control>
<!--
==== Initial static condition weigh-off ====================================
-->
<system name="Weigh_Off">
<channel name="Initial_Static_Weigh_Off">
<!-- The weight of inertia/pointmass-weight-lbs[0] is set from Nasal. -->
<summer name="static-condition/net-lift-lbs">
<input> buoyant_forces/gas-cell[0]/buoyancy-lbs </input>
<input> -inertia/weight-lbs </input>
</summer>
</channel>
</system>
<!--
==== External reactions ====================================================
-->
<external_reactions>
<force name="added-mass-bx" frame="BODY">
<location unit="M">
<x> 20.0 </x>
<y> 0.0 </y>
<z> 0.0 </z>
</location>
<direction>
<x> 1.0 </x>
<y> 0.0 </y>
<z> 0.0 </z>
</direction>
</force>
<force name="added-mass-by" frame="BODY">
<location unit="M">
<x> 20.0 </x>
<y> 0.0 </y>
<z> 0.0 </z>
</location>
<direction>
<x> 0.0 </x>
<y> 1.0 </y>
<z> 0.0 </z>
</direction>
</force>
<force name="added-mass-bz" frame="BODY">
<location unit="M">
<x> 20.0 </x>
<y> 0.0 </y>
<z> 0.0 </z>
</location>
<direction>
<x> 0.0 </x>
<y> 0.0 </y>
<z> 1.0 </z>
</direction>
</force>
<force name="added-mass-pitch[0]" frame="BODY">
<location unit="M">
<x> 20.0 </x>
<y> 0.0 </y>
<z> -0.3048 </z>
</location>
<direction>
<x> 1.0 </x>
<y> 0.0 </y>
<z> 0.0 </z>
</direction>
</force>
<force name="added-mass-pitch[1]" frame="BODY">
<location unit="M">
<x> 20.0 </x>
<y> 0.0 </y>
<z> 0.3048 </z>
</location>
<direction>
<x> 1.0 </x>
<y> 0.0 </y>
<z> 0.0 </z>
</direction>
</force>
<force name="added-mass-yaw[0]" frame="BODY">
<location unit="M">
<x> 20.0 </x>
<y> -0.3048 </y>
<z> 0.0 </z>
</location>
<direction>
<x> 1.0 </x>
<y> 0.0 </y>
<z> 0.0 </z>
</direction>
</force>
<force name="added-mass-yaw[1]" frame="BODY">
<location unit="M">
<x> 20.0 </x>
<y> 0.3048 </y>
<z> 0.0 </z>
</location>
<direction>
<x> 1.0 </x>
<y> 0.0 </y>
<z> 0.0 </z>
</direction>
</force>
</external_reactions>
<!--
==== Aerodynamics ==========================================================
-->
<system name="Aerodynamic constants">
<!-- Aerodynamic constants. -->
<property value="143.42"> aero/constants/length-ft </property>
<property value="30.0"> aero/constants/diameter-ft </property>
<property value="21469.3"> aero/constants/length-diameter-ft2 </property>
<property value="70000"> aero/constants/volume-ft3 </property>
<property value="1698.5"> aero/constants/volume-ft3_2_3 </property>
<!-- Added mass constants. -->
<property value="-0.06"> aero/constants/added-mass/k-axial </property>
<property value="-0.89"> aero/constants/added-mass/k-traverse </property>
<property value="-0.69"> aero/constants/added-mass/k-rotational </property>
<property value="0.75"> aero/constants/added-mass/tweak-factor </property>
</system>
<system file="airship_added_mass"/>
<aerodynamics>
<!-- The envelope can be rigged at an angle to the car. -->
<function name="aero/envelope-alpha-rad">
<sum>
<product>
<value> 1.00 </value> <!-- Envelope pitch offset deg w.r.t. car. -->
<value> 0.017453293 </value>
</product>
<property> aero/alpha-rad </property>
</sum>
</function>
<function name="aero/envelope-alpha-deg">
<product>
<value> 57.29578 </value>
<property> aero/envelope-alpha-rad </property>
</product>
</function>
<!-- Relation between wind and body coordinate systems. -->
<function name="aero/tmp/wx">
<product>
<cos>
<property> aero/envelope-alpha-rad </property>
</cos>
<cos>
<property> aero/beta-rad </property>
</cos>
</product>
</function>
<function name="aero/tmp/wy">
<product>
<cos>
<property> aero/envelope-alpha-rad </property>
</cos>
<sin>
<property> aero/beta-rad </property>
</sin>
</product>
</function>
<function name="aero/tmp/wz">
<sin>
<property> aero/envelope-alpha-rad </property>
</sin>
</function>
<function name="aero/tmp/h_wy_wz">
<pow>
<sum>
<pow>
<property> aero/tmp/wy </property>
<value>2.0</value>
</pow>
<pow>
<property> aero/tmp/wz </property>
<value>2.0</value>
</pow>
</sum>
<value>0.5</value>
</pow>
</function>
<!-- Effective angle between envelope and relative wind. -->
<function name="aero/envelope-aoa-mag-rad">
<max>
<value>0.0</value>
<acos>
<property> aero/tmp/wx </property>
</acos>
</max>
</function>
<function name="aero/envelope-aoa-mag-deg">
<product>
<value> 57.29578 </value>
<property> aero/envelope-aoa-mag-rad </property>
</product>
</function>
<!--
=== Forces =================================================
-->
<function name="aero/force/L_env_aoa">
<description>Total_lift_force_from_envelope_due_to_aoa</description>
<!--
Formulation based on NACA report 432 "Force measurements on a
1/40-scale model of the U.S. Airship Akron" by Hugh B. Freeman.
C = L / (q * (vol)^(2/3))
-->
<product>
<property>aero/qbar-psf</property>
<property>aero/constants/volume-ft3_2_3</property>
<!-- Start CL_env -->
<table>
<independentVar lookup="row">aero/envelope-aoa-mag-deg</independentVar>
<!-- Virtual wind-tunnel data computed with Gerris. -->
<tableData>
0 0.000000
10 0.002911
20 0.007450
30 0.013047
45 0.016276
60 0.028917
75 0.028148
90 0.017636
105 -0.010199
120 -0.008625
135 -0.011184
150 -0.009168
165 -0.002132
180 0.000000
</tableData>
</table>
</product>
</function>
<!-- ================================================== -->
<axis name="DRAG">
<function name="aero/force/D_env_aoa">
<description>Drag_from_envelope_due_to_angle_of_attack</description>
<!--
Formulation based on NACA report 432 "Force measurements on a
1/40-scale model of the U.S. Airship Akron" by Hugh B. Freeman.
CD = D / (q * (vol)^(2/3))
-->
<!-- Note: This function accounts for drag due to both alpha and beta. -->
<product>
<property>aero/qbar-psf</property>
<property>aero/constants/volume-ft3_2_3</property>
<!-- Start CD -->
<table>
<independentVar lookup="row">aero/envelope-aoa-mag-deg</independentVar>
<!-- Virtual wind-tunnel data computed with Gerris. -->
<tableData>
0 0.0059211
10 0.0084486
20 0.0088926
30 0.0178950
45 0.0325350
60 0.0506840
75 0.0766400
90 0.0999370
105 0.0866310
120 0.0561820
135 0.0342520
150 0.0154610
165 0.0042752
180 0.0018604
</tableData>
</table>
</product>
</function>
<function name="aero/force/D_hfin_alpha">
<description>Drag_from_horizontal_fin_due_to_alpha</description>
<!--
Formulation based on NACA report 432 "Force measurements on a
1/40-scale model of the U.S. Airship Akron" by Hugh B. Freeman.
CD = D / (q * (vol)^(2/3))
-->
<product>
<property>aero/qbar-psf</property>
<property>aero/constants/volume-ft3_2_3</property>
<!-- Start CD -->
<table>
<independentVar lookup="row">aero/envelope-alpha-deg</independentVar>
<!-- Virtual wind-tunnel data computed with Gerris. -->
<tableData>
-180 0.0016346
-165 0.0135650
-150 0.0745610
-135 0.1331500
-120 0.1771500
-105 0.2169500
-90 0.1910000
-75 0.2154000
-60 0.17049
-45 0.14314
-30 0.072847
-20 0.027739
-10 0.0089855
0 0.0010200
10 0.0089855
20 0.027739
30 0.072847
45 0.14314
60 0.17049
75 0.2154000
90 0.1910000
105 0.2169500
120 0.1771500
135 0.1331500
150 0.0745610
165 0.0135650
180 0.0016346
</tableData>
</table>
</product>
</function>
<function name="aero/force/D_de">
<description>Drag_due_to_elevator_deflection</description>
<!--
Formulation based on NACA report 432 "Force measurements on a
1/40-scale model of the U.S. Airship Akron" by Hugh B. Freeman.
CD = D / (q * (vol)^(2/3))
-->
<product>
<property>aero/qbar-psf</property>
<property>aero/constants/volume-ft3_2_3</property>
<!-- Start CD -->
<value> 1.0 </value>
<table>
<independentVar lookup="row">fcs/elevator-pos-deg</independentVar>
<!-- Virtual wind-tunnel data computed with Gerris. -->
<tableData>
-30 0.020407
0 0
30 0.020407
</tableData>
</table>
</product>
</function>
<function name="aero/force/D_vfin_beta">
<description>Drag_from_vertical_fin_due_to_beta</description>
<!--
Formulation based on NACA report 432 "Force measurements on a
1/40-scale model of the U.S. Airship Akron" by Hugh B. Freeman.
CD = D / (q * (vol)^(2/3))
-->
<product>
<property>aero/qbar-psf</property>
<property>aero/constants/volume-ft3_2_3</property>
<!-- Start CD -->
<value> 1.0 </value> <!-- There is only one vertical fin as opposed to
two horizontal ones, though twice as big.
-->
<table>
<independentVar lookup="row">aero/beta-deg</independentVar>
<!-- Virtual wind-tunnel data computed with Gerris. -->
<tableData>
-180 0.0016346
-165 0.0135650
-150 0.0745610
-135 0.1331500
-120 0.1771500
-105 0.2169500
-90 0.1910000
-75 0.2154000
-60 0.17049
-45 0.14314
-30 0.072847
-20 0.027739
-10 0.0089855
0 0.0010200
10 0.0089855
20 0.027739
30 0.072847
45 0.14314
60 0.17049
75 0.2154000
90 0.1910000
105 0.2169500
120 0.1771500
135 0.1331500
150 0.0745610
165 0.0135650
180 0.0016346
</tableData>
</table>
</product>
</function>
<function name="aero/force/D_dr">
<description>Drag_due_to_rudder_deflection</description>
<!--
Formulation based on NACA report 432 "Force measurements on a
1/40-scale model of the U.S. Airship Akron" by Hugh B. Freeman.
CD = D / (q * (vol)^(2/3))
-->
<product>
<property>aero/qbar-psf</property>
<property>aero/constants/volume-ft3_2_3</property>
<!-- Start CD -->
<value> 1.0 </value>
<table>
<independentVar lookup="row">fcs/rudder-pos-deg</independentVar>
<!-- Virtual wind-tunnel data computed with Gerris. -->
<tableData>
-30 0.020407
0 0
30 0.020407
</tableData>
</table>
</product>
</function>
<function name="aero/force/D_car">
<description>Drag_from_car_and_rigging</description>
<!--
Formulation based on NACA report 432 "Force measurements on a
1/40-scale model of the U.S. Airship Akron" by Hugh B. Freeman.
CD = D / (q * (vol)^(2/3))
-->
<product>
<property>aero/qbar-psf</property>
<property>aero/constants/volume-ft3_2_3</property>
<!-- Start CD -->
<!-- According to [WD:1941:AATM]
the envelope on a small non-rigid contributes approximately
35% to the total air resistance.
I think they mean 'at zero alpha and beta'.
-->
<value> 1.6 </value>
<value> 0.0059211 </value>
</product>
</function>
</axis>
<!-- ================================================== -->
<axis name="SIDE">
<function name="aero/force/Y_env_beta">
<description>Side_force_from_envelope_due_to_beta</description>
<product>
<value> -1.0 </value> <!-- Note the sign! -->
<property> aero/force/L_env_aoa </property>
<quotient>
<property> aero/tmp/wy </property>
<max>
<value> 0.00001 </value>
<property> aero/tmp/h_wy_wz </property>
</max>
</quotient>
</product>
</function>
<function name="aero/force/Y_vfin_beta">
<description>Side_force_from_vertical_fin_due_to_beta</description>
<!--
Formulation based on NACA report 432 "Force measurements on a
1/40-scale model of the U.S. Airship Akron" by Hugh B. Freeman.
CY = Y / (q * (vol)^(2/3))
-->
<product>
<property>aero/qbar-psf</property>
<property>aero/constants/volume-ft3_2_3</property>
<!-- Start CY -->
<value> -1.0 </value> <!-- There is only one vertical fin as opposed to
two horizontal ones, though twice as big.
Tweaking needed. Note the sign!
-->
<table>
<independentVar lookup="row">aero/beta-deg</independentVar>
<!-- Virtual wind-tunnel data computed with Gerris. -->
<tableData>
-180 0.00000
-165 0.05372
-150 0.12950
-135 0.13525
-120 0.10292
-105 0.05388
-90 -0.00000
-75 -0.05502
-60 -0.098868
-45 -0.14402
-30 -0.12832
-20 -0.082526
-10 -0.035474
0 0.000000
10 0.035474
20 0.082526
30 0.12832
45 0.14402
60 0.098868
75 0.05502
90 0.00000
105 -0.05388
120 -0.10292
135 -0.13525
150 -0.12950
165 -0.05372
180 0.00000
</tableData>
</table>
</product>
</function>
<function name="aero/force/Y_dr">
<description>Side_force_due_to_rudder</description>
<!--
Formulation based on NACA report 432 "Force measurements on a
1/40-scale model of the U.S. Airship Akron" by Hugh B. Freeman.
CL = L / (q * (vol)^(2/3))
-->
<product>
<property>aero/qbar-psf</property>
<property>aero/constants/volume-ft3_2_3</property>
<!-- Start CL -->
<value> 0.5 </value> <!-- The rudder is not adjusted yet. -->
<table>
<independentVar lookup="row">fcs/rudder-pos-deg</independentVar>
<!-- Virtual wind-tunnel data computed with Gerris. -->
<tableData>
-30 -0.066622
0 0
30 0.066622
</tableData>
</table>
</product>
</function>
</axis>
<!-- ================================================== -->
<axis name="LIFT">
<function name="aero/force/L_env_alpha">
<description>Lift_from_envelope_due_to_alpha</description>
<product>
<property>aero/force/L_env_aoa</property>
<quotient>
<property> aero/tmp/wz </property>
<max>
<value> 0.00001 </value>
<property> aero/tmp/h_wy_wz </property>
</max>
</quotient>
</product>
</function>
<function name="aero/force/L_hfin_alpha">
<description>Lift_from_horizontal_fin_due_to_alpha</description>
<!--
Formulation based on NACA report 432 "Force measurements on a
1/40-scale model of the U.S. Airship Akron" by Hugh B. Freeman.
CL = L / (q * (vol)^(2/3))
-->
<product>
<property>aero/qbar-psf</property>
<property>aero/constants/volume-ft3_2_3</property>
<!-- Start CL -->
<table>
<independentVar lookup="row">aero/envelope-alpha-deg</independentVar>
<!-- Virtual wind-tunnel data computed with Gerris. -->
<tableData>
-180 0.00000
-165 0.05372
-150 0.12950
-135 0.13525
-120 0.10292
-105 0.05388
-90 -0.00000
-75 -0.05502
-60 -0.098868
-45 -0.14402
-30 -0.12832
-20 -0.082526
-10 -0.035474
0 0.000000
10 0.035474
20 0.082526
30 0.12832
45 0.14402
60 0.098868
75 0.05502
90 0.00000
105 -0.05388
120 -0.10292
135 -0.13525
150 -0.12950
165 -0.05372
180 0.00000
</tableData>
</table>
</product>
</function>
<function name="aero/force/L_dr">
<description>Lift_due_to_elevator</description>
<!--
Formulation based on NACA report 432 "Force measurements on a
1/40-scale model of the U.S. Airship Akron" by Hugh B. Freeman.
CL = L / (q * (vol)^(2/3))
-->
<p