Library { Name "libdap" Version 3.00 BlockDataTips off BlockParametersDataTip off BlockAttributesDataTip off BlockPortWidthsDataTip off BlockDescriptionStringDataTip off BlockMaskParametersDataTip off ToolBar off StatusBar off BrowserShowLibraryLinks off BrowserLookUnderMasks off Created "Thu Jun 03 13:35:22 1999" Creator "barnard" UpdateHistory "UpdateHistoryNever" ModifiedByFormat "%" LastModifiedBy "barnard" ModifiedDateFormat "%" LastModifiedDate "Wed Jul 21 16:16:16 1999" ModelVersionFormat "1.%" ConfigurationManager "none" BlockDefaults { Orientation "right" ForegroundColor "black" BackgroundColor "white" DropShadow off NamePlacement "normal" FontName "Helvetica" FontSize 10 FontWeight "normal" FontAngle "normal" ShowName on } AnnotationDefaults { HorizontalAlignment "center" VerticalAlignment "middle" ForegroundColor "black" BackgroundColor "white" DropShadow off FontName "Helvetica" FontSize 10 FontWeight "normal" FontAngle "normal" } LineDefaults { FontName "Helvetica" FontSize 9 FontWeight "normal" FontAngle "normal" } System { Name "libdap" Location [224, 271, 594, 496] Open on ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" AutoZoom on ReportName "simulink-default.rpt" Block { BlockType SubSystem Name "Pitch Roll Control Law" Ports [2, 1, 0, 0, 0] Position [125, 132, 250, 188] BackgroundColor "cyan" NamePlacement "alternate" ShowPortLabels on MaskType "Control Law" MaskDescription "Implements Control Law for the LM. Works for ya" "w, u and v jet axes." MaskPromptString "Single Jet Accel:|Single Jet Switch Curve Accel" ":|Dead Band:|Min. Jet On Time:|Sample Time:" MaskStyleString "edit,edit,edit,edit,edit" MaskTunableValueString "on,on,on,on,on" MaskCallbackString "||||" MaskEnableString "on,on,on,on,on" MaskVisibilityString "on,on,on,on,on" MaskVariables "alph=@1;alphs=@2;DB=@3;tmin=@4;delt=@5;" MaskIconFrame on MaskIconOpaque on MaskIconRotate "none" MaskIconUnits "autoscale" MaskValueString "||DB|tmin|delt" System { Name "Pitch Roll Control Law" Location [92, 139, 1182, 694] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" AutoZoom on Block { BlockType Inport Name "Position" Position [15, 83, 45, 97] Port "1" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on Port { PortNumber 1 Name "e" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Inport Name "Rate" Position [15, 118, 45, 132] Port "2" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on Port { PortNumber 1 Name "edot" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Gain Name "2*alphs/( alph + alphs )" Position [445, 370, 485, 410] Orientation "up" BackgroundColor "cyan" Gain "2*alphs/( alph + alphs )" SaturateOnIntegerOverflow on } Block { BlockType Fcn Name ">= 0" Position [480, 275, 505, 305] BackgroundColor "cyan" Expr "u*( u >= 0 )" } Block { BlockType Abs Name "Abs" Position [345, 410, 375, 440] BackgroundColor "cyan" } Block { BlockType Constant Name "Accleration\nfrom a Single Jet" Position [35, 252, 80, 268] BackgroundColor "cyan" NamePlacement "alternate" Value "alph" } Block { BlockType SubSystem Name "Chart" Ports [8, 3, 0, 0, 0] Position [570, 57, 685, 313] ShowPortLabels on MaskType "Stateflow" MaskDescription "Stateflow diagram" MaskDisplay "plot(sf('Private','sfblk','xIcon'),sf('Priv" "ate','sfblk','yIcon'));text(0.5,0,sf('Private', 'sfblk', 'tIcon'),'Horizontal" "Al','Center','VerticalAl','Bottom');" MaskSelfModifiable on MaskIconFrame off MaskIconOpaque off MaskIconRotate "none" MaskIconUnits "autoscale" Port { PortNumber 1 Name "Jet Command" TestPoint off RTWStorageClass "Auto" } Port { PortNumber 2 Name "enable" TestPoint off RTWStorageClass "Auto" } Port { PortNumber 3 Name "ton" TestPoint off RTWStorageClass "Auto" } System { Name "Chart" Location [257, 457, 812, 717] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" AutoZoom on Block { BlockType Inport Name "Nofjets" Position [20, 101, 40, 119] Port "1" PortWidth "1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Inport Name "e" Position [20, 136, 40, 154] Port "2" PortWidth "2" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Inport Name "Firefct1" Position [20, 171, 40, 189] Port "3" PortWidth "1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Inport Name "Coastfct1" Position [20, 206, 40, 224] Port "4" PortWidth "1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Inport Name "Firefct2" Position [20, 246, 40, 264] Port "5" PortWidth "1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Inport Name "Coastfct2" Position [20, 281, 40, 299] Port "6" PortWidth "1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Inport Name "tjcalc1" Position [20, 316, 40, 334] Port "7" PortWidth "1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Inport Name "tjcalc" Position [20, 351, 40, 369] Port "8" PortWidth "1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Demux Name " Demux " Ports [1, 1, 0, 0, 0] Position [270, 375, 320, 415] Outputs "1" } Block { BlockType "S-Function" Name " SFunction " Tag "Stateflow S-Function libdap 1" Ports [8, 4, 0, 0, 0] Position [180, 152, 230, 373] FunctionName "sf_sfun" Parameters "delt,tmin" PortCounts "[8 4]" SFunctionModules "''" } Block { BlockType Terminator Name " Terminator " Position [460, 386, 480, 404] } Block { BlockType Outport Name "jets" Position [460, 101, 480, 119] Port "1" OutputWhenDisabled "held" InitialOutput "[]" } Block { BlockType Outport Name "enable" Position [460, 136, 480, 154] Port "2" OutputWhenDisabled "held" InitialOutput "[]" } Block { BlockType Outport Name "ton" Position [460, 171, 480, 189] Port "3" OutputWhenDisabled "held" InitialOutput "[]" } Line { SrcBlock " SFunction " SrcPort 4 DstBlock "ton" DstPort 1 } Line { SrcBlock " SFunction " SrcPort 3 DstBlock "enable" DstPort 1 } Line { SrcBlock "tjcalc" SrcPort 1 DstBlock " SFunction " DstPort 8 } Line { SrcBlock "tjcalc1" SrcPort 1 DstBlock " SFunction " DstPort 7 } Line { SrcBlock "Coastfct2" SrcPort 1 Points [120, 0] DstBlock " SFunction " DstPort 6 } Line { SrcBlock "Firefct2" SrcPort 1 Points [120, 0] DstBlock " SFunction " DstPort 5 } Line { SrcBlock "Coastfct1" SrcPort 1 DstBlock " SFunction " DstPort 4 } Line { SrcBlock "Firefct1" SrcPort 1 DstBlock " SFunction " DstPort 3 } Line { SrcBlock "e" SrcPort 1 DstBlock " SFunction " DstPort 2 } Line { SrcBlock "Nofjets" SrcPort 1 DstBlock " SFunction " DstPort 1 } Line { SrcBlock " SFunction " SrcPort 2 DstBlock "jets" DstPort 1 } Line { SrcBlock " SFunction " SrcPort 1 Points [20, 0] DstBlock " Demux " DstPort 1 } Line { SrcBlock " Demux " SrcPort 1 DstBlock " Terminator " DstPort 1 } } } Block { BlockType DigitalClock Name "Clock at counter\ntime tic (0.000625) clock" "t" Position [590, 416, 640, 434] BackgroundColor "yellow" NamePlacement "alternate" SampleTime "0.000625" } Block { BlockType DigitalClock Name "Clock at time\ndelt (Sample time)" Position [590, 436, 640, 454] BackgroundColor "yellow" SampleTime "delt" } Block { BlockType DataStoreRead Name "Data Store\nRead" Position [100, 349, 165, 381] ShowName off DataStoreName "PitchRollJets" SampleTime "delt" } Block { BlockType DataStoreRead Name "Data Store\nRead1" Position [312, 30, 378, 60] Orientation "down" ShowName off DataStoreName "PitchRollJets" SampleTime "delt" } Block { BlockType Constant Name "Dead Zone" Position [40, 470, 70, 500] BackgroundColor "cyan" Value "DB" } Block { BlockType Product Name "Divide\ne and edot\nby N*alph" Ports [3, 1, 0, 0, 0] Position [200, 236, 220, 284] BackgroundColor "cyan" Inputs "*//" SaturateOnIntegerOverflow on } Block { BlockType Product Name "Divide DB\nby N*alph" Ports [3, 1, 0, 0, 0] Position [185, 447, 205, 493] BackgroundColor "cyan" Inputs "//*" SaturateOnIntegerOverflow on } Block { BlockType SubSystem Name "Jet On TIme Counter" Ports [3, 1, 1, 0, 0] Position [705, 394, 810, 456] BackgroundColor "yellow" ShowPortLabels on Port { PortNumber 1 Name "Counter\nOutput" TestPoint off RTWStorageClass "Auto" } System { Name "Jet On TIme Counter" Location [297, 74, 1237, 613] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" AutoZoom on Block { BlockType Inport Name "ton" Position [50, 93, 80, 107] Port "1" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on Port { PortNumber 1 Name "ton" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Inport Name "Clock at tics" Position [50, 153, 80, 167] Port "2" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on Port { PortNumber 1 Name "Time in clockt\nmultiples" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Inport Name "Clock at\nSample Time" Position [50, 218, 80, 232] Port "3" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on Port { PortNumber 1 Name "Time in delt\nmultiples" TestPoint off RTWStorageClass "Auto" } } Block { BlockType EnablePort Name "Enable" Ports [0, 0, 0, 0, 0] Position [480, 15, 500, 35] StatesWhenEnabling "reset" ShowOutputPort off } Block { BlockType Constant Name "Constant" Position [400, 170, 430, 200] Orientation "left" NamePlacement "alternate" Value "0" } Block { BlockType RelationalOperator Name "Relational\nOperator" Position [400, 92, 430, 123] Operator ">" Port { PortNumber 1 Name "Stop Command" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Sum Name "Sum" Ports [2, 1, 0, 0, 0] Position [260, 90, 280, 110] ShowName off IconShape "round" Inputs "|+-" SaturateOnIntegerOverflow on Port { PortNumber 1 Name "Count down of ton" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Sum Name "Sum1" Ports [2, 1, 0, 0, 0] Position [190, 150, 210, 170] ShowName off IconShape "round" Inputs "|+-" SaturateOnIntegerOverflow on Port { PortNumber 1 Name "Time after last\nsample in clock tics" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Outport Name "Stop jets" Position [555, 103, 585, 117] Port "1" OutputWhenDisabled "held" InitialOutput "[]" } Line { SrcBlock "Constant" SrcPort 1 Points [-15, 0; 0, -70] DstBlock "Relational\nOperator" DstPort 2 } Line { Name "ton" Labels [0, 0] SrcBlock "ton" SrcPort 1 DstBlock "Sum" DstPort 1 } Line { Name "Time in clockt\nmultiples" Labels [0, 1] SrcBlock "Clock at tics" SrcPort 1 DstBlock "Sum1" DstPort 1 } Line { Name "Time in delt\nmultiples" Labels [0, 1] SrcBlock "Clock at\nSample Time" SrcPort 1 Points [115, 0] DstBlock "Sum1" DstPort 2 } Line { Name "Time after last\nsample in clock tics" SrcBlock "Sum1" SrcPort 1 Points [55, 0] DstBlock "Sum" DstPort 2 } Line { Name "Count down of ton" Labels [1, 0] SrcBlock "Sum" SrcPort 1 DstBlock "Relational\nOperator" DstPort 1 } Line { Name "Stop Command" Labels [1, 0] SrcBlock "Relational\nOperator" SrcPort 1 DstBlock "Stop jets" DstPort 1 } } } Block { BlockType Logic Name "Logical\nOperator" Ports [2, 1, 0, 0, 0] Position [840, 229, 865, 256] BackgroundColor "yellow" Operator "NOR" Inputs "2" } Block { BlockType Logic Name "Logical\nOperator1" Ports [2, 1, 0, 0, 0] Position [900, 238, 920, 262] BackgroundColor "yellow" Operator "OR" Inputs "2" } Block { BlockType Mux Name "Mux3" Ports [2, 1, 0, 0, 0] Position [135, 73, 140, 142] ShowName off Inputs "2" DisplayOption "bar" Port { PortNumber 1 Name "" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Product Name "Product" Ports [2, 1, 0, 0, 0] Position [945, 226, 975, 259] BackgroundColor "yellow" Inputs "2" SaturateOnIntegerOverflow on } Block { BlockType Selector Name "Select e/alph" Position [265, 413, 295, 437] BackgroundColor "cyan" Elements "[1]" InputPortWidth "2" Port { PortNumber 1 Name "e/alph" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Selector Name "Select edot/alph" Position [300, 247, 335, 273] BackgroundColor "cyan" Elements "[2]" InputPortWidth "2" } Block { BlockType Product Name "Square" Ports [2, 1, 0, 0, 0] Position [413, 295, 437, 315] Orientation "down" BackgroundColor "cyan" NamePlacement "alternate" Inputs "2" SaturateOnIntegerOverflow on Port { PortNumber 1 Name "(edot/alph)^2" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Math Name "Square root" Ports [1, 1, 0, 0, 0] Position [520, 275, 550, 305] BackgroundColor "cyan" Operator "sqrt" OutputSignalType "auto" } Block { BlockType SubSystem Name "Subsystem" Ports [2, 1, 0, 0, 0] Position [400, 123, 500, 152] BackgroundColor "cyan" ShowName off ShowPortLabels on System { Name "Subsystem" Location [303, 80, 1243, 619] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" AutoZoom on Block { BlockType Inport Name "e and edot" Position [30, 15, 60, 30] Orientation "down" BackgroundColor "cyan" Port "1" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Inport Name "NofJets" Position [135, 95, 165, 115] BackgroundColor "cyan" NamePlacement "alternate" Port "2" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Gain Name "1/(2*alph)" Position [280, 113, 370, 167] BackgroundColor "cyan" Gain "1/(2*alph)" SaturateOnIntegerOverflow on } Block { BlockType Constant Name "Constant2" Position [315, 15, 345, 45] BackgroundColor "cyan" ShowName off Value "DB" } Block { BlockType Selector Name "Select e" Position [75, 48, 105, 72] BackgroundColor "cyan" Elements "[1]" InputPortWidth "2" Port { PortNumber 1 Name "e" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Selector Name "Select edot" Position [75, 129, 105, 151] BackgroundColor "cyan" Elements "[2]" InputPortWidth "2" Port { PortNumber 1 Name "edot" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Sum Name "Sum1" Ports [3, 1, 0, 0, 0] Position [385, 50, 405, 70] BackgroundColor "cyan" ShowName off IconShape "round" Inputs "-++" SaturateOnIntegerOverflow on } Block { BlockType Product Name "edot^2" Ports [3, 1, 0, 0, 0] Position [195, 121, 220, 159] BackgroundColor "cyan" Inputs "/**" SaturateOnIntegerOverflow on Port { PortNumber 1 Name "edot^2" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Outport Name "Firefct1" Position [430, 53, 460, 67] BackgroundColor "cyan" Port "1" OutputWhenDisabled "held" InitialOutput "[]" } Line { Name "edot^2" Labels [0, 0] SrcBlock "edot^2" SrcPort 1 DstBlock "1/(2*alph)" DstPort 1 } Line { Name "edot" Labels [0, 0] SrcBlock "Select edot" SrcPort 1 Points [35, 0] Branch { DstBlock "edot^2" DstPort 2 } Branch { Points [0, 10] DstBlock "edot^2" DstPort 3 } } Line { SrcBlock "NofJets" SrcPort 1 Points [10, 0] DstBlock "edot^2" DstPort 1 } Line { SrcBlock "e and edot" SrcPort 1 Points [0, 25] Branch { DstBlock "Select e" DstPort 1 } Branch { Points [0, 80] DstBlock "Select edot" DstPort 1 } } Line { SrcBlock "1/(2*alph)" SrcPort 1 Points [20, 0] DstBlock "Sum1" DstPort 3 } Line { SrcBlock "Constant2" SrcPort 1 Points [45, 0] DstBlock "Sum1" DstPort 1 } Line { Name "e" Labels [0, 0] SrcBlock "Select e" SrcPort 1 DstBlock "Sum1" DstPort 2 } Line { SrcBlock "Sum1" SrcPort 1 DstBlock "Firefct1" DstPort 1 } Annotation { Position [275, 209] Text "Firefct1\nThis function establishes whe" "n the jets are to be fired in a negative sense\nFirefct1 = e + edot ^2/(2*N*a" "lph) - DB" } } } Block { BlockType SubSystem Name "Subsystem1" Ports [2, 1, 0, 0, 0] Position [400, 153, 500, 182] BackgroundColor "cyan" ShowName off ShowPortLabels on System { Name "Subsystem1" Location [301, 78, 1241, 617] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" AutoZoom on Block { BlockType Inport Name "e and edot" Position [30, 15, 60, 30] Orientation "down" BackgroundColor "cyan" Port "1" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Inport Name "NofJets" Position [135, 90, 165, 110] BackgroundColor "cyan" NamePlacement "alternate" Port "2" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Gain Name "1/(2*alph)" Position [280, 113, 370, 167] BackgroundColor "cyan" Gain "1/(2*alphs)" SaturateOnIntegerOverflow on } Block { BlockType Constant Name "Constant2" Position [315, 15, 345, 45] BackgroundColor "cyan" ShowName off Value "DB" } Block { BlockType Selector Name "Select e" Position [75, 48, 105, 72] BackgroundColor "cyan" Elements "[1]" InputPortWidth "2" Port { PortNumber 1 Name "e" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Selector Name "Select edot" Position [75, 129, 105, 151] BackgroundColor "cyan" Elements "[2]" InputPortWidth "2" Port { PortNumber 1 Name "edot" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Sum Name "Sum1" Ports [3, 1, 0, 0, 0] Position [385, 50, 405, 70] BackgroundColor "cyan" ShowName off IconShape "round" Inputs "-+-" SaturateOnIntegerOverflow on } Block { BlockType Product Name "edot^2" Ports [3, 1, 0, 0, 0] Position [195, 121, 220, 159] BackgroundColor "cyan" Inputs "/**" SaturateOnIntegerOverflow on Port { PortNumber 1 Name "edot^2" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Outport Name "Coastfct1" Position [430, 53, 460, 67] BackgroundColor "cyan" Port "1" OutputWhenDisabled "held" InitialOutput "[]" } Line { SrcBlock "Sum1" SrcPort 1 DstBlock "Coastfct1" DstPort 1 } Line { Name "e" Labels [0, 0] SrcBlock "Select e" SrcPort 1 DstBlock "Sum1" DstPort 2 } Line { SrcBlock "Constant2" SrcPort 1 Points [45, 0] DstBlock "Sum1" DstPort 1 } Line { SrcBlock "1/(2*alph)" SrcPort 1 Points [20, 0] DstBlock "Sum1" DstPort 3 } Line { SrcBlock "e and edot" SrcPort 1 Points [0, 25] Branch { Points [0, 80] DstBlock "Select edot" DstPort 1 } Branch { DstBlock "Select e" DstPort 1 } } Line { SrcBlock "NofJets" SrcPort 1 Points [10, 0] DstBlock "edot^2" DstPort 1 } Line { Name "edot" Labels [0, 0] SrcBlock "Select edot" SrcPort 1 Points [35, 0] Branch { Points [0, 10] DstBlock "edot^2" DstPort 3 } Branch { DstBlock "edot^2" DstPort 2 } } Line { Name "edot^2" Labels [0, 0] SrcBlock "edot^2" SrcPort 1 DstBlock "1/(2*alph)" DstPort 1 } Annotation { Position [275, 209] Text "Coastfct1\nThis function establishes wh" "en the jets are to be turned off (coasting)\nCoastfct1 = e - edot ^2/(2*N*alp" "hs) - DB" } } } Block { BlockType SubSystem Name "Subsystem2" Ports [2, 1, 0, 0, 0] Position [400, 183, 500, 212] BackgroundColor "cyan" ShowName off ShowPortLabels on System { Name "Subsystem2" Location [301, 78, 1241, 617] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" AutoZoom on Block { BlockType Inport Name "e and edot" Position [30, 15, 60, 30] Orientation "down" BackgroundColor "cyan" Port "1" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Inport Name "NofJets" Position [130, 90, 160, 110] BackgroundColor "cyan" NamePlacement "alternate" Port "2" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Gain Name "1/(2*alph)" Position [280, 113, 370, 167] BackgroundColor "cyan" Gain "1/(2*alph)" SaturateOnIntegerOverflow on } Block { BlockType Constant Name "Constant2" Position [315, 15, 345, 45] BackgroundColor "cyan" ShowName off Value "DB" } Block { BlockType Selector Name "Select e" Position [75, 48, 105, 72] BackgroundColor "cyan" Elements "[1]" InputPortWidth "2" Port { PortNumber 1 Name "e" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Selector Name "Select edot" Position [75, 129, 105, 151] BackgroundColor "cyan" Elements "[2]" InputPortWidth "2" Port { PortNumber 1 Name "edot" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Sum Name "Sum1" Ports [3, 1, 0, 0, 0] Position [385, 50, 405, 70] BackgroundColor "cyan" ShowName off IconShape "round" Inputs "++-" SaturateOnIntegerOverflow on } Block { BlockType Product Name "edot^2" Ports [3, 1, 0, 0, 0] Position [195, 121, 220, 159] BackgroundColor "cyan" Inputs "/**" SaturateOnIntegerOverflow on Port { PortNumber 1 Name "edot^2" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Outport Name "Firefct2" Position [430, 53, 460, 67] BackgroundColor "cyan" Port "1" OutputWhenDisabled "held" InitialOutput "[]" } Line { Name "edot^2" Labels [0, 0] SrcBlock "edot^2" SrcPort 1 DstBlock "1/(2*alph)" DstPort 1 } Line { Name "edot" Labels [0, 0] SrcBlock "Select edot" SrcPort 1 Points [35, 0] Branch { DstBlock "edot^2" DstPort 2 } Branch { Points [0, 10] DstBlock "edot^2" DstPort 3 } } Line { SrcBlock "NofJets" SrcPort 1 Points [15, 0] DstBlock "edot^2" DstPort 1 } Line { SrcBlock "e and edot" SrcPort 1 Points [0, 25] Branch { DstBlock "Select e" DstPort 1 } Branch { Points [0, 80] DstBlock "Select edot" DstPort 1 } } Line { SrcBlock "1/(2*alph)" SrcPort 1 Points [20, 0] DstBlock "Sum1" DstPort 3 } Line { SrcBlock "Constant2" SrcPort 1 Points [45, 0] DstBlock "Sum1" DstPort 1 } Line { Name "e" Labels [0, 0] SrcBlock "Select e" SrcPort 1 DstBlock "Sum1" DstPort 2 } Line { SrcBlock "Sum1" SrcPort 1 DstBlock "Firefct2" DstPort 1 } Annotation { Position [275, 209] Text "Firefct2\nThis function establishes whe" "n the jets are to be fired in a positive sense\nFirefct2 = e - edot ^2/(2*N*a" "lph) + DB" } } } Block { BlockType SubSystem Name "Subsystem3" Ports [2, 1, 0, 0, 0] Position [400, 213, 500, 242] BackgroundColor "cyan" ShowName off ShowPortLabels on System { Name "Subsystem3" Location [301, 78, 1241, 617] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" AutoZoom on Block { BlockType Inport Name "e and edot" Position [30, 15, 60, 30] Orientation "down" BackgroundColor "cyan" Port "1" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Inport Name "NofJets" Position [135, 90, 165, 110] BackgroundColor "cyan" NamePlacement "alternate" Port "2" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Gain Name "1/(2*alph)" Position [280, 113, 370, 167] BackgroundColor "cyan" Gain "1/(2*alphs)" SaturateOnIntegerOverflow on } Block { BlockType Constant Name "Constant2" Position [315, 15, 345, 45] BackgroundColor "cyan" ShowName off Value "DB" } Block { BlockType Selector Name "Select e" Position [75, 48, 105, 72] BackgroundColor "cyan" Elements "[1]" InputPortWidth "2" Port { PortNumber 1 Name "e" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Selector Name "Select edot" Position [75, 129, 105, 151] BackgroundColor "cyan" Elements "[2]" InputPortWidth "2" Port { PortNumber 1 Name "edot" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Sum Name "Sum1" Ports [3, 1, 0, 0, 0] Position [385, 50, 405, 70] BackgroundColor "cyan" ShowName off IconShape "round" Inputs "+++" SaturateOnIntegerOverflow on } Block { BlockType Product Name "edot^2" Ports [3, 1, 0, 0, 0] Position [195, 121, 220, 159] BackgroundColor "cyan" Inputs "/**" SaturateOnIntegerOverflow on Port { PortNumber 1 Name "edot^2" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Outport Name "Coastfct2" Position [430, 53, 460, 67] BackgroundColor "cyan" Port "1" OutputWhenDisabled "held" InitialOutput "[]" } Line { Name "edot^2" Labels [0, 0] SrcBlock "edot^2" SrcPort 1 DstBlock "1/(2*alph)" DstPort 1 } Line { Name "edot" Labels [0, 0] SrcBlock "Select edot" SrcPort 1 Points [35, 0] Branch { DstBlock "edot^2" DstPort 2 } Branch { Points [0, 10] DstBlock "edot^2" DstPort 3 } } Line { SrcBlock "NofJets" SrcPort 1 Points [10, 0] DstBlock "edot^2" DstPort 1 } Line { SrcBlock "e and edot" SrcPort 1 Points [0, 25] Branch { DstBlock "Select e" DstPort 1 } Branch { Points [0, 80] DstBlock "Select edot" DstPort 1 } } Line { SrcBlock "1/(2*alph)" SrcPort 1 Points [20, 0] DstBlock "Sum1" DstPort 3 } Line { SrcBlock "Constant2" SrcPort 1 Points [45, 0] DstBlock "Sum1" DstPort 1 } Line { Name "e" Labels [0, 0] SrcBlock "Select e" SrcPort 1 DstBlock "Sum1" DstPort 2 } Line { SrcBlock "Sum1" SrcPort 1 DstBlock "Coastfct2" DstPort 1 } Annotation { Position [275, 209] Text "Coastfct2\nThis function establishes wh" "en the jets are to be turned off (coasting)\nCoastfct1 = e + edot ^2/(2*N*alp" "hs) + DB" } } } Block { BlockType Sum Name "Sum" Ports [3, 1, 0, 0, 0] Position [415, 415, 435, 435] BackgroundColor "cyan" ShowName off IconShape "round" Inputs "++-" SaturateOnIntegerOverflow on } Block { BlockType Gain Name "divide by 2" Position [406, 355, 444, 385] Orientation "down" BackgroundColor "cyan" NamePlacement "alternate" Gain "0.5" SaturateOnIntegerOverflow on } Block { BlockType Outport Name "Jet\nCommand" Position [1020, 240, 1050, 250] BackgroundColor "yellow" Port "1" OutputWhenDisabled "held" InitialOutput "0" } Line { SrcBlock "Data Store\nRead1" SrcPort 1 Points [0, 15] Branch { Points [0, 65] Branch { Points [0, 30] Branch { Points [0, 30] Branch { Points [0, 30] DstBlock "Subsystem3" DstPort 2 } Branch { DstBlock "Subsystem2" DstPort 2 } } Branch { DstBlock "Subsystem1" DstPort 2 } } Branch { DstBlock "Subsystem" DstPort 2 } } Branch { DstBlock "Chart" DstPort 1 } } Line { Name "edot" Labels [0, 1] SrcBlock "Rate" SrcPort 1 DstBlock "Mux3" DstPort 2 } Line { Name "e" Labels [0, 1] SrcBlock "Position" SrcPort 1 DstBlock "Mux3" DstPort 1 } Line { Name "" SrcBlock "Mux3" SrcPort 1 Points [20, 0] Branch { Labels [-1, 1] DstBlock "Chart" DstPort 2 } Branch { Labels [1, 0] Points [80, 0] Branch { Points [-80, 0; 0, 135] DstBlock "Divide\ne and edot\nby N*alph" DstPort 1 } Branch { Points [0, 20] Branch { DstBlock "Subsystem" DstPort 1 } Branch { Points [0, 30] Branch { DstBlock "Subsystem1" DstPort 1 } Branch { Points [0, 30] Branch { DstBlock "Subsystem2" DstPort 1 } Branch { Points [0, 30] DstBlock "Subsystem3" DstPort 1 } } } } } } Line { Name "(edot/alph)^2" Labels [0, 0] SrcBlock "Square" SrcPort 1 DstBlock "divide by 2" DstPort 1 } Line { SrcBlock "Square root" SrcPort 1 DstBlock "Chart" DstPort 8 } Line { Name "Jet Command" Labels [0, 0] SrcBlock "Chart" SrcPort 1 Points [235, 0; 0, 135] DstBlock "Product" DstPort 1 } Line { SrcBlock "Select edot/alph" SrcPort 1 Points [80, 0] Branch { DstBlock "Square" DstPort 1 } Branch { Points [10, 0] Branch { DstBlock "Chart" DstPort 7 } Branch { DstBlock "Square" DstPort 2 } } } Line { Name "e/alph" Labels [0, 0] SrcBlock "Select e/alph" SrcPort 1 DstBlock "Abs" DstPort 1 } Line { SrcBlock "divide by 2" SrcPort 1 DstBlock "Sum" DstPort 1 } Line { SrcBlock "Sum" SrcPort 1 DstBlock "2*alphs/( alph + alphs )" DstPort 1 } Line { SrcBlock "Abs" SrcPort 1 DstBlock "Sum" DstPort 2 } Line { Labels [0, 0] SrcBlock "Divide\ne and edot\nby N*alph" SrcPort 1 Points [20, 0] Branch { DstBlock "Select edot/alph" DstPort 1 } Branch { Points [0, 165] DstBlock "Select e/alph" DstPort 1 } } Line { SrcBlock "Data Store\nRead" SrcPort 1 Points [0, 0] Branch { Points [0, -90] DstBlock "Divide\ne and edot\nby N*alph" DstPort 3 } Branch { DstBlock "Divide DB\nby N*alph" DstPort 1 } } Line { Labels [1, 0] SrcBlock "Accleration\nfrom a Single Jet" SrcPort 1 Points [10, 0] Branch { DstBlock "Divide\ne and edot\nby N*alph" DstPort 2 } Branch { Points [0, 210] DstBlock "Divide DB\nby N*alph" DstPort 2 } } Line { SrcBlock "Dead Zone" SrcPort 1 DstBlock "Divide DB\nby N*alph" DstPort 3 } Line { SrcBlock "Divide DB\nby N*alph" SrcPort 1 Points [215, 0] DstBlock "Sum" DstPort 3 } Line { Name "enable" Labels [1, 0] SrcBlock "Chart" SrcPort 2 Points [65, 0; 0, 50] Branch { DstBlock "Jet On TIme Counter" DstPort enable } Branch { Labels [1, 0] DstBlock "Logical\nOperator" DstPort 1 } } Line { SrcBlock "Logical\nOperator1" SrcPort 1 DstBlock "Product" DstPort 2 } Line { Name "ton" SrcBlock "Chart" SrcPort 3 DstBlock "Jet On TIme Counter" DstPort 1 } Line { SrcBlock "Clock at counter\ntime tic (0.000625) clock" "t" SrcPort 1 DstBlock "Jet On TIme Counter" DstPort 2 } Line { SrcBlock "Clock at time\ndelt (Sample time)" SrcPort 1 DstBlock "Jet On TIme Counter" DstPort 3 } Line { Name "Counter\nOutput" Labels [0, 0] SrcBlock "Jet On TIme Counter" SrcPort 1 Points [10, 0] Branch { Labels [-1, 0] DstBlock "Logical\nOperator" DstPort 2 } Branch { Points [60, 0] DstBlock "Logical\nOperator1" DstPort 2 } } Line { SrcBlock "Logical\nOperator" SrcPort 1 DstBlock "Logical\nOperator1" DstPort 1 } Line { SrcBlock "Subsystem3" SrcPort 1 DstBlock "Chart" DstPort 6 } Line { SrcBlock "Subsystem2" SrcPort 1 DstBlock "Chart" DstPort 5 } Line { SrcBlock "Subsystem1" SrcPort 1 DstBlock "Chart" DstPort 4 } Line { SrcBlock "Subsystem" SrcPort 1 DstBlock "Chart" DstPort 3 } Line { Labels [0, 0] SrcBlock "Product" SrcPort 1 DstBlock "Jet\nCommand" DstPort 1 } Line { SrcBlock "2*alphs/( alph + alphs )" SrcPort 1 DstBlock ">= 0" DstPort 1 } Line { SrcBlock ">= 0" SrcPort 1 DstBlock "Square root" DstPort 1 } Annotation { Position [974, 315] BackgroundColor "yellow" Text "Logic implements:\n~(enable | stopjets) | s" "topjets" } } } Block { BlockType SubSystem Name "Yaw Control Law" Ports [2, 1, 0, 0, 0] Position [125, 52, 250, 108] BackgroundColor "cyan" NamePlacement "alternate" ShowPortLabels on MaskType "Control Law" MaskDescription "Implements Control Law for the LM. Works for ya" "w, u and v jet axes." MaskPromptString "Single Jet Accel:|Single Jet Switch Curve Accel" ":|Dead Band:|Min Jet On Time:|Sample Time:" MaskStyleString "edit,edit,edit,edit,edit" MaskTunableValueString "on,on,on,on,on" MaskCallbackString "||||" MaskEnableString "on,on,on,on,on" MaskVisibilityString "on,on,on,on,on" MaskVariables "alph=@1;alphs=@2;DB=@3;tmin=@4;delt=@5;" MaskIconFrame on MaskIconOpaque on MaskIconRotate "none" MaskIconUnits "autoscale" MaskValueString "||DB|tmin|delt" System { Name "Yaw Control Law" Location [48, 95, 1138, 650] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" AutoZoom on Block { BlockType Inport Name "Position" Position [15, 83, 45, 97] Port "1" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on Port { PortNumber 1 Name "e" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Inport Name "Rate" Position [15, 118, 45, 132] Port "2" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on Port { PortNumber 1 Name "edot" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Gain Name "2*alphs/( alph + alphs )" Position [450, 365, 490, 405] Orientation "up" BackgroundColor "cyan" Gain "2*alphs/( alph + alphs )" SaturateOnIntegerOverflow on } Block { BlockType Fcn Name ">= 0" Position [485, 274, 510, 306] BackgroundColor "cyan" Expr "u*( u >= 0 )" } Block { BlockType Abs Name "Abs" Position [345, 410, 375, 440] BackgroundColor "cyan" } Block { BlockType Constant Name "Accleration\nfrom a Single Jet" Position [35, 252, 80, 268] BackgroundColor "cyan" NamePlacement "alternate" Value "alph" } Block { BlockType SubSystem Name "Chart" Ports [8, 3, 0, 0, 0] Position [570, 57, 685, 313] ShowPortLabels on MaskType "Stateflow" MaskDescription "Stateflow diagram" MaskDisplay "plot(sf('Private','sfblk','xIcon'),sf('Priv" "ate','sfblk','yIcon'));text(0.5,0,sf('Private', 'sfblk', 'tIcon'),'Horizontal" "Al','Center','VerticalAl','Bottom');" MaskSelfModifiable on MaskIconFrame off MaskIconOpaque off MaskIconRotate "none" MaskIconUnits "autoscale" Port { PortNumber 1 Name "Jet Command" TestPoint off RTWStorageClass "Auto" } Port { PortNumber 2 Name "enable" TestPoint off RTWStorageClass "Auto" } Port { PortNumber 3 Name "ton" TestPoint off RTWStorageClass "Auto" } System { Name "Chart" Location [257, 457, 812, 717] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" AutoZoom on Block { BlockType Inport Name "Nofjets" Position [20, 101, 40, 119] Port "1" PortWidth "1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Inport Name "e" Position [20, 136, 40, 154] Port "2" PortWidth "2" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Inport Name "Firefct1" Position [20, 171, 40, 189] Port "3" PortWidth "1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Inport Name "Coastfct1" Position [20, 206, 40, 224] Port "4" PortWidth "1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Inport Name "Firefct2" Position [20, 246, 40, 264] Port "5" PortWidth "1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Inport Name "Coastfct2" Position [20, 281, 40, 299] Port "6" PortWidth "1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Inport Name "tjcalc1" Position [20, 316, 40, 334] Port "7" PortWidth "1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Inport Name "tjcalc" Position [20, 351, 40, 369] Port "8" PortWidth "1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Demux Name " Demux " Ports [1, 1, 0, 0, 0] Position [270, 375, 320, 415] Outputs "1" } Block { BlockType "S-Function" Name " SFunction " Tag "Stateflow S-Function libdap 4" Ports [8, 4, 0, 0, 0] Position [180, 152, 230, 373] FunctionName "sf_sfun" Parameters "delt,tmin" PortCounts "[8 4]" SFunctionModules "''" } Block { BlockType Terminator Name " Terminator " Position [460, 386, 480, 404] } Block { BlockType Outport Name "jets" Position [460, 101, 480, 119] Port "1" OutputWhenDisabled "held" InitialOutput "[]" } Block { BlockType Outport Name "enable" Position [460, 136, 480, 154] Port "2" OutputWhenDisabled "held" InitialOutput "[]" } Block { BlockType Outport Name "ton" Position [460, 171, 480, 189] Port "3" OutputWhenDisabled "held" InitialOutput "[]" } Line { SrcBlock " Demux " SrcPort 1 DstBlock " Terminator " DstPort 1 } Line { SrcBlock " SFunction " SrcPort 1 Points [20, 0] DstBlock " Demux " DstPort 1 } Line { SrcBlock " SFunction " SrcPort 2 DstBlock "jets" DstPort 1 } Line { SrcBlock "Nofjets" SrcPort 1 DstBlock " SFunction " DstPort 1 } Line { SrcBlock "e" SrcPort 1 DstBlock " SFunction " DstPort 2 } Line { SrcBlock "Firefct1" SrcPort 1 DstBlock " SFunction " DstPort 3 } Line { SrcBlock "Coastfct1" SrcPort 1 DstBlock " SFunction " DstPort 4 } Line { SrcBlock "Firefct2" SrcPort 1 Points [120, 0] DstBlock " SFunction " DstPort 5 } Line { SrcBlock "Coastfct2" SrcPort 1 Points [120, 0] DstBlock " SFunction " DstPort 6 } Line { SrcBlock "tjcalc1" SrcPort 1 DstBlock " SFunction " DstPort 7 } Line { SrcBlock "tjcalc" SrcPort 1 DstBlock " SFunction " DstPort 8 } Line { SrcBlock " SFunction " SrcPort 3 DstBlock "enable" DstPort 1 } Line { SrcBlock " SFunction " SrcPort 4 DstBlock "ton" DstPort 1 } } } Block { BlockType DigitalClock Name "Clock at counter\ntime tic (0.000625) clock" "t" Position [590, 416, 640, 434] BackgroundColor "yellow" NamePlacement "alternate" SampleTime "0.000625" } Block { BlockType DigitalClock Name "Clock at time\ndelt (Sample time)" Position [590, 436, 640, 454] BackgroundColor "yellow" SampleTime "delt" } Block { BlockType DataStoreRead Name "Data Store\nRead" Position [110, 350, 155, 380] ShowName off DataStoreName "NofJets" SampleTime "delt" } Block { BlockType DataStoreRead Name "Data Store\nRead1" Position [322, 30, 368, 60] Orientation "down" ShowName off DataStoreName "NofJets" SampleTime "delt" } Block { BlockType DataStoreWrite Name "Data Store\nWrite" Position [195, 30, 245, 60] ShowName off DataStoreName "e_edot" SampleTime "-1" } Block { BlockType Constant Name "Dead Zone" Position [40, 470, 70, 500] BackgroundColor "cyan" Value "DB" } Block { BlockType Product Name "Divide\ne and edot\nby N*alph" Ports [3, 1, 0, 0, 0] Position [200, 236, 220, 284] BackgroundColor "cyan" Inputs "*//" SaturateOnIntegerOverflow on } Block { BlockType Product Name "Divide DB\nby N*alph" Ports [3, 1, 0, 0, 0] Position [185, 447, 205, 493] BackgroundColor "cyan" Inputs "//*" SaturateOnIntegerOverflow on } Block { BlockType SubSystem Name "Jet On TIme Counter" Ports [3, 1, 1, 0, 0] Position [705, 394, 810, 456] BackgroundColor "yellow" ShowPortLabels on Port { PortNumber 1 Name "Counter\nOutput" TestPoint off RTWStorageClass "Auto" } System { Name "Jet On TIme Counter" Location [299, 76, 1239, 615] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" AutoZoom on Block { BlockType Inport Name "ton" Position [50, 93, 80, 107] Port "1" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on Port { PortNumber 1 Name "ton" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Inport Name "Clock at tics" Position [50, 153, 80, 167] Port "2" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on Port { PortNumber 1 Name "Time in clockt\nmultiples" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Inport Name "Clock at\nSample Time" Position [50, 218, 80, 232] Port "3" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on Port { PortNumber 1 Name "Time in delt\nmultiples" TestPoint off RTWStorageClass "Auto" } } Block { BlockType EnablePort Name "Enable" Ports [0, 0, 0, 0, 0] Position [480, 15, 500, 35] StatesWhenEnabling "reset" ShowOutputPort off } Block { BlockType Constant Name "Constant" Position [400, 170, 430, 200] Orientation "left" NamePlacement "alternate" Value "0" } Block { BlockType RelationalOperator Name "Relational\nOperator" Position [400, 92, 430, 123] Operator ">" Port { PortNumber 1 Name "Stop Command" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Sum Name "Sum" Ports [2, 1, 0, 0, 0] Position [260, 90, 280, 110] ShowName off IconShape "round" Inputs "|+-" SaturateOnIntegerOverflow on Port { PortNumber 1 Name "Count down of ton" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Sum Name "Sum1" Ports [2, 1, 0, 0, 0] Position [190, 150, 210, 170] ShowName off IconShape "round" Inputs "|+-" SaturateOnIntegerOverflow on Port { PortNumber 1 Name "Time after last\nsample in clock tics" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Outport Name "Stop jets" Position [555, 103, 585, 117] Port "1" OutputWhenDisabled "held" InitialOutput "[]" } Line { Name "Stop Command" Labels [1, 0] SrcBlock "Relational\nOperator" SrcPort 1 DstBlock "Stop jets" DstPort 1 } Line { Name "Count down of ton" Labels [1, 0] SrcBlock "Sum" SrcPort 1 DstBlock "Relational\nOperator" DstPort 1 } Line { Name "Time after last\nsample in clock tics" SrcBlock "Sum1" SrcPort 1 Points [55, 0] DstBlock "Sum" DstPort 2 } Line { Name "Time in delt\nmultiples" Labels [0, 1] SrcBlock "Clock at\nSample Time" SrcPort 1 Points [115, 0] DstBlock "Sum1" DstPort 2 } Line { Name "Time in clockt\nmultiples" Labels [0, 1] SrcBlock "Clock at tics" SrcPort 1 DstBlock "Sum1" DstPort 1 } Line { Name "ton" Labels [0, 0] SrcBlock "ton" SrcPort 1 DstBlock "Sum" DstPort 1 } Line { SrcBlock "Constant" SrcPort 1 Points [-15, 0; 0, -70] DstBlock "Relational\nOperator" DstPort 2 } } } Block { BlockType Logic Name "Logical\nOperator" Ports [2, 1, 0, 0, 0] Position [840, 229, 865, 256] BackgroundColor "yellow" Operator "NOR" Inputs "2" } Block { BlockType Logic Name "Logical\nOperator1" Ports [2, 1, 0, 0, 0] Position [900, 238, 920, 262] BackgroundColor "yellow" Operator "OR" Inputs "2" } Block { BlockType Mux Name "Mux3" Ports [2, 1, 0, 0, 0] Position [135, 73, 140, 142] ShowName off Inputs "2" DisplayOption "bar" Port { PortNumber 1 Name "" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Product Name "Product" Ports [2, 1, 0, 0, 0] Position [945, 226, 975, 259] BackgroundColor "yellow" Inputs "2" SaturateOnIntegerOverflow on } Block { BlockType Selector Name "Select e/alph" Position [265, 413, 295, 437] BackgroundColor "cyan" Elements "[1]" InputPortWidth "2" Port { PortNumber 1 Name "e/alph" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Selector Name "Select edot/alph" Position [300, 247, 335, 273] BackgroundColor "cyan" Elements "[2]" InputPortWidth "2" } Block { BlockType Product Name "Square" Ports [2, 1, 0, 0, 0] Position [413, 295, 437, 315] Orientation "down" BackgroundColor "cyan" NamePlacement "alternate" Inputs "2" SaturateOnIntegerOverflow on Port { PortNumber 1 Name "(edot/alph)^2" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Math Name "Square root" Ports [1, 1, 0, 0, 0] Position [525, 275, 555, 305] BackgroundColor "cyan" Operator "sqrt" OutputSignalType "auto" } Block { BlockType SubSystem Name "Subsystem" Ports [2, 1, 0, 0, 0] Position [400, 123, 500, 152] BackgroundColor "cyan" ShowName off ShowPortLabels on System { Name "Subsystem" Location [303, 80, 1243, 619] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" AutoZoom on Block { BlockType Inport Name "e and edot" Position [30, 15, 60, 30] Orientation "down" BackgroundColor "cyan" Port "1" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Inport Name "NofJets" Position [135, 95, 165, 115] BackgroundColor "cyan" NamePlacement "alternate" Port "2" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Gain Name "1/(2*alph)" Position [280, 113, 370, 167] BackgroundColor "cyan" Gain "1/(2*alph)" SaturateOnIntegerOverflow on } Block { BlockType Constant Name "Constant2" Position [315, 15, 345, 45] BackgroundColor "cyan" ShowName off Value "DB" } Block { BlockType Selector Name "Select e" Position [75, 48, 105, 72] BackgroundColor "cyan" Elements "[1]" InputPortWidth "2" Port { PortNumber 1 Name "e" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Selector Name "Select edot" Position [75, 129, 105, 151] BackgroundColor "cyan" Elements "[2]" InputPortWidth "2" Port { PortNumber 1 Name "edot" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Sum Name "Sum1" Ports [3, 1, 0, 0, 0] Position [385, 50, 405, 70] BackgroundColor "cyan" ShowName off IconShape "round" Inputs "-++" SaturateOnIntegerOverflow on } Block { BlockType Product Name "edot^2" Ports [3, 1, 0, 0, 0] Position [195, 121, 220, 159] BackgroundColor "cyan" Inputs "/**" SaturateOnIntegerOverflow on Port { PortNumber 1 Name "edot^2" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Outport Name "Firefct1" Position [430, 53, 460, 67] BackgroundColor "cyan" Port "1" OutputWhenDisabled "held" InitialOutput "[]" } Line { SrcBlock "Sum1" SrcPort 1 DstBlock "Firefct1" DstPort 1 } Line { Name "e" Labels [0, 0] SrcBlock "Select e" SrcPort 1 DstBlock "Sum1" DstPort 2 } Line { SrcBlock "Constant2" SrcPort 1 Points [45, 0] DstBlock "Sum1" DstPort 1 } Line { SrcBlock "1/(2*alph)" SrcPort 1 Points [20, 0] DstBlock "Sum1" DstPort 3 } Line { SrcBlock "e and edot" SrcPort 1 Points [0, 25] Branch { Points [0, 80] DstBlock "Select edot" DstPort 1 } Branch { DstBlock "Select e" DstPort 1 } } Line { SrcBlock "NofJets" SrcPort 1 Points [10, 0] DstBlock "edot^2" DstPort 1 } Line { Name "edot" Labels [0, 0] SrcBlock "Select edot" SrcPort 1 Points [35, 0] Branch { Points [0, 10] DstBlock "edot^2" DstPort 3 } Branch { DstBlock "edot^2" DstPort 2 } } Line { Name "edot^2" Labels [0, 0] SrcBlock "edot^2" SrcPort 1 DstBlock "1/(2*alph)" DstPort 1 } Annotation { Position [275, 209] Text "Firefct1\nThis function establishes whe" "n the jets are to be fired in a negative sense\nFirefct1 = e + edot ^2/(2*N*a" "lph) - DB" } } } Block { BlockType SubSystem Name "Subsystem1" Ports [2, 1, 0, 0, 0] Position [400, 153, 500, 182] BackgroundColor "cyan" ShowName off ShowPortLabels on System { Name "Subsystem1" Location [301, 78, 1241, 617] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" AutoZoom on Block { BlockType Inport Name "e and edot" Position [30, 15, 60, 30] Orientation "down" BackgroundColor "cyan" Port "1" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Inport Name "NofJets" Position [135, 90, 165, 110] BackgroundColor "cyan" NamePlacement "alternate" Port "2" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Gain Name "1/(2*alph)" Position [280, 113, 370, 167] BackgroundColor "cyan" Gain "1/(2*alphs)" SaturateOnIntegerOverflow on } Block { BlockType Constant Name "Constant2" Position [315, 15, 345, 45] BackgroundColor "cyan" ShowName off Value "DB" } Block { BlockType Selector Name "Select e" Position [75, 48, 105, 72] BackgroundColor "cyan" Elements "[1]" InputPortWidth "2" Port { PortNumber 1 Name "e" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Selector Name "Select edot" Position [75, 129, 105, 151] BackgroundColor "cyan" Elements "[2]" InputPortWidth "2" Port { PortNumber 1 Name "edot" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Sum Name "Sum1" Ports [3, 1, 0, 0, 0] Position [385, 50, 405, 70] BackgroundColor "cyan" ShowName off IconShape "round" Inputs "-+-" SaturateOnIntegerOverflow on } Block { BlockType Product Name "edot^2" Ports [3, 1, 0, 0, 0] Position [195, 121, 220, 159] BackgroundColor "cyan" Inputs "/**" SaturateOnIntegerOverflow on Port { PortNumber 1 Name "edot^2" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Outport Name "Coastfct1" Position [430, 53, 460, 67] BackgroundColor "cyan" Port "1" OutputWhenDisabled "held" InitialOutput "[]" } Line { Name "edot^2" Labels [0, 0] SrcBlock "edot^2" SrcPort 1 DstBlock "1/(2*alph)" DstPort 1 } Line { Name "edot" Labels [0, 0] SrcBlock "Select edot" SrcPort 1 Points [35, 0] Branch { DstBlock "edot^2" DstPort 2 } Branch { Points [0, 10] DstBlock "edot^2" DstPort 3 } } Line { SrcBlock "NofJets" SrcPort 1 Points [10, 0] DstBlock "edot^2" DstPort 1 } Line { SrcBlock "e and edot" SrcPort 1 Points [0, 25] Branch { DstBlock "Select e" DstPort 1 } Branch { Points [0, 80] DstBlock "Select edot" DstPort 1 } } Line { SrcBlock "1/(2*alph)" SrcPort 1 Points [20, 0] DstBlock "Sum1" DstPort 3 } Line { SrcBlock "Constant2" SrcPort 1 Points [45, 0] DstBlock "Sum1" DstPort 1 } Line { Name "e" Labels [0, 0] SrcBlock "Select e" SrcPort 1 DstBlock "Sum1" DstPort 2 } Line { SrcBlock "Sum1" SrcPort 1 DstBlock "Coastfct1" DstPort 1 } Annotation { Position [275, 209] Text "Coastfct1\nThis function establishes wh" "en the jets are to be turned off (coasting)\nCoastfct1 = e - edot ^2/(2*N*alp" "hs) - DB" } } } Block { BlockType SubSystem Name "Subsystem2" Ports [2, 1, 0, 0, 0] Position [400, 183, 500, 212] BackgroundColor "cyan" ShowName off ShowPortLabels on System { Name "Subsystem2" Location [301, 78, 1241, 617] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" AutoZoom on Block { BlockType Inport Name "e and edot" Position [30, 15, 60, 30] Orientation "down" BackgroundColor "cyan" Port "1" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Inport Name "NofJets" Position [130, 90, 160, 110] BackgroundColor "cyan" NamePlacement "alternate" Port "2" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Gain Name "1/(2*alph)" Position [280, 113, 370, 167] BackgroundColor "cyan" Gain "1/(2*alph)" SaturateOnIntegerOverflow on } Block { BlockType Constant Name "Constant2" Position [315, 15, 345, 45] BackgroundColor "cyan" ShowName off Value "DB" } Block { BlockType Selector Name "Select e" Position [75, 48, 105, 72] BackgroundColor "cyan" Elements "[1]" InputPortWidth "2" Port { PortNumber 1 Name "e" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Selector Name "Select edot" Position [75, 129, 105, 151] BackgroundColor "cyan" Elements "[2]" InputPortWidth "2" Port { PortNumber 1 Name "edot" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Sum Name "Sum1" Ports [3, 1, 0, 0, 0] Position [385, 50, 405, 70] BackgroundColor "cyan" ShowName off IconShape "round" Inputs "++-" SaturateOnIntegerOverflow on } Block { BlockType Product Name "edot^2" Ports [3, 1, 0, 0, 0] Position [195, 121, 220, 159] BackgroundColor "cyan" Inputs "/**" SaturateOnIntegerOverflow on Port { PortNumber 1 Name "edot^2" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Outport Name "Firefct2" Position [430, 53, 460, 67] BackgroundColor "cyan" Port "1" OutputWhenDisabled "held" InitialOutput "[]" } Line { SrcBlock "Sum1" SrcPort 1 DstBlock "Firefct2" DstPort 1 } Line { Name "e" Labels [0, 0] SrcBlock "Select e" SrcPort 1 DstBlock "Sum1" DstPort 2 } Line { SrcBlock "Constant2" SrcPort 1 Points [45, 0] DstBlock "Sum1" DstPort 1 } Line { SrcBlock "1/(2*alph)" SrcPort 1 Points [20, 0] DstBlock "Sum1" DstPort 3 } Line { SrcBlock "e and edot" SrcPort 1 Points [0, 25] Branch { Points [0, 80] DstBlock "Select edot" DstPort 1 } Branch { DstBlock "Select e" DstPort 1 } } Line { SrcBlock "NofJets" SrcPort 1 Points [15, 0] DstBlock "edot^2" DstPort 1 } Line { Name "edot" Labels [0, 0] SrcBlock "Select edot" SrcPort 1 Points [35, 0] Branch { Points [0, 10] DstBlock "edot^2" DstPort 3 } Branch { DstBlock "edot^2" DstPort 2 } } Line { Name "edot^2" Labels [0, 0] SrcBlock "edot^2" SrcPort 1 DstBlock "1/(2*alph)" DstPort 1 } Annotation { Position [275, 209] Text "Firefct2\nThis function establishes whe" "n the jets are to be fired in a positive sense\nFirefct2 = e - edot ^2/(2*N*a" "lph) + DB" } } } Block { BlockType SubSystem Name "Subsystem3" Ports [2, 1, 0, 0, 0] Position [400, 213, 500, 242] BackgroundColor "cyan" ShowName off ShowPortLabels on System { Name "Subsystem3" Location [301, 78, 1241, 617] Open off ModelBrowserVisibility off ModelBrowserWidth 200 ScreenColor "white" PaperOrientation "landscape" PaperPositionMode "auto" PaperType "usletter" PaperUnits "inches" ZoomFactor "100" AutoZoom on Block { BlockType Inport Name "e and edot" Position [30, 15, 60, 30] Orientation "down" BackgroundColor "cyan" Port "1" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Inport Name "NofJets" Position [135, 90, 165, 110] BackgroundColor "cyan" NamePlacement "alternate" Port "2" PortWidth "-1" SampleTime "-1" DataType "auto" SignalType "auto" Interpolate on } Block { BlockType Gain Name "1/(2*alph)" Position [280, 113, 370, 167] BackgroundColor "cyan" Gain "1/(2*alphs)" SaturateOnIntegerOverflow on } Block { BlockType Constant Name "Constant2" Position [315, 15, 345, 45] BackgroundColor "cyan" ShowName off Value "DB" } Block { BlockType Selector Name "Select e" Position [75, 48, 105, 72] BackgroundColor "cyan" Elements "[1]" InputPortWidth "2" Port { PortNumber 1 Name "e" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Selector Name "Select edot" Position [75, 129, 105, 151] BackgroundColor "cyan" Elements "[2]" InputPortWidth "2" Port { PortNumber 1 Name "edot" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Sum Name "Sum1" Ports [3, 1, 0, 0, 0] Position [385, 50, 405, 70] BackgroundColor "cyan" ShowName off IconShape "round" Inputs "+++" SaturateOnIntegerOverflow on } Block { BlockType Product Name "edot^2" Ports [3, 1, 0, 0, 0] Position [195, 121, 220, 159] BackgroundColor "cyan" Inputs "/**" SaturateOnIntegerOverflow on Port { PortNumber 1 Name "edot^2" TestPoint off RTWStorageClass "Auto" } } Block { BlockType Outport Name "Coastfct2" Position [430, 53, 460, 67] BackgroundColor "cyan" Port "1" OutputWhenDisabled "held" InitialOutput "[]" } Line { SrcBlock "Sum1" SrcPort 1 DstBlock "Coastfct2" DstPort 1 } Line { Name "e" Labels [0, 0] SrcBlock "Select e" SrcPort 1 DstBlock "Sum1" DstPort 2 } Line { SrcBlock "Constant2" SrcPort 1 Points [45, 0] DstBlock "Sum1" DstPort 1 } Line { SrcBlock "1/(2*alph)" SrcPort 1 Points [20, 0] DstBlock "Sum1" DstPort 3 } Line { SrcBlock "e and edot" SrcPort 1 Points [0, 25] Branch { Points [0, 80] DstBlock "Select edot" DstPort 1 } Branch { DstBlock "Select e" DstPort 1 } } Line { SrcBlock "NofJets" SrcPort 1 Points [10, 0] DstBlock "edot^2" DstPort 1 } Line { Name "edot" Labels [0, 0] SrcBlock "Select edot" SrcPort 1 Points [35, 0] Branch { Points [0, 10] DstBlock "edot^2" DstPort 3 } Branch { DstBlock "edot^2" DstPort 2 } } Line { Name "edot^2" Labels [0, 0] SrcBlock "edot^2" SrcPort 1 DstBlock "1/(2*alph)" DstPort 1 } Annotation { Position [275, 209] Text "Coastfct2\nThis function establishes wh" "en the jets are to be turned off (coasting)\nCoastfct1 = e + edot ^2/(2*N*alp" "hs) + DB" } } } Block { BlockType Sum Name "Sum" Ports [3, 1, 0, 0, 0] Position [415, 415, 435, 435] BackgroundColor "cyan" ShowName off IconShape "round" Inputs "++-" SaturateOnIntegerOverflow on } Block { BlockType Gain Name "divide by 2" Position [406, 355, 444, 385] Orientation "down" BackgroundColor "cyan" NamePlacement "alternate" Gain "0.5" SaturateOnIntegerOverflow on } Block { BlockType Outport Name "Jet\nCommand" Position [1020, 240, 1050, 250] BackgroundColor "yellow" Port "1" OutputWhenDisabled "held" InitialOutput "0" } Line { Labels [0, 0] SrcBlock "Product" SrcPort 1 DstBlock "Jet\nCommand" DstPort 1 } Line { SrcBlock "Subsystem" SrcPort 1 DstBlock "Chart" DstPort 3 } Line { SrcBlock "Subsystem1" SrcPort 1 DstBlock "Chart" DstPort 4 } Line { SrcBlock "Subsystem2" SrcPort 1 DstBlock "Chart" DstPort 5 } Line { SrcBlock "Subsystem3" SrcPort 1 DstBlock "Chart" DstPort 6 } Line { SrcBlock "Logical\nOperator" SrcPort 1 DstBlock "Logical\nOperator1" DstPort 1 } Line { Name "Counter\nOutput" Labels [0, 0] SrcBlock "Jet On TIme Counter" SrcPort 1 Points [10, 0] Branch { Points [60, 0] DstBlock "Logical\nOperator1" DstPort 2 } Branch { Labels [-1, 0] DstBlock "Logical\nOperator" DstPort 2 } } Line { SrcBlock "Clock at time\ndelt (Sample time)" SrcPort 1 DstBlock "Jet On TIme Counter" DstPort 3 } Line { SrcBlock "Clock at counter\ntime tic (0.000625) clock" "t" SrcPort 1 DstBlock "Jet On TIme Counter" DstPort 2 } Line { Name "ton" SrcBlock "Chart" SrcPort 3 DstBlock "Jet On TIme Counter" DstPort 1 } Line { SrcBlock "Logical\nOperator1" SrcPort 1 DstBlock "Product" DstPort 2 } Line { Name "enable" Labels [1, 0] SrcBlock "Chart" SrcPort 2 Points [65, 0; 0, 50] Branch { Labels [1, 0] DstBlock "Logical\nOperator" DstPort 1 } Branch { DstBlock "Jet On TIme Counter" DstPort enable } } Line { SrcBlock "Divide DB\nby N*alph" SrcPort 1 Points [215, 0] DstBlock "Sum" DstPort 3 } Line { SrcBlock "Dead Zone" SrcPort 1 DstBlock "Divide DB\nby N*alph" DstPort 3 } Line { Labels [1, 0] SrcBlock "Accleration\nfrom a Single Jet" SrcPort 1 Points [10, 0] Branch { Points [0, 210] DstBlock "Divide DB\nby N*alph" DstPort 2 } Branch { DstBlock "Divide\ne and edot\nby N*alph" DstPort 2 } } Line { SrcBlock "Data Store\nRead" SrcPort 1 Points [10, 0] Branch { DstBlock "Divide DB\nby N*alph" DstPort 1 } Branch { Points [0, -90] DstBlock "Divide\ne and edot\nby N*alph" DstPort 3 } } Line { Labels [0, 0] SrcBlock "Divide\ne and edot\nby N*alph" SrcPort 1 Points [20, 0] Branch { Points [0, 165] DstBlock "Select e/alph" DstPort 1 } Branch { DstBlock "Select edot/alph" DstPort 1 } } Line { SrcBlock "Abs" SrcPort 1 DstBlock "Sum" DstPort 2 } Line { SrcBlock "Sum" SrcPort 1 Points [30, 0] DstBlock "2*alphs/( alph + alphs )" DstPort 1 } Line { SrcBlock "divide by 2" SrcPort 1 DstBlock "Sum" DstPort 1 } Line { Name "e/alph" Labels [0, 0] SrcBlock "Select e/alph" SrcPort 1 DstBlock "Abs" DstPort 1 } Line { SrcBlock "Select edot/alph" SrcPort 1 Points [80, 0] Branch { Points [10, 0] Branch { DstBlock "Square" DstPort 2 } Branch { DstBlock "Chart" DstPort 7 } } Branch { DstBlock "Square" DstPort 1 } } Line { Name "Jet Command" Labels [0, 0] SrcBlock "Chart" SrcPort 1 Points [235, 0; 0, 135] DstBlock "Product" DstPort 1 } Line { SrcBlock "Square root" SrcPort 1 DstBlock "Chart" DstPort 8 } Line { Name "(edot/alph)^2" Labels [0, 0] SrcBlock "Square" SrcPort 1 DstBlock "divide by 2" DstPort 1 } Line { Name "" SrcBlock "Mux3" SrcPort 1 Points [20, 0] Branch { Labels [1, 0] Points [80, 0] Branch { Points [0, 20] Branch { Points [0, 30] Branch { Points [0, 30] Branch { Points [0, 30] DstBlock "Subsystem3" DstPort 1 } Branch { DstBlock "Subsystem2" DstPort 1 } } Branch { DstBlock "Subsystem1" DstPort 1 } } Branch { DstBlock "Subsystem" DstPort 1 } } Branch { Points [-80, 0; 0, 135] DstBlock "Divide\ne and edot\nby N*alph" DstPort 1 } } Branch { Labels [-1, 1] DstBlock "Chart" DstPort 2 } Branch { Points [0, -65] DstBlock "Data Store\nWrite" DstPort 1 } } Line { Name "e" Labels [0, 1] SrcBlock "Position" SrcPort 1 DstBlock "Mux3" DstPort 1 } Line { Name "edot" Labels [0, 1] SrcBlock "Rate" SrcPort 1 DstBlock "Mux3" DstPort 2 } Line { SrcBlock "Data Store\nRead1" SrcPort 1 Points [0, 15] Branch { DstBlock "Chart" DstPort 1 } Branch { Points [0, 65] Branch { DstBlock "Subsystem" DstPort 2 } Branch { Points [0, 30] Branch { DstBlock "Subsystem1" DstPort 2 } Branch { Points [0, 30] Branch { DstBlock "Subsystem2" DstPort 2 } Branch { Points [0, 30] DstBlock "Subsystem3" DstPort 2 } } } } } Line { SrcBlock "2*alphs/( alph + alphs )" SrcPort 1 DstBlock ">= 0" DstPort 1 } Line { SrcBlock ">= 0" SrcPort 1 DstBlock "Square root" DstPort 1 } Annotation { Position [974, 315] BackgroundColor "yellow" Text "Logic implements:\n~(enable | stopjets) | s" "topjets" } } } } } # Finite State Machines # -- File save dated 21-Jul-1999 16:16:17 # # Stateflow Version 2.0 (R11) dated Jan 21 1999, 18:49:32 # # Stateflow { machine { id 1 name "libdap" created "03-Jun-1999 13:37:08" isLibrary 1 firstTarget 100 sfVersion 20011061 } chart { id 2 name "Pitch Roll Control Law/Chart" windowPosition [96.9375 -9.1875 802.5 583.5] viewLimits [1.642890094961103 1018.04692049722 8.089100388799636 741.2659207382549] zoomFactor 1.339135744930512 screen [1 1 1280 1024 1.333333333333333] treeNode [0 3 0 0] firstTransition 13 firstJunction 11 machine 1 decomposition CLUSTER_CHART firstData 36 updateMethod DISCRETE sampleTime "delt" chartFileNumber 1 } state { id 3 labelString "Wait_for_stable_rate" position [83.52547118143124 93.99919448992384 153.0094840295076 50.314534602234] fontSize 14 arrowSize 16.51108471748459 chart 2 treeNode [2 0 0 4] type OR_STATE decomposition CLUSTER_STATE } state { id 4 labelString "Start" position [511.9411940783963 154.8403175688534 126.0305582307131 94.79358299072359] fontSize 14 arrowSize 11.14469335822621 chart 2 treeNode [2 0 3 5] type OR_STATE decomposition CLUSTER_STATE } state { id 5 labelString "Fire_region_1\n" "en: jets=-Nofjets;\n" "ton=tjcalc+tjcalc1;" position [327.5100759646587 329.3670925684118 138.9093480593336 60.37458820121736] fontSize 14 arrowSize 16.51108471748459 chart 2 treeNode [2 0 4 6] type OR_STATE decomposition CLUSTER_STATE } state { id 6 labelString "Coast_region_2\n" "en: jets=0;\n" "ton=0;\n" "enable=0;" position [751.5069339248726 342.9313728620731 113.2169385558575 73.5672176512478] fontSize 14 arrowSize 16.51108471748459 chart 2 treeNode [2 0 5 7] type OR_STATE decomposition CLUSTER_STATE } state { id 7 labelString "Skip_a_Sample_2\n" "en:count--;" position [482.5928362291143 484.9900134854526 176.9205650765919 38.34942809163525] fontSize 14 arrowSize 8.159828116234983 chart 2 treeNode [2 0 6 8] type OR_STATE decomposition CLUSTER_STATE } state { id 8 labelString "Skip_a_Sample_1\n" "en:count--;" position [83.43972701493212 486.5732036682836 155.3164844171841 41.9607861174711] fontSize 14 arrowSize 8.159828116234983 chart 2 treeNode [2 0 7 9] type OR_STATE decomposition CLUSTER_STATE } state { id 9 labelString "Coast_region_1\n" "en: jets=0;\n" "ton=0;\n" "enable=0;" position [328.3853165208529 579.0607512492447 115.93431222477 73.9430488004258] fontSize 14 arrowSize 16.51108471748459 chart 2 treeNode [2 0 8 10] type OR_STATE decomposition CLUSTER_STATE } state { id 10 labelString "Fire_region_2\n" "en: jets=Nofjets;\n" "ton=tjcalc-tjcalc1;" position [739.6444472284898 582.1839579011951 142.3805059376953 61.41359266196281] fontSize 14 arrowSize 16.51108471748459 chart 2 treeNode [2 0 9 0] type OR_STATE decomposition CLUSTER_STATE } junction { id 11 position [280.4678040210363 456.3571640090672 7.845383944584719] arrowSize 8.966153079525393 chart 2 linkNode [2 0 12] type CONNECTIVE_JUNCTION } junction { id 12 position [684.1191488882689 536.3828068311653 7.845383944584719] arrowSize 8.966153079525393 chart 2 linkNode [2 11 0] type CONNECTIVE_JUNCTION } transition { id 13 labelString "[count==0]" labelPosition [280.1037173706675 57.78767972404233 65.28286756536244 18.07833255656191] fontSize 14 arrowSize 11.14469335822621 src { id 3 intersection [2 1 0 0.525185123245093 236.5349552109389 120.4236395460176] } dst { id 4 intersection [1 0 -1 0.4317943817241134 566.3604810479719 154.8403175688534] } midPoint [351.845147761782 74.29948436942504] chart 2 linkNode [2 0 14] dataLimits [236.5349552109396 569.7038890554397 58.52136898664094 154.8403175688534] } transition { id 14 labelString "/count=2;" labelPosition [63.10568225694277 74.60988712840293 57.24805309577938 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { intersection [0 0 0 0.4625 42.40782946576184 70.06349161005863] } dst { id 3 intersection [1 0 -1 0.3345342032418852 134.7123770096945 93.99919448992384] } midPoint [81.79676764675128 68.15056297989045] chart 2 linkNode [2 13 15] dataLimits [42.40782946576181 139.6657024249399 64.84457256697382 93.99919448992384] } transition { id 15 labelString "/count--;" labelPosition [142.7675607638381 180.9208099427002 50.21759043489419 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 3 intersection [3 0 1 0.263394136726765 196.233154253979 144.3137290921578] } dst { id 3 intersection [3 0 1 0.6654657967581148 134.7123770096945 144.3137290921578] } midPoint [181.8533401009667 175.419981033864] chart 2 linkNode [2 14 16] dataLimits [129.7590515944491 196.2331542539791 144.3137290921578 179.7939238007255] } transition { id 16 labelString "[ (e[1]<0 & Firefct2<0) | (e[1]>0 & Coastfct2>0) ]" labelPosition [711.3298764662989 153.1072510761231 282.2228582441054 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 4 intersection [2 1 0 0.1988163105578124 637.9717523091094 173.6868280036249] } dst { id 10 intersection [2 1 0 0.5667049915126292 882.024953166185 616.9873474094528] } midPoint [986.9430440137872 500.3482053540687] chart 2 linkNode [2 15 17] dataLimits [637.9717523091105 994.7367205927936 172.38330670578 621.9406728246981] } transition { id 17 labelString "[ (e[1]<0 & Coastfct1<=0 & Firefct2>0) ]" labelPosition [261.8346174171982 161.3961704917498 234.0139714266069 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 4 intersection [4 -1 0 0.7690323022713463 511.9411940783963 176.7345731916709] } dst { id 9 intersection [3 0 1 0.5768004578970466 377.4486643683964 653.0038000496705] } midPoint [81.40380961776395 571.0610975383665] chart 2 linkNode [2 16 18] dataLimits [24.95308999938709 511.9411940783945 176.7345731916722 691.5673414030123] } transition { id 18 labelString "[ (e[1]>0 & Coastfct2>=0 & Firefct1<0) ]" labelPosition [648.9682217714071 291.1555101178292 234.0139714266069 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 4 intersection [2 1 0 0.5652173913043463 637.9717523091094 208.4192992592623] } dst { id 6 intersection [1 0 -1 0.5508750929072579 813.8753254705059 342.9313728620731] } midPoint [717.8013310371048 220.2549059662833] chart 2 linkNode [2 17 19] dataLimits [637.9717523091097 818.8286508857512 208.419299259262 342.9313728620731] } transition { id 19 labelString "[ (e[1]>0 & Firefct1>0) | (e[1]<0 & Coastfct1<0) ]" labelPosition [249.2646905834524 278.1949513043674 282.2228582441054 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 4 intersection [4 -1 0 0.3695652173913059 511.9411940783963 214.6014894543095] } dst { id 5 intersection [1 0 -1 0.3761968529639385 379.7673355518524 329.3670925684118] } midPoint [446.6595660919443 233.8833886047286] chart 2 linkNode [2 18 20] dataLimits [374.814010136607 511.9411940783962 214.6014894543094 329.3670925684118] } transition { id 20 labelString "[e[1]>0 & Firefct1>0]" labelPosition [589.3284526262277 342.147046912355 122.5309206611418 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 6 intersection [4 -1 0 0.7362480538433518 751.5069339248726 362.3348696909194] } dst { id 5 intersection [2 1 0 0.5333296594174887 466.4194240239923 361.5666511312382] } midPoint [656.9490632928854 362.1207004335479] chart 2 linkNode [2 19 21] dataLimits [466.4194240239923 751.5069339248724 356.6133257159928 366.5199765464836] } transition { id 21 labelString "[count==0]" labelPosition [582.3725841189986 377.7515111915792 65.28286756536244 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 7 intersection [1 0 -1 0.3974806243417 552.9153328946444 484.9900134854526] } dst { id 6 intersection [4 -1 0 0.3890013329289441 751.5069339248726 387.8808447871118] } midPoint [602.857707609433 415.1109615864685] chart 2 linkNode [2 20 22] dataLimits [552.9153328946443 751.5069339248726 382.9275193718664 484.9900134854521] } transition { id 22 labelPosition [435.1143220200084 395.6686697499628 9.039166278280954 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 5 intersection [3 0 1 0.1354358187105796 447.6061227430236 389.7416807696292] } dst { id 5 intersection [3 0 1 0.417416269173039 408.4364022038062 389.7416807696292] } midPoint [436.2451597016932 413.9739498060508] chart 2 linkNode [2 21 23] dataLimits [403.4830767885608 447.6061227430236 389.7416807696292 416.1072794042004] } transition { id 23 labelString "[ton<2*delt]/enable=1;" labelPosition [165.2397085097891 395.6903594970495 130.5657351307249 18.07833255656191] fontSize 14 arrowSize 8.966153079525393 src { id 5 intersection [3 0 1 0.8171093294538161 352.9152997763635 389.7416807696292] } dst { id 11 intersection [0 -0.06266134173901142 -0.9980348472129954 -1 279.9762017366109 448.5271974426063] } midPoint [332.0687172536699 405.3811533211255] chart 2 linkNode [2 22 24] dataLimits [276.7298105887667 352.9152997763637 389.7416807696293 448.5271974426063] } transition { id 24 labelString "[e[1]<0 & Coastfct1<=0]" labelPosition [395.8989534646373 441.78859403644 142.6179568350995 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 5 intersection [3 0 1 0.5403308245028291 391.3624214559421 389.7416807696292] } dst { id 9 intersection [1 0 -1 0.5432136847716925 391.3624214559421 579.0607512492447] } midPoint [391.3624214559421 450.9887184048741] chart 2 linkNode [2 23 25] dataLimits [386.4090960406967 396.3157468711875 389.7416807696293 579.0607512492447] } transition { id 25 labelString "/enable=0;" labelPosition [755.25344651737 496.7950086058572 63.27416394796668 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 12 intersection [0 0.6479256044709076 -0.7617036241682252 -1 689.2023740228703 530.406949447584] } dst { id 6 intersection [3 0 1 0.5347501214302841 804.1811008400202 416.4985905133209] } midPoint [733.6918201430535 507.9745253099256] chart 2 linkNode [2 24 26] dataLimits [689.2023740228709 809.1344262552656 416.4985905133209 530.4069494475839] } transition { id 26 labelString "[e[1]>0 & Coastfct2>0]" labelPosition [847.1807147768603 463.1194610963702 134.5831423655164 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 10 intersection [1 0 -1 0.721109506225036 842.316383561292 582.1839579011951] } dst { id 6 intersection [3 0 1 0.1937695855286671 842.785873221937 416.4985905133209] } midPoint [842.4472711201732 529.1572928093711] chart 2 linkNode [2 25 27] dataLimits [837.8325478066917 847.7391986371823 416.4985905133209 582.183957901195] } transition { id 27 labelString "/enable=0;" labelPosition [283.0824610128771 498.0810296664013 63.27416394796668 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 11 intersection [0 0.9647936871459627 0.2630078729682792 -1 288.0369809240079 458.4205617529519] } dst { id 9 intersection [1 0 -1 0.3424431610482048 368.0862288730527 579.0607512492447] } midPoint [329.1979416071953 478.1175390963088] chart 2 linkNode [2 26 28] dataLimits [288.0369809240078 373.0395542882981 458.4205617529519 579.0607512492447] } transition { id 28 labelString "/ton=ton-delt;" labelPosition [624.3835385450938 443.2555452523518 79.34379288713282 18.07833255656191] fontSize 14 arrowSize 8.159828116234983 src { id 7 intersection [1 0 -1 0.7956952487411242 623.3676892651533 484.9900134854526] } dst { id 7 intersection [1 0 -1 0.5171316910308433 574.0840672253046 484.9900134854526] } midPoint [619.3502820303618 467.2045956670385] chart 2 linkNode [2 27 29] dataLimits [571.6361187904341 623.3676892651533 458.9232424991807 484.9900134854526] } transition { id 29 labelString "[ton>tmin]/count=2;" labelPosition [148.4574875559486 440.0899368781387 116.5048098089545 18.07833255656191] fontSize 14 arrowSize 8.159828116234983 src { id 11 intersection [0 -0.884861949510788 0.4658533356196645 -1 273.5257222891704 460.011962288869] } dst { id 8 intersection [1 0 -1 0.4369093656796391 151.2989537012356 486.5732036682836] } midPoint [223.0766576909866 463.8933576485423] chart 2 linkNode [2 28 30] dataLimits [148.8510052663651 273.5257222891702 460.0119622888685 486.5732036682836] } transition { id 30 labelString "[ton>tmin]/count=2;" labelPosition [565.9894101405512 560.1696362323866 116.5048098089545 18.07833255656191] fontSize 14 arrowSize 8.159828116234983 src { id 12 intersection [0 -0.8215086678225626 0.5701960265491146 -1 677.6740979753966 540.8562135831197] } dst { id 7 intersection [3 0 1 0.6089666989588906 551.7746688130725 523.3394415770878] } midPoint [626.5954795239023 557.6248087309327] chart 2 linkNode [2 29 31] dataLimits [549.326720378202 677.6740979753965 523.3394415770878 558.2382999295043] } transition { id 31 labelString "/ton=ton-delt;" labelPosition [113.3953308998642 550.9147402927538 79.34379288713282 18.07833255656191] fontSize 14 arrowSize 8.159828116234983 src { id 8 intersection [3 0 1 0.353485917412915 183.8540214485592 528.5339897857547] } dst { id 8 intersection [3 0 1 0.8070940722001382 113.4011975440418 528.5339897857547] } midPoint [164.2126983052928 546.7905798200061] chart 2 linkNode [2 30 32] dataLimits [110.9532491091713 183.8540214485594 528.5339897857543 550.9764056936149] } transition { id 32 labelString "[count==0]" labelPosition [245.7971794607641 560.8547240019874 65.28286756536244 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 8 intersection [3 0 1 0.2320842377109423 202.7097035422106 528.5339897857547] } dst { id 9 intersection [4 -1 0 0.654380122185806 328.3853165208529 604.6169387408569] } midPoint [223.8028807511219 573.0825432250441] chart 2 linkNode [2 31 33] dataLimits [202.7097035422105 328.3853165208529 528.5339897857548 609.5702641561022] } transition { id 33 labelString "[ton<2*delt]/enable=1;" labelPosition [712.5259390072022 533.0754554130485 130.5657351307249 18.07833255656191] fontSize 14 arrowSize 8.966153079525393 src { id 10 intersection [1 0 -1 0.3957005362151458 795.9844897746195 582.1839579011951] } dst { id 12 intersection [0 0.730382581933701 0.6830382741895658 -1 689.8492806699759 541.741504341029] } midPoint [775.1933705184292 562.3350382711062] chart 2 linkNode [2 32 34] dataLimits [689.8492806699759 795.9844897746194 541.741504341029 582.1839579011952] } transition { id 34 labelString "[e[1]<0 & Firefct2<0]" labelPosition [537.8927176477218 621.3063902120829 122.5309206611418 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 9 intersection [2 1 0 0.5464109369798621 444.3196287456229 619.4640418274331] } dst { id 10 intersection [4 -1 0 0.3864206431410968 739.6444472284898 619.8660705891168] } midPoint [541.9047598321011 619.5737157335113] chart 2 linkNode [2 33 35] dataLimits [444.319628745623 739.6444472284898 614.9127451738715 624.8193960043621] } transition { id 35 labelPosition [810.996062065349 659.501821489079 9.039166278280954 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 10 intersection [3 0 1 0.2788904937749639 842.316383561292 643.5975505631579] } dst { id 10 intersection [3 0 1 0.6133659435852477 794.6935997935656 643.5975505631579] } midPoint [828.2554582395217 670.0836610240111] chart 2 linkNode [2 34 0] dataLimits [789.7402743783202 842.316383561292 643.5975505631579 672.6269518400975] } data { id 36 name "jets" linkNode [2 0 37] scope OUTPUT_DATA machine 1 dataType "double" debug [1] } data { id 37 name "Nofjets" linkNode [2 36 38] scope INPUT_DATA machine 1 dataType "double" } data { id 38 name "e" linkNode [2 37 39] scope INPUT_DATA machine 1 dataType "double" props { array { size "2" } } debug [1] } data { id 39 name "enable" linkNode [2 38 40] scope OUTPUT_DATA machine 1 dataType "double" debug [1] } data { id 40 name "ton" linkNode [2 39 41] scope OUTPUT_DATA machine 1 dataType "double" debug [1] } data { id 41 name "Firefct1" linkNode [2 40 42] scope INPUT_DATA machine 1 dataType "double" debug [1] } data { id 42 name "Coastfct1" linkNode [2 41 43] scope INPUT_DATA machine 1 dataType "double" debug [1] } data { id 43 name "Firefct2" linkNode [2 42 44] scope INPUT_DATA machine 1 dataType "double" debug [1] } data { id 44 name "Coastfct2" linkNode [2 43 45] scope INPUT_DATA machine 1 dataType "double" debug [1] } data { id 45 name "tjcalc1" linkNode [2 44 46] scope INPUT_DATA machine 1 dataType "double" debug [1] } data { id 46 name "tjcalc" linkNode [2 45 47] scope INPUT_DATA machine 1 dataType "double" debug [1] } data { id 47 name "tmin" linkNode [2 46 48] scope WORKSPACE_DATA machine 1 dataType "double" } data { id 48 name "delt" linkNode [2 47 49] scope WORKSPACE_DATA machine 1 dataType "double" } data { id 49 name "count" linkNode [2 48 0] scope LOCAL_DATA machine 1 dataType "double" debug [1] } instance { id 50 name "Pitch Roll Control Law/Chart" machine 1 chart 2 } chart { id 51 name "Yaw Control Law/Chart" windowPosition [81.75 6 802.5 583.5] viewLimits [1.642890094961103 1018.04692049722 8.089100388799636 741.2659207382549] zoomFactor 1.339135744930512 screen [1 1 1280 1024 1.333333333333333] treeNode [0 52 0 0] firstTransition 62 firstJunction 60 machine 1 decomposition CLUSTER_CHART firstData 85 updateMethod DISCRETE sampleTime "delt" chartFileNumber 4 } state { id 52 labelString "Wait_for_stable_rate" position [83.52547118143124 93.99919448992384 153.0094840295076 50.314534602234] fontSize 14 arrowSize 16.51108471748459 chart 51 treeNode [51 0 0 53] type OR_STATE decomposition CLUSTER_STATE } state { id 53 labelString "Start" position [511.9411940783963 154.8403175688534 126.0305582307131 94.79358299072359] fontSize 14 arrowSize 11.14469335822621 chart 51 treeNode [51 0 52 54] type OR_STATE decomposition CLUSTER_STATE } state { id 54 labelString "Fire_region_1\n" "en: jets=-Nofjets;\n" "ton=tjcalc+tjcalc1;" position [327.5100759646587 329.3670925684118 138.9093480593336 60.37458820121736] fontSize 14 arrowSize 16.51108471748459 chart 51 treeNode [51 0 53 55] type OR_STATE decomposition CLUSTER_STATE } state { id 55 labelString "Coast_region_2\n" "en: jets=0;\n" "ton=0;\n" "enable=0;" position [751.5069339248726 342.9313728620731 113.2169385558575 73.5672176512478] fontSize 14 arrowSize 16.51108471748459 chart 51 treeNode [51 0 54 56] type OR_STATE decomposition CLUSTER_STATE } state { id 56 labelString "Skip_a_Sample_2\n" "en:count--;" position [482.5928362291143 484.9900134854526 176.9205650765919 38.34942809163525] fontSize 14 arrowSize 8.159828116234983 chart 51 treeNode [51 0 55 57] type OR_STATE decomposition CLUSTER_STATE } state { id 57 labelString "Skip_a_Sample_1\n" "en:count--;" position [83.43972701493212 486.5732036682836 155.3164844171841 41.9607861174711] fontSize 14 arrowSize 8.159828116234983 chart 51 treeNode [51 0 56 58] type OR_STATE decomposition CLUSTER_STATE } state { id 58 labelString "Coast_region_1\n" "en: jets=0;\n" "ton=0;\n" "enable=0;" position [328.3853165208529 579.0607512492447 115.93431222477 73.9430488004258] fontSize 14 arrowSize 16.51108471748459 chart 51 treeNode [51 0 57 59] type OR_STATE decomposition CLUSTER_STATE } state { id 59 labelString "Fire_region_2\n" "en: jets=Nofjets;\n" "ton=tjcalc-tjcalc1;" position [739.6444472284898 582.1839579011951 142.3805059376953 61.41359266196281] fontSize 14 arrowSize 16.51108471748459 chart 51 treeNode [51 0 58 0] type OR_STATE decomposition CLUSTER_STATE } junction { id 60 position [280.4678040210363 456.3571640090672 7.845383944584719] arrowSize 8.966153079525393 chart 51 linkNode [51 0 61] type CONNECTIVE_JUNCTION } junction { id 61 position [684.1191488882689 536.3828068311653 7.845383944584719] arrowSize 8.966153079525393 chart 51 linkNode [51 60 0] type CONNECTIVE_JUNCTION } transition { id 62 labelString "[count==0]" labelPosition [280.1037173706675 57.78767972404233 65.28286756536244 18.07833255656191] fontSize 14 arrowSize 11.14469335822621 src { id 52 intersection [2 1 0 0.525185123245093 236.5349552109389 120.4236395460176] } dst { id 53 intersection [1 0 -1 0.4317943817241134 566.3604810479719 154.8403175688534] } midPoint [351.845147761782 74.29948436942504] chart 51 linkNode [51 0 63] dataLimits [236.5349552109396 569.7038890554397 58.52136898664094 154.8403175688534] } transition { id 63 labelString "/count=2;" labelPosition [63.10568225694277 74.60988712840293 57.24805309577938 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { intersection [0 0 0 0.4625 42.40782946576184 70.06349161005863] } dst { id 52 intersection [1 0 -1 0.3345342032418852 134.7123770096945 93.99919448992384] } midPoint [81.79676764675128 68.15056297989045] chart 51 linkNode [51 62 64] dataLimits [42.40782946576181 139.6657024249399 64.84457256697382 93.99919448992384] } transition { id 64 labelString "/count--;" labelPosition [142.7675607638381 180.9208099427002 50.21759043489419 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 52 intersection [3 0 1 0.263394136726765 196.233154253979 144.3137290921578] } dst { id 52 intersection [3 0 1 0.6654657967581148 134.7123770096945 144.3137290921578] } midPoint [181.8533401009667 175.419981033864] chart 51 linkNode [51 63 65] dataLimits [129.7590515944491 196.2331542539791 144.3137290921578 179.7939238007255] } transition { id 65 labelString "[ (e[1]<0 & Firefct2<0) | (e[1]>0 & Coastfct2>0) ]" labelPosition [711.3298764662989 153.1072510761231 282.2228582441054 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 53 intersection [2 1 0 0.1988163105578124 637.9717523091094 173.6868280036249] } dst { id 59 intersection [2 1 0 0.5667049915126292 882.024953166185 616.9873474094528] } midPoint [986.9430440137872 500.3482053540687] chart 51 linkNode [51 64 66] dataLimits [637.9717523091105 994.7367205927936 172.38330670578 621.9406728246981] } transition { id 66 labelString "[ (e[1]<0 & Coastfct1<=0 & Firefct2>0) ]" labelPosition [261.8346174171982 161.3961704917498 234.0139714266069 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 53 intersection [4 -1 0 0.7690323022713463 511.9411940783963 176.7345731916709] } dst { id 58 intersection [3 0 1 0.5768004578970466 377.4486643683964 653.0038000496705] } midPoint [81.40380961776395 571.0610975383665] chart 51 linkNode [51 65 67] dataLimits [24.95308999938709 511.9411940783945 176.7345731916722 691.5673414030123] } transition { id 67 labelString "[ (e[1]>0 & Coastfct2>=0 & Firefct1<0) ]" labelPosition [648.9682217714071 291.1555101178292 234.0139714266069 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 53 intersection [2 1 0 0.5652173913043463 637.9717523091094 208.4192992592623] } dst { id 55 intersection [1 0 -1 0.5508750929072579 813.8753254705059 342.9313728620731] } midPoint [717.8013310371048 220.2549059662833] chart 51 linkNode [51 66 68] dataLimits [637.9717523091097 818.8286508857512 208.419299259262 342.9313728620731] } transition { id 68 labelString "[ (e[1]>0 & Firefct1>0) | (e[1]<0 & Coastfct1<0) ]" labelPosition [249.2646905834524 278.1949513043674 282.2228582441054 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 53 intersection [4 -1 0 0.3695652173913059 511.9411940783963 214.6014894543095] } dst { id 54 intersection [1 0 -1 0.3761968529639385 379.7673355518524 329.3670925684118] } midPoint [446.6595660919443 233.8833886047286] chart 51 linkNode [51 67 69] dataLimits [374.814010136607 511.9411940783962 214.6014894543094 329.3670925684118] } transition { id 69 labelString "[e[1]>0 & Firefct1>0]" labelPosition [589.3284526262277 342.147046912355 122.5309206611418 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 55 intersection [4 -1 0 0.7362480538433518 751.5069339248726 362.3348696909194] } dst { id 54 intersection [2 1 0 0.5333296594174887 466.4194240239923 361.5666511312382] } midPoint [656.9490632928854 362.1207004335479] chart 51 linkNode [51 68 70] dataLimits [466.4194240239923 751.5069339248724 356.6133257159928 366.5199765464836] } transition { id 70 labelString "[count==0]" labelPosition [582.3725841189986 377.7515111915792 65.28286756536244 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 56 intersection [1 0 -1 0.3974806243417 552.9153328946444 484.9900134854526] } dst { id 55 intersection [4 -1 0 0.3890013329289441 751.5069339248726 387.8808447871118] } midPoint [602.857707609433 415.1109615864685] chart 51 linkNode [51 69 71] dataLimits [552.9153328946443 751.5069339248726 382.9275193718664 484.9900134854521] } transition { id 71 labelPosition [435.1143220200084 395.6686697499628 9.039166278280954 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 54 intersection [3 0 1 0.1354358187105796 447.6061227430236 389.7416807696292] } dst { id 54 intersection [3 0 1 0.417416269173039 408.4364022038062 389.7416807696292] } midPoint [436.2451597016932 413.9739498060508] chart 51 linkNode [51 70 72] dataLimits [403.4830767885608 447.6061227430236 389.7416807696292 416.1072794042004] } transition { id 72 labelString "[ton<2*delt]/enable=1;" labelPosition [165.2397085097891 395.6903594970495 130.5657351307249 18.07833255656191] fontSize 14 arrowSize 8.966153079525393 src { id 54 intersection [3 0 1 0.8171093294538161 352.9152997763635 389.7416807696292] } dst { id 60 intersection [0 -0.06266134173901142 -0.9980348472129954 -1 279.9762017366109 448.5271974426063] } midPoint [332.0687172536699 405.3811533211255] chart 51 linkNode [51 71 73] dataLimits [276.7298105887667 352.9152997763637 389.7416807696293 448.5271974426063] } transition { id 73 labelString "[e[1]<0 & Coastfct1<=0]" labelPosition [395.8989534646373 441.78859403644 142.6179568350995 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 54 intersection [3 0 1 0.5403308245028291 391.3624214559421 389.7416807696292] } dst { id 58 intersection [1 0 -1 0.5432136847716925 391.3624214559421 579.0607512492447] } midPoint [391.3624214559421 450.9887184048741] chart 51 linkNode [51 72 74] dataLimits [386.4090960406967 396.3157468711875 389.7416807696293 579.0607512492447] } transition { id 74 labelString "/enable=0;" labelPosition [755.25344651737 496.7950086058572 63.27416394796668 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 61 intersection [0 0.6479256044709076 -0.7617036241682252 -1 689.2023740228703 530.406949447584] } dst { id 55 intersection [3 0 1 0.5347501214302841 804.1811008400202 416.4985905133209] } midPoint [733.6918201430535 507.9745253099256] chart 51 linkNode [51 73 75] dataLimits [689.2023740228709 809.1344262552656 416.4985905133209 530.4069494475839] } transition { id 75 labelString "[e[1]>0 & Coastfct2>0]" labelPosition [847.1807147768603 463.1194610963702 134.5831423655164 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 59 intersection [1 0 -1 0.721109506225036 842.316383561292 582.1839579011951] } dst { id 55 intersection [3 0 1 0.1937695855286671 842.785873221937 416.4985905133209] } midPoint [842.4472711201732 529.1572928093711] chart 51 linkNode [51 74 76] dataLimits [837.8325478066917 847.7391986371823 416.4985905133209 582.183957901195] } transition { id 76 labelString "/enable=0;" labelPosition [283.0824610128771 498.0810296664013 63.27416394796668 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 60 intersection [0 0.9647936871459627 0.2630078729682792 -1 288.0369809240079 458.4205617529519] } dst { id 58 intersection [1 0 -1 0.3424431610482048 368.0862288730527 579.0607512492447] } midPoint [329.1979416071953 478.1175390963088] chart 51 linkNode [51 75 77] dataLimits [288.0369809240078 373.0395542882981 458.4205617529519 579.0607512492447] } transition { id 77 labelString "/ton=ton-delt;" labelPosition [624.3835385450938 443.2555452523518 79.34379288713282 18.07833255656191] fontSize 14 arrowSize 8.159828116234983 src { id 56 intersection [1 0 -1 0.7956952487411242 623.3676892651533 484.9900134854526] } dst { id 56 intersection [1 0 -1 0.5171316910308433 574.0840672253046 484.9900134854526] } midPoint [619.3502820303618 467.2045956670385] chart 51 linkNode [51 76 78] dataLimits [571.6361187904341 623.3676892651533 458.9232424991807 484.9900134854526] } transition { id 78 labelString "[ton>tmin]/count=2;" labelPosition [148.4574875559486 440.0899368781387 116.5048098089545 18.07833255656191] fontSize 14 arrowSize 8.159828116234983 src { id 60 intersection [0 -0.884861949510788 0.4658533356196645 -1 273.5257222891704 460.011962288869] } dst { id 57 intersection [1 0 -1 0.4369093656796391 151.2989537012356 486.5732036682836] } midPoint [223.0766576909866 463.8933576485423] chart 51 linkNode [51 77 79] dataLimits [148.8510052663651 273.5257222891702 460.0119622888685 486.5732036682836] } transition { id 79 labelString "[ton>tmin]/count=2;" labelPosition [565.9894101405512 560.1696362323866 116.5048098089545 18.07833255656191] fontSize 14 arrowSize 8.159828116234983 src { id 61 intersection [0 -0.8215086678225626 0.5701960265491146 -1 677.6740979753966 540.8562135831197] } dst { id 56 intersection [3 0 1 0.6089666989588906 551.7746688130725 523.3394415770878] } midPoint [626.5954795239023 557.6248087309327] chart 51 linkNode [51 78 80] dataLimits [549.326720378202 677.6740979753965 523.3394415770878 558.2382999295043] } transition { id 80 labelString "/ton=ton-delt;" labelPosition [113.3953308998642 550.9147402927538 79.34379288713282 18.07833255656191] fontSize 14 arrowSize 8.159828116234983 src { id 57 intersection [3 0 1 0.353485917412915 183.8540214485592 528.5339897857547] } dst { id 57 intersection [3 0 1 0.8070940722001382 113.4011975440418 528.5339897857547] } midPoint [164.2126983052928 546.7905798200061] chart 51 linkNode [51 79 81] dataLimits [110.9532491091713 183.8540214485594 528.5339897857543 550.9764056936149] } transition { id 81 labelString "[count==0]" labelPosition [245.7971794607641 560.8547240019874 65.28286756536244 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 57 intersection [3 0 1 0.2320842377109423 202.7097035422106 528.5339897857547] } dst { id 58 intersection [4 -1 0 0.654380122185806 328.3853165208529 604.6169387408569] } midPoint [223.8028807511219 573.0825432250441] chart 51 linkNode [51 80 82] dataLimits [202.7097035422105 328.3853165208529 528.5339897857548 609.5702641561022] } transition { id 82 labelString "[ton<2*delt]/enable=1;" labelPosition [712.5259390072022 533.0754554130485 130.5657351307249 18.07833255656191] fontSize 14 arrowSize 8.966153079525393 src { id 59 intersection [1 0 -1 0.3957005362151458 795.9844897746195 582.1839579011951] } dst { id 61 intersection [0 0.730382581933701 0.6830382741895658 -1 689.8492806699759 541.741504341029] } midPoint [775.1933705184292 562.3350382711062] chart 51 linkNode [51 81 83] dataLimits [689.8492806699759 795.9844897746194 541.741504341029 582.1839579011952] } transition { id 83 labelString "[e[1]<0 & Firefct2<0]" labelPosition [537.8927176477218 621.3063902120829 122.5309206611418 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 58 intersection [2 1 0 0.5464109369798621 444.3196287456229 619.4640418274331] } dst { id 59 intersection [4 -1 0 0.3864206431410968 739.6444472284898 619.8660705891168] } midPoint [541.9047598321011 619.5737157335113] chart 51 linkNode [51 82 84] dataLimits [444.319628745623 739.6444472284898 614.9127451738715 624.8193960043621] } transition { id 84 labelPosition [810.996062065349 659.501821489079 9.039166278280954 18.07833255656191] fontSize 14 arrowSize 16.51108471748459 src { id 59 intersection [3 0 1 0.2788904937749639 842.316383561292 643.5975505631579] } dst { id 59 intersection [3 0 1 0.6133659435852477 794.6935997935656 643.5975505631579] } midPoint [828.2554582395217 670.0836610240111] chart 51 linkNode [51 83 0] dataLimits [789.7402743783202 842.316383561292 643.5975505631579 672.6269518400975] } data { id 85 name "jets" linkNode [51 0 86] scope OUTPUT_DATA machine 1 dataType "double" debug [1] } data { id 86 name "Nofjets" linkNode [51 85 87] scope INPUT_DATA machine 1 dataType "double" } data { id 87 name "e" linkNode [51 86 88] scope INPUT_DATA machine 1 dataType "double" props { array { size "2" } } debug [1] } data { id 88 name "enable" linkNode [51 87 89] scope OUTPUT_DATA machine 1 dataType "double" debug [1] } data { id 89 name "ton" linkNode [51 88 90] scope OUTPUT_DATA machine 1 dataType "double" debug [1] } data { id 90 name "Firefct1" linkNode [51 89 91] scope INPUT_DATA machine 1 dataType "double" debug [1] } data { id 91 name "Coastfct1" linkNode [51 90 92] scope INPUT_DATA machine 1 dataType "double" debug [1] } data { id 92 name "Firefct2" linkNode [51 91 93] scope INPUT_DATA machine 1 dataType "double" debug [1] } data { id 93 name "Coastfct2" linkNode [51 92 94] scope INPUT_DATA machine 1 dataType "double" debug [1] } data { id 94 name "tjcalc1" linkNode [51 93 95] scope INPUT_DATA machine 1 dataType "double" debug [1] } data { id 95 name "tjcalc" linkNode [51 94 96] scope INPUT_DATA machine 1 dataType "double" debug [1] } data { id 96 name "tmin" linkNode [51 95 97] scope WORKSPACE_DATA machine 1 dataType "double" } data { id 97 name "delt" linkNode [51 96 98] scope WORKSPACE_DATA machine 1 dataType "double" } data { id 98 name "count" linkNode [51 97 0] scope LOCAL_DATA machine 1 dataType "double" debug [1] } instance { id 99 name "Yaw Control Law/Chart" machine 1 chart 51 } target { id 100 name "sfun" description "Default Simulink S-Function Target." machine 1 linkNode [1 0 0] } }