1
0
Fork 0
A320-family/Systems/a320-adr.xml

1098 lines
34 KiB
XML

<!-- Airbus A320 ADR -->
<!-- Copyright (c) 2019 Jonathan Redpath -->
<system name="A320: ADR">
<channel name="ADR Align Fault" execrate="8">
<lag_filter name="velocities/r-aero-deg_sec_filter">
<input>velocities/r-aero-deg_sec</input>
<c1>1</c1>
</lag_filter>
<lag_filter name="velocities/v-north-fps_filter">
<input>velocities/v-north-fps</input>
<c1>1</c1>
</lag_filter>
<lag_filter name="velocities/v-east-fps_filter">
<input>velocities/v-east-fps</input>
<c1>1</c1>
</lag_filter>
<switch name="/systems/navigation/align-fault">
<default value="0"/>
<test logic="OR" value="1">
velocities/r-aero-deg_sec_filter ge 2
velocities/v-north-fps_filter ge 0.5
velocities/v-east-fps_filter ge 0.5
</test>
</switch>
</channel>
<channel name="ADR Inputs" execrate="2">
<fcs_function name="aero/alpha-deg-corrected">
<function>
<product>
<property>aero/alpha-deg</property>
<table>
<independentVar lookup="row">/velocities/airspeed-kt</independentVar>
<tableData>
0.00 0.0
59.99 0.0
60.00 1.0
</tableData>
</table>
</product>
</function>
</fcs_function>
<sensor name="/systems/navigation/probes/aoa-1">
<input>aero/alpha-deg-corrected</input>
<quantization name="/systems/navigation/adr/output/aoa-1">
<bits>12</bits>
<min>-180</min>
<max>180</max>
</quantization>
</sensor>
<sensor name="/systems/navigation/probes/aoa-2">
<input>aero/alpha-deg-corrected</input>
<quantization name="/systems/navigation/adr/output/aoa-2">
<bits>12</bits>
<min>-180</min>
<max>180</max>
</quantization>
</sensor>
<sensor name="/systems/navigation/probes/aoa-3">
<input>aero/alpha-deg-corrected</input>
<quantization name="/systems/navigation/adr/output/aoa-3">
<bits>12</bits>
<min>-180</min>
<max>180</max>
</quantization>
</sensor>
<sensor name="/systems/navigation/probes/pitot-1">
<input>/systems/pitot[0]/measured-total-pressure-inhg</input>
<quantization name="/systems/navigation/probes/pitot-1">
<bits>18</bits>
<min>2.953</min>
<max>41.34</max>
</quantization>
</sensor>
<sensor name="/systems/navigation/probes/pitot-2">
<input>/systems/pitot[1]/measured-total-pressure-inhg</input>
<quantization name="/systems/navigation/probes/pitot-2">
<bits>18</bits>
<min>2.953</min>
<max>41.34</max>
</quantization>
</sensor>
<sensor name="/systems/navigation/probes/pitot-3">
<input>/systems/pitot[2]/measured-total-pressure-inhg</input>
<quantization name="/systems/navigation/probes/pitot-3">
<bits>18</bits>
<min>2.953</min>
<max>41.34</max>
</quantization>
</sensor>
<sensor name="/systems/navigation/probes/static-1">
<input>/systems/static[0]/pressure-inhg</input>
<quantization name="/systems/navigation/probes/static-1">
<bits>18</bits>
<min>2.953</min>
<max>32.48</max>
</quantization>
</sensor>
<sensor name="/systems/navigation/probes/static-2">
<input>/systems/static[1]/pressure-inhg</input>
<quantization name="/systems/navigation/probes/static-2">
<bits>18</bits>
<min>2.953</min>
<max>32.48</max>
</quantization>
</sensor>
<sensor name="/systems/navigation/probes/static-3">
<input>/systems/static[2]/pressure-inhg</input>
<quantization name="/systems/navigation/probes/static-3">
<bits>18</bits>
<min>2.953</min>
<max>32.48</max>
</quantization>
</sensor>
<fcs_function name="/systems/navigation/probes/tat-1/compute-tat">
<function>
<product>
<value>0.995</value>
<property>propulsion/tat-c</property>
</product>
</function>
</fcs_function>
<fcs_function name="/systems/navigation/probes/tat-2/compute-tat">
<function>
<product>
<value>0.996</value>
<property>propulsion/tat-c</property>
</product>
</function>
</fcs_function>
<sensor name="/systems/navigation/probes/tat-1/tat">
<input>/systems/navigation/probes/tat-1/compute-tat</input>
<quantization name="/systems/navigation/adr/output/tat-1">
<bits>11</bits>
<min>-60</min>
<max>99</max>
</quantization>
</sensor>
<sensor name="/systems/navigation/probes/tat-2/tat">
<input>/systems/navigation/probes/tat-2/compute-tat</input>
<quantization name="/systems/navigation/adr/output/tat-2">
<bits>11</bits>
<min>-60</min>
<max>99</max>
</quantization>
</sensor>
</channel>
<channel name="ADR Computation" execrate="2">
<sensor name="/systems/navigation/adr/computation/baro-alt-1-capt">
<input>/instrumentation/altimeter[0]/pressure-alt-ft</input>
<quantization name="/systems/navigation/adr/output/baro-alt-1-capt">
<bits>17</bits>
<min>-2000</min>
<max>50000</max>
</quantization>
</sensor>
<sensor name="/systems/navigation/adr/computation/baro-alt-2-capt">
<input>/instrumentation/altimeter[1]/pressure-alt-ft</input>
<quantization name="/systems/navigation/adr/output/baro-alt-2-capt">
<bits>17</bits>
<min>-2000</min>
<max>50000</max>
</quantization>
</sensor>
<sensor name="/systems/navigation/adr/computation/baro-alt-3-capt">
<input>/instrumentation/altimeter[2]/pressure-alt-ft</input>
<quantization name="/systems/navigation/adr/output/baro-alt-3-capt">
<bits>17</bits>
<min>-2000</min>
<max>50000</max>
</quantization>
</sensor>
<sensor name="/systems/navigation/adr/computation/baro-alt-1-fo">
<input>/instrumentation/altimeter[3]/pressure-alt-ft</input>
<quantization name="/systems/navigation/adr/output/baro-alt-1-fo">
<bits>17</bits>
<min>-2000</min>
<max>50000</max>
</quantization>
</sensor>
<sensor name="/systems/navigation/adr/computation/baro-alt-2-fo">
<input>/instrumentation/altimeter[4]/pressure-alt-ft</input>
<quantization name="/systems/navigation/adr/output/baro-alt-2-fo">
<bits>17</bits>
<min>-2000</min>
<max>50000</max>
</quantization>
</sensor>
<sensor name="/systems/navigation/adr/computation/baro-alt-3-fo">
<input>/instrumentation/altimeter[5]/pressure-alt-ft</input>
<quantization name="/systems/navigation/adr/output/baro-alt-3-fo">
<bits>17</bits>
<min>-2000</min>
<max>50000</max>
</quantization>
</sensor>
<sensor name="/systems/navigation/adr/computation/baro-alt-corrected-1-capt">
<input>/instrumentation/altimeter[0]/indicated-altitude-ft</input>
<quantization name="/systems/navigation/adr/output/baro-alt-corrected-1-capt">
<bits>17</bits>
<min>-2000</min>
<max>50000</max>
</quantization>
</sensor>
<sensor name="/systems/navigation/adr/computation/baro-alt-corrected-2-capt">
<input>/instrumentation/altimeter[1]/indicated-altitude-ft</input>
<quantization name="/systems/navigation/adr/output/baro-alt-corrected-2-capt">
<bits>17</bits>
<min>-2000</min>
<max>50000</max>
</quantization>
</sensor>
<sensor name="/systems/navigation/adr/computation/baro-alt-corrected-3-capt">
<input>/instrumentation/altimeter[2]/indicated-altitude-ft</input>
<quantization name="/systems/navigation/adr/output/baro-alt-corrected-3-capt">
<bits>17</bits>
<min>-2000</min>
<max>50000</max>
</quantization>
</sensor>
<sensor name="/systems/navigation/adr/computation/baro-alt-corrected-1-fo">
<input>/instrumentation/altimeter[3]/indicated-altitude-ft</input>
<quantization name="/systems/navigation/adr/output/baro-alt-corrected-1-fo">
<bits>17</bits>
<min>-2000</min>
<max>50000</max>
</quantization>
</sensor>
<sensor name="/systems/navigation/adr/computation/baro-alt-corrected-2-fo">
<input>/instrumentation/altimeter[4]/indicated-altitude-ft</input>
<quantization name="/systems/navigation/adr/output/baro-alt-corrected-2-fo">
<bits>17</bits>
<min>-2000</min>
<max>50000</max>
</quantization>
</sensor>
<sensor name="/systems/navigation/adr/computation/baro-alt-corrected-3-fo">
<input>/instrumentation/altimeter[5]/indicated-altitude-ft</input>
<quantization name="/systems/navigation/adr/output/baro-alt-corrected-3-fo">
<bits>17</bits>
<min>-2000</min>
<max>50000</max>>
</quantization>
</sensor>
<fcs_function name="/systems/navigation/adr/computation/cas-1-product">
<function>
<product>
<value>5</value>
<difference>
<pow>
<sum>
<quotient>
<difference>
<property>/systems/navigation/probes/pitot-1</property> <!-- impact pressure -->
<property>/systems/navigation/probes/static-1</property>
</difference>
<value>29.9212553</value> <!-- use standard outside pressure -->
</quotient>
<value>1</value>
</sum>
<quotient>
<value>2</value>
<value>7</value>
</quotient>
</pow>
<value>1</value>
</difference>
</product>
</function>
<clipto>
<min>0</min>
<max>9999999999999999</max>
</clipto>
</fcs_function>
<fcs_function name="/systems/navigation/adr/computation/cas-1-compute"> <!-- same as mach but with sea level pressure and multiplied by speed of sound at sea level -->
<function>
<product>
<value>661.4746</value>
<pow>
<property>/systems/navigation/adr/computation/cas-1-product</property>
<value>0.5</value>
</pow>
</product>
</function>
</fcs_function>
<fcs_function name="/systems/navigation/adr/computation/cas-2-product">
<function>
<product>
<value>5</value>
<difference>
<pow>
<sum>
<quotient>
<difference>
<property>/systems/navigation/probes/pitot-2</property> <!-- impact pressure -->
<property>/systems/navigation/probes/static-2</property>
</difference>
<value>29.9212553</value> <!-- use standard outside pressure -->
</quotient>
<value>1</value>
</sum>
<quotient>
<value>2</value>
<value>7</value>
</quotient>
</pow>
<value>1</value>
</difference>
</product>
</function>
<clipto>
<min>0</min>
<max>9999999999999999</max>
</clipto>
</fcs_function>
<fcs_function name="/systems/navigation/adr/computation/cas-2-compute">
<function>
<product>
<value>661.4746</value>
<pow>
<property>/systems/navigation/adr/computation/cas-2-product</property>
<value>0.5</value>
</pow>
</product>
</function>
</fcs_function>
<fcs_function name="/systems/navigation/adr/computation/cas-3-product">
<function>
<product>
<value>5</value>
<difference>
<pow>
<sum>
<quotient>
<difference>
<property>/systems/navigation/probes/pitot-3</property> <!-- impact pressure -->
<property>/systems/navigation/probes/static-3</property>
</difference>
<value>29.9212553</value> <!-- use standard outside pressure -->
</quotient>
<value>1</value>
</sum>
<quotient>
<value>2</value>
<value>7</value>
</quotient>
</pow>
<value>1</value>
</difference>
</product>
</function>
<clipto>
<min>0</min>
<max>9999999999999999</max>
</clipto>
</fcs_function>
<fcs_function name="/systems/navigation/adr/computation/cas-3-compute">
<function>
<product>
<value>661.4746</value>
<pow>
<property>/systems/navigation/adr/computation/cas-3-product</property>
<value>0.5</value>
</pow>
</product>
</function>
</fcs_function>
<sensor name="/systems/navigation/adr/computation/cas-1">
<input>/systems/navigation/adr/computation/cas-1-compute</input>
<quantization name="/systems/navigation/adr/computation/cas-1">
<bits>14</bits>
<min>0</min>
<max>450</max>
</quantization>
</sensor>
<sensor name="/systems/navigation/adr/computation/cas-2">
<input>/systems/navigation/adr/computation/cas-2-compute</input>
<quantization name="/systems/navigation/adr/computation/cas-2">
<bits>14</bits>
<min>0</min>
<max>450</max>
</quantization>
</sensor>
<sensor name="/systems/navigation/adr/computation/cas-3">
<input>/systems/navigation/adr/computation/cas-3-compute</input>
<quantization name="/systems/navigation/adr/computation/cas-3">
<bits>14</bits>
<min>0</min>
<max>450</max>
</quantization>
</sensor>
<fcs_function name="/systems/navigation/adr/computation/mach-1-product">
<function>
<product>
<value>5</value> <!-- 2 / specific heat ratio - 1 -->
<difference>
<pow>
<sum>
<quotient>
<difference>
<property>/systems/navigation/probes/pitot-1</property> <!-- dynamic pressure -->
<property>/systems/navigation/probes/static-1</property>
</difference>
<property>/systems/navigation/probes/static-1</property> <!-- static pressure -->
</quotient>
<value>1</value>
</sum>
<quotient>
<value>2</value>
<value>7</value>
</quotient>
</pow>
<value>1</value>
</difference>
</product>
</function>
<clipto>
<min>0</min>
<max>999999999999</max>
</clipto>
</fcs_function>
<fcs_function name="/systems/navigation/adr/computation/mach-1-compute">
<function>
<pow>
<property>/systems/navigation/adr/computation/mach-1-product</property>
<value>0.5</value>
</pow>
</function>
</fcs_function>
<fcs_function name="/systems/navigation/adr/computation/mach-2-product">
<function>
<product>
<value>5</value> <!-- 2 / specific heat ratio - 1 -->
<difference>
<pow>
<sum>
<quotient>
<difference>
<property>/systems/navigation/probes/pitot-2</property> <!-- dynamic pressure -->
<property>/systems/navigation/probes/static-2</property>
</difference>
<property>/systems/navigation/probes/static-2</property> <!-- static pressure -->
</quotient>
<value>1</value>
</sum>
<quotient>
<value>2</value>
<value>7</value>
</quotient>
</pow>
<value>1</value>
</difference>
</product>
</function>
<clipto>
<min>0</min>
<max>999999999999</max>
</clipto>
</fcs_function>
<fcs_function name="/systems/navigation/adr/computation/mach-2-compute">
<function>
<pow>
<property>/systems/navigation/adr/computation/mach-2-product</property>
<value>0.5</value>
</pow>
</function>
</fcs_function>
<fcs_function name="/systems/navigation/adr/computation/mach-3-product">
<function>
<product>
<value>5</value> <!-- 2 / specific heat ratio - 1 -->
<difference>
<pow>
<sum>
<quotient>
<difference>
<property>/systems/navigation/probes/pitot-3</property> <!-- dynamic pressure -->
<property>/systems/navigation/probes/static-3</property>
</difference>
<property>/systems/navigation/probes/static-3</property> <!-- static pressure -->
</quotient>
<value>1</value>
</sum>
<quotient>
<value>2</value>
<value>7</value>
</quotient>
</pow>
<value>1</value>
</difference>
</product>
</function>
<clipto>
<min>0</min>
<max>999999999999</max>
</clipto>
</fcs_function>
<fcs_function name="/systems/navigation/adr/computation/mach-3-compute">
<function>
<pow>
<property>/systems/navigation/adr/computation/mach-3-product</property>
<value>0.5</value>
</pow>
</function>
</fcs_function>
<sensor name="/systems/navigation/adr/computation/mach-1">
<input>/systems/navigation/adr/computation/mach-1-compute</input>
<quantization name="/systems/navigation/adr/computation/mach-1">
<bits>16</bits>
<min>0</min>
<max>1.0</max> <!-- O_o -->
</quantization>
</sensor>
<sensor name="/systems/navigation/adr/computation/mach-2">
<input>/systems/navigation/adr/computation/mach-2-compute</input>
<quantization name="/systems/navigation/adr/computation/mach-2">
<bits>16</bits>
<min>0</min>
<max>1.0</max>
</quantization>
</sensor>
<sensor name="/systems/navigation/adr/computation/mach-3">
<input>/systems/navigation/adr/computation/mach-3-compute</input>
<quantization name="/systems/navigation/adr/computation/mach-3">
<bits>16</bits>
<min>0</min>
<max>1.0</max>
</quantization>
</sensor>
<sensor name="/systems/navigation/adr/computation/sat-1">
<input>/environment/temperature-degc</input>
<quantization name="/systems/navigation/adr/computation/sat-1">
<bits>11</bits>
<min>-99</min>
<max>80</max>
</quantization>
</sensor>
<sensor name="/systems/navigation/adr/computation/sat-2">
<input>/environment/temperature-degc</input>
<quantization name="/systems/navigation/adr/computation/sat-2">
<bits>11</bits>
<min>-99</min>
<max>80</max>
</quantization>
</sensor>
<fcs_function name="/systems/navigation/adr/computation/tas-1-compute">
<function>
<product>
<value>38.96695</value>
<property>/systems/navigation/adr/computation/mach-1</property>
<pow>
<sum>
<property>/systems/navigation/adr/computation/sat-1</property>
<value>273.15</value>
</sum>
<value>0.5</value>
</pow>
</product>
</function>
</fcs_function>
<fcs_function name="/systems/navigation/adr/computation/tas-2-compute">
<function>
<product>
<value>38.96695</value>
<property>/systems/navigation/adr/computation/mach-2</property>
<pow>
<sum>
<property>/systems/navigation/adr/computation/sat-2</property>
<value>273.15</value>
</sum>
<value>0.5</value>
</pow>
</product>
</function>
</fcs_function>
<fcs_function name="/systems/navigation/adr/computation/tas-3-compute">
<function>
<product>
<value>38.96695</value>
<property>/systems/navigation/adr/computation/mach-3</property>
<pow>
<sum>
<property>/systems/navigation/adr/computation/sat-1</property>
<value>273.15</value>
</sum>
<value>0.5</value>
</pow>
</product>
</function>
</fcs_function>
<sensor name="/systems/navigation/adr/computation/tas-1">
<input>/systems/navigation/adr/computation/tas-1-compute</input>
<quantization name="/systems/navigation/adr/computation/tas-1">
<bits>15</bits>
<min>0</min>
<max>599</max>
</quantization>
</sensor>
<sensor name="/systems/navigation/adr/computation/tas-2">
<input>/systems/navigation/adr/computation/tas-2-compute</input>
<quantization name="/systems/navigation/adr/computation/tas-2">
<bits>15</bits>
<min>0</min>
<max>599</max>
</quantization>
</sensor>
<sensor name="/systems/navigation/adr/computation/tas-3">
<input>/systems/navigation/adr/computation/tas-3-compute</input>
<quantization name="/systems/navigation/adr/computation/tas-3">
<bits>15</bits>
<min>0</min>
<max>599</max>
</quantization>
</sensor>
<fcs_function name="/systems/navigation/adr/computation/overspeed-vmo">
<function>
<ifthen>
<gt>
<max>
<property>/systems/navigation/adr/output/cas-1</property>
<property>/systems/navigation/adr/output/cas-2</property>
<property>/systems/navigation/adr/output/cas-3</property>
</max>
<value>354</value>
</gt>
<value>1</value>
<value>0</value>
</ifthen>
</function>
</fcs_function>
<fcs_function name="/systems/navigation/adr/computation/overspeed-mmo">
<function>
<ifthen>
<gt>
<max>
<property>/systems/navigation/adr/output/mach-1</property>
<property>/systems/navigation/adr/output/mach-2</property>
<property>/systems/navigation/adr/output/mach-3</property>
</max>
<value>0.826</value>
</gt>
<value>1</value>
<value>0</value>
</ifthen>
</function>
</fcs_function>
<switch name="/systems/navigation/adr/computation/overspeed-vle">
<default value="0"/>
<test logic="AND" value="1">
/systems/navigation/adr/computation/overspeed-vle-speed eq 1
<test logic="OR">
/ECAM/Lower/door-left ne 0
/ECAM/Lower/door-right ne 0
/ECAM/Lower/door-nose-left ne 0
/ECAM/Lower/door-nose-right ne 0
/gear/gear[0]/position-norm ne 0
/gear/gear[1]/position-norm ne 0
/gear/gear[2]/position-norm ne 0
</test>
</test>
</switch>
<fcs_function name="/systems/navigation/adr/computation/overspeed-vle-speed">
<function>
<ifthen>
<gt>
<max>
<property>/systems/navigation/adr/output/cas-1</property>
<property>/systems/navigation/adr/output/cas-2</property>
<property>/systems/navigation/adr/output/cas-3</property>
</max>
<value>284</value>
</gt>
<value>1</value>
<value>0</value>
</ifthen>
</function>
</fcs_function>
<fcs_function name="/systems/navigation/adr/computation/overspeed-vfe">
<function>
<ifthen>
<gt>
<max>
<property>/systems/navigation/adr/output/cas-1</property>
<property>/systems/navigation/adr/output/cas-2</property>
<property>/systems/navigation/adr/output/cas-3</property>
</max>
<property>/systems/navigation/adr/computation/overspeed-vfe-spd</property>
</gt>
<value>1</value>
<value>0</value>
</ifthen>
</function>
</fcs_function>
<fcs_function name="/systems/navigation/adr/computation/overspeed">
<function>
<max>
<property>/systems/navigation/adr/computation/overspeed-vmo</property>
<property>/systems/navigation/adr/computation/overspeed-mmo</property>
<property>/systems/navigation/adr/computation/overspeed-vle</property>
<property>/systems/navigation/adr/computation/overspeed-vfe</property>
</max>
</function>
</fcs_function>
<switch name="/systems/navigation/adr/computation/underspeed-difference">
<default value="2"/>
<test logic="OR" value="19">
/controls/flight/speedbrake eq 1.0
</test>
</switch>
<fcs_function name="/systems/navigation/adr/computation/underspeed">
<function>
<ifthen>
<lt>
<max>
<property>/systems/navigation/adr/output/cas-1</property>
<property>/systems/navigation/adr/output/cas-2</property>
<property>/systems/navigation/adr/output/cas-3</property>
</max>
<difference>
<property>/FMGC/internal/vls-min</property>
<property>/systems/navigation/adr/computation/underspeed-difference</property>
</difference>
</lt>
<value>1</value>
<value>0</value>
</ifthen>
</function>
</fcs_function>
</channel>
<channel name="ADR Output" execrate="2"> <!-- todo - need lowpass? -->
<!-- Copy Altimeter Settings -->
<pure_gain name="/instrumentation/altimeter[1]/setting-inhg">
<input>/instrumentation/altimeter[0]/setting-inhg</input>
<gain>1</gain>
</pure_gain>
<pure_gain name="/instrumentation/altimeter[2]/setting-inhg">
<input>/instrumentation/altimeter[0]/setting-inhg</input>
<gain>1</gain>
</pure_gain>
<pure_gain name="/instrumentation/altimeter[3]/setting-inhg">
<input>/instrumentation/altimeter[0]/setting-inhg</input>
<gain>1</gain>
</pure_gain>
<pure_gain name="/instrumentation/altimeter[4]/setting-inhg">
<input>/instrumentation/altimeter[0]/setting-inhg</input>
<gain>1</gain>
</pure_gain>
<pure_gain name="/instrumentation/altimeter[5]/setting-inhg">
<input>/instrumentation/altimeter[0]/setting-inhg</input>
<gain>1</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/aoa-1">
<input>/systems/navigation/probes/aoa-1</input>
<gain>/systems/navigation/adr/operating-1</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/aoa-2">
<input>/systems/navigation/probes/aoa-2</input>
<gain>/systems/navigation/adr/operating-2</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/aoa-3">
<input>/systems/navigation/probes/aoa-3</input>
<gain>/systems/navigation/adr/operating-3</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/baro-alt-1-capt">
<input>/systems/navigation/adr/computation/baro-alt-1-capt</input>
<gain>/systems/navigation/adr/operating-1</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/baro-alt-2-capt">
<input>/systems/navigation/adr/computation/baro-alt-2-capt</input>
<gain>/systems/navigation/adr/operating-2</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/baro-alt-3-capt">
<input>/systems/navigation/adr/computation/baro-alt-3-capt</input>
<gain>/systems/navigation/adr/operating-3</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/baro-alt-1-fo">
<input>/systems/navigation/adr/computation/baro-alt-1-fo</input>
<gain>/systems/navigation/adr/operating-1</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/baro-alt-2-fo">
<input>/systems/navigation/adr/computation/baro-alt-2-fo</input>
<gain>/systems/navigation/adr/operating-2</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/baro-alt-3-fo">
<input>/systems/navigation/adr/computation/baro-alt-3-fo</input>
<gain>/systems/navigation/adr/operating-3</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/baro-alt-corrected-1-capt">
<input>/systems/navigation/adr/computation/baro-alt-corrected-1-capt</input>
<gain>/systems/navigation/adr/operating-1</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/baro-alt-corrected-2-capt">
<input>/systems/navigation/adr/computation/baro-alt-corrected-2-capt</input>
<gain>/systems/navigation/adr/operating-2</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/baro-alt-corrected-3-capt">
<input>/systems/navigation/adr/computation/baro-alt-corrected-3-capt</input>
<gain>/systems/navigation/adr/operating-3</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/baro-alt-corrected-1-fo">
<input>/systems/navigation/adr/computation/baro-alt-corrected-1-fo</input>
<gain>/systems/navigation/adr/operating-1</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/baro-alt-corrected-2-fo">
<input>/systems/navigation/adr/computation/baro-alt-corrected-2-fo</input>
<gain>/systems/navigation/adr/operating-2</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/baro-alt-corrected-3-fo">
<input>/systems/navigation/adr/computation/baro-alt-corrected-3-fo</input>
<gain>/systems/navigation/adr/operating-3</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/cas-1">
<input>/systems/navigation/adr/computation/cas-1</input>
<gain>/systems/navigation/adr/operating-1</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/cas-2">
<input>/systems/navigation/adr/computation/cas-2</input>
<gain>/systems/navigation/adr/operating-2</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/cas-3">
<input>/systems/navigation/adr/computation/cas-3</input>
<gain>/systems/navigation/adr/operating-3</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/mach-1">
<input>/systems/navigation/adr/computation/mach-1</input>
<gain>/systems/navigation/adr/operating-1</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/mach-2">
<input>/systems/navigation/adr/computation/mach-2</input>
<gain>/systems/navigation/adr/operating-2</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/mach-3">
<input>/systems/navigation/adr/computation/mach-3</input>
<gain>/systems/navigation/adr/operating-3</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/sat-1">
<input>/systems/navigation/adr/computation/sat-1</input>
<gain>/systems/navigation/adr/operating-1</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/sat-2">
<input>/systems/navigation/adr/computation/sat-2</input>
<gain>/systems/navigation/adr/operating-2</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/sat-3">
<input>/systems/navigation/adr/computation/sat-1</input> <!-- ADIRU 3 sources from TAT 1 -->
<gain>/systems/navigation/adr/operating-3</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/tas-1">
<input>/systems/navigation/adr/computation/tas-1</input>
<gain>/systems/navigation/adr/operating-1</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/tas-2">
<input>/systems/navigation/adr/computation/tas-2</input>
<gain>/systems/navigation/adr/operating-2</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/tas-3">
<input>/systems/navigation/adr/computation/tas-3</input>
<gain>/systems/navigation/adr/operating-3</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/tat-1">
<input>/systems/navigation/probes/tat-1/tat</input>
<gain>/systems/navigation/adr/operating-1</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/tat-2">
<input>/systems/navigation/probes/tat-2/tat</input>
<gain>/systems/navigation/adr/operating-2</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/tat-3">
<input>/systems/navigation/probes/tat-1/tat</input> <!-- ADIRU 3 sources from TAT 1 -->
<gain>/systems/navigation/adr/operating-3</gain>
</pure_gain>
<fcs_function name="/systems/navigation/adr/any-adr-on">
<function>
<max>
<property>/systems/navigation/adr/operating-1</property>
<property>/systems/navigation/adr/operating-2</property>
<property>/systems/navigation/adr/operating-3</property>
</max>
</function>
</fcs_function>
<pure_gain name="/systems/navigation/adr/output/overspeed">
<input>/systems/navigation/adr/computation/overspeed</input>
<gain>/systems/navigation/adr/any-adr-on</gain>
</pure_gain>
<pure_gain name="/systems/navigation/adr/output/underspeed">
<input>/systems/navigation/adr/computation/underspeed</input>
<gain>/systems/navigation/adr/any-adr-on</gain>
</pure_gain>
<pure_gain name="/instrumentation/radar-altimeter[0]/radar-altitude-ft-corrected">
<input>/instrumentation/radar-altimeter[0]/radar-altitude-ft</input>
<gain>1</gain>
<clipto>
<min>0</min>
<max>5000</max>
</clipto>
</pure_gain>
<pure_gain name="/instrumentation/radar-altimeter[1]/radar-altitude-ft-corrected">
<input>/instrumentation/radar-altimeter[1]/radar-altitude-ft</input>
<gain>1</gain>
<clipto>
<min>0</min>
<max>5000</max>
</clipto>
</pure_gain>
<fcs_function name="/instrumentation/radar-altimeter-difference-ft">
<function>
<abs>
<difference>
<property>/instrumentation/radar-altimeter[0]/radar-altitude-ft-corrected</property>
<property>/instrumentation/radar-altimeter[1]/radar-altitude-ft-corrected</property>
</difference>
</abs>
</function>
</fcs_function>
<switch name="/instrumentation/transponder/altimeter-input/mode-c-alt-ft">
<test logic="AND" value="/instrumentation/altimeter[0]/mode-c-alt-ft">
/instrumentation/transponder/altimeter-input-src eq 1
</test>
<test logic="AND" value="/instrumentation/altimeter[1]/mode-c-alt-ft">
/instrumentation/transponder/altimeter-input-src eq 2
</test>
<test logic="AND" value="/instrumentation/altimeter[2]/mode-c-alt-ft">
/instrumentation/transponder/altimeter-input-src eq 3
</test>
</switch>
<switch name="/instrumentation/transponder/altimeter-input/mode-s-alt-ft">
<test logic="AND" value="/instrumentation/altimeter[0]/mode-s-alt-ft">
/instrumentation/transponder/altimeter-input-src eq 1
</test>
<test logic="AND" value="/instrumentation/altimeter[1]/mode-s-alt-ft">
/instrumentation/transponder/altimeter-input-src eq 2
</test>
<test logic="AND" value="/instrumentation/altimeter[2]/mode-s-alt-ft">
/instrumentation/transponder/altimeter-input-src eq 3
</test>
</switch>
<switch name="/instrumentation/transponder/airspeed-input">
<test logic="AND" value="/systems/navigation/adr/output/cas-1">
/instrumentation/transponder/airspeed-input-src eq 1
</test>
<test logic="AND" value="/systems/navigation/adr/output/cas-2">
/instrumentation/transponder/airspeed-input-src eq 2
</test>
<test logic="AND" value="/systems/navigation/adr/output/cas-3">
/instrumentation/transponder/airspeed-input-src eq 3
</test>
</switch>
<switch name="/it-autoflight/internal/current-mach-input">
<test logic="AND" value="/systems/navigation/adr/output/mach-1">
/FMGC/active-fmgc-channel eq 1
/systems/fmgc/cas-compare/cas-reject-1 eq 0
</test>
<test logic="AND" value="/systems/navigation/adr/output/mach-2">
/FMGC/active-fmgc-channel eq 2
/systems/fmgc/cas-compare/cas-reject-2 eq 0
</test>
<test logic="OR" value="/systems/navigation/adr/output/mach-3">
/systems/fmgc/cas-compare/cas-reject-1 eq 1
/systems/fmgc/cas-compare/cas-reject-2 eq 1
/systems/fmgc/cas-compare/cas-reject-3 eq 0
</test>
</switch>
<switch name="/it-autoflight/internal/current-speed-input">
<test logic="AND" value="/systems/navigation/adr/output/cas-1">
/FMGC/active-fmgc-channel eq 1
/systems/fmgc/cas-compare/cas-reject-1 eq 0
</test>
<test logic="AND" value="/systems/navigation/adr/output/cas-2">
/FMGC/active-fmgc-channel eq 2
/systems/fmgc/cas-compare/cas-reject-2 eq 0
</test>
<test logic="OR" value="/systems/navigation/adr/output/cas-3">
/systems/fmgc/cas-compare/cas-reject-1 eq 1
/systems/fmgc/cas-compare/cas-reject-2 eq 1
/systems/fmgc/cas-compare/cas-reject-3 eq 0
</test>
</switch>
</channel>
</system>