From b4b6aa36e3486a3544acc52419149b5671f841e9 Mon Sep 17 00:00:00 2001 From: Siddharth11235 Date: Tue, 3 Sep 2019 18:09:16 +0530 Subject: Pushing entire Modelica HIL Tasks repo --- Prof_Arya/Cessna_6DOF.mdl | 2069 +++++++++++++++++ Prof_Arya/Cessna_6DOF.mdl.r2011a | 1849 ++++++++++++++++ Prof_Arya/Cessna_6DOF_Wind_trim.mdl | 2310 +++++++++++++++++++ Prof_Arya/Cessna_6DOF_Wind_trim.mdl.r2014a | 2317 +++++++++++++++++++ Prof_Arya/Cessna_6DOF_sfun.mexw64 | 0 Prof_Arya/Cessna_6DOF_trim_ha.slx | Bin 0 -> 19457 bytes Prof_Arya/Comp_LinMod.m | 32 + Prof_Arya/Initial_Cessna.m | 93 + Prof_Arya/Linearisation_LinMod.m | 16 + Prof_Arya/Trim_Cessna_Body.m | 28 + Prof_Arya/Trim_Function_Cessna.m | 26 + Prof_Arya/[Content_Types].xml | 1 + Prof_Arya/_rels/.rels | 1 + Prof_Arya/getstatenames.m | 47 + Prof_Arya/lineariz.zip | Bin 0 -> 2809 bytes Prof_Arya/metadata/coreProperties.xml | 1 + Prof_Arya/metadata/thumbnail.png | Bin 0 -> 5911 bytes Prof_Arya/simulink/blockdiagram.xml | 1840 ++++++++++++++++ Prof_Arya/slprj/_jitprj/jitEngineAccessInfo.mat | Bin 0 -> 834 bytes Prof_Arya/slprj/_jitprj/sEI9p49izcHUxn63CWpG2IC.l | Bin 0 -> 17736 bytes .../slprj/_jitprj/sEI9p49izcHUxn63CWpG2IC.mat | Bin 0 -> 688 bytes Prof_Arya/slprj/_jitprj/sjLZixcOZskMJeeDfIb93hH.l | Bin 0 -> 16000 bytes .../slprj/_jitprj/sjLZixcOZskMJeeDfIb93hH.mat | Bin 0 -> 705 bytes Prof_Arya/slprj/_jitprj/sywZUtpLbJvZ7sNRSY4m9bG.l | Bin 0 -> 16000 bytes .../slprj/_jitprj/sywZUtpLbJvZ7sNRSY4m9bG.mat | Bin 0 -> 702 bytes .../_sfprj/Cessna_6DOF/_self/sfun/info/binfo.mat | Bin 0 -> 2986 bytes .../sfun/info/chart1_61lDY9MbzCSyk6tMTxmxsG.mat | Bin 0 -> 21061 bytes .../sfun/info/chart1_jFM61yZv4AZtAtyV4ewisH.mat | Bin 0 -> 11024 bytes .../sfun/info/chart1_v045JFXizl4FQXSha8a34C.mat | Bin 0 -> 21168 bytes .../Cessna_6DOF/_self/sfun/src/c1_Cessna_6DOF.c | 2330 ++++++++++++++++++++ .../Cessna_6DOF/_self/sfun/src/c1_Cessna_6DOF.h | 41 + .../Cessna_6DOF/_self/sfun/src/c1_cessna_6dof.obj | 0 .../_self/sfun/info/binfo.mat | Bin 0 -> 786 bytes .../Cessna_6DOF_trim_ha/_self/sfun/info/binfo.mat | Bin 0 -> 785 bytes .../slprj/_sfprj/EMLReport/emlReportAccessInfo.mat | Bin 0 -> 786 bytes .../_sfprj/EMLReport/sEI9p49izcHUxn63CWpG2IC.mat | Bin 0 -> 18809 bytes .../_sfprj/EMLReport/sjLZixcOZskMJeeDfIb93hH.mat | Bin 0 -> 34231 bytes .../_sfprj/precompile/9awVvODnlASRfvLpAy51pB.mat | Bin 0 -> 879 bytes .../_sfprj/precompile/CHfRUMKLp7zBZlxChVZlPD.mat | Bin 0 -> 870 bytes .../_sfprj/precompile/VPBs6CX5Fj2d3KwfGqQPeF.mat | Bin 0 -> 867 bytes .../_sfprj/precompile/autoInferAccessInfo.mat | Bin 0 -> 850 bytes .../_sfprj/precompile/pFxf9FCl6UH0ED177v1E9B.mat | Bin 0 -> 882 bytes 42 files changed, 13001 insertions(+) create mode 100644 Prof_Arya/Cessna_6DOF.mdl create mode 100644 Prof_Arya/Cessna_6DOF.mdl.r2011a create mode 100644 Prof_Arya/Cessna_6DOF_Wind_trim.mdl create mode 100644 Prof_Arya/Cessna_6DOF_Wind_trim.mdl.r2014a create mode 100644 Prof_Arya/Cessna_6DOF_sfun.mexw64 create mode 100644 Prof_Arya/Cessna_6DOF_trim_ha.slx create mode 100644 Prof_Arya/Comp_LinMod.m create mode 100644 Prof_Arya/Initial_Cessna.m create mode 100644 Prof_Arya/Linearisation_LinMod.m create mode 100644 Prof_Arya/Trim_Cessna_Body.m create mode 100644 Prof_Arya/Trim_Function_Cessna.m create mode 100644 Prof_Arya/[Content_Types].xml create mode 100644 Prof_Arya/_rels/.rels create mode 100644 Prof_Arya/getstatenames.m create mode 100644 Prof_Arya/lineariz.zip create mode 100644 Prof_Arya/metadata/coreProperties.xml create mode 100644 Prof_Arya/metadata/thumbnail.png create mode 100644 Prof_Arya/simulink/blockdiagram.xml create mode 100644 Prof_Arya/slprj/_jitprj/jitEngineAccessInfo.mat create mode 100644 Prof_Arya/slprj/_jitprj/sEI9p49izcHUxn63CWpG2IC.l create mode 100644 Prof_Arya/slprj/_jitprj/sEI9p49izcHUxn63CWpG2IC.mat create mode 100644 Prof_Arya/slprj/_jitprj/sjLZixcOZskMJeeDfIb93hH.l create mode 100644 Prof_Arya/slprj/_jitprj/sjLZixcOZskMJeeDfIb93hH.mat create mode 100644 Prof_Arya/slprj/_jitprj/sywZUtpLbJvZ7sNRSY4m9bG.l create mode 100644 Prof_Arya/slprj/_jitprj/sywZUtpLbJvZ7sNRSY4m9bG.mat create mode 100644 Prof_Arya/slprj/_sfprj/Cessna_6DOF/_self/sfun/info/binfo.mat create mode 100644 Prof_Arya/slprj/_sfprj/Cessna_6DOF/_self/sfun/info/chart1_61lDY9MbzCSyk6tMTxmxsG.mat create mode 100644 Prof_Arya/slprj/_sfprj/Cessna_6DOF/_self/sfun/info/chart1_jFM61yZv4AZtAtyV4ewisH.mat create mode 100644 Prof_Arya/slprj/_sfprj/Cessna_6DOF/_self/sfun/info/chart1_v045JFXizl4FQXSha8a34C.mat create mode 100644 Prof_Arya/slprj/_sfprj/Cessna_6DOF/_self/sfun/src/c1_Cessna_6DOF.c create mode 100644 Prof_Arya/slprj/_sfprj/Cessna_6DOF/_self/sfun/src/c1_Cessna_6DOF.h create mode 100644 Prof_Arya/slprj/_sfprj/Cessna_6DOF/_self/sfun/src/c1_cessna_6dof.obj create mode 100644 Prof_Arya/slprj/_sfprj/Cessna_6DOF_Wind_trim/_self/sfun/info/binfo.mat create mode 100644 Prof_Arya/slprj/_sfprj/Cessna_6DOF_trim_ha/_self/sfun/info/binfo.mat create mode 100644 Prof_Arya/slprj/_sfprj/EMLReport/emlReportAccessInfo.mat create mode 100644 Prof_Arya/slprj/_sfprj/EMLReport/sEI9p49izcHUxn63CWpG2IC.mat create mode 100644 Prof_Arya/slprj/_sfprj/EMLReport/sjLZixcOZskMJeeDfIb93hH.mat create mode 100644 Prof_Arya/slprj/_sfprj/precompile/9awVvODnlASRfvLpAy51pB.mat create mode 100644 Prof_Arya/slprj/_sfprj/precompile/CHfRUMKLp7zBZlxChVZlPD.mat create mode 100644 Prof_Arya/slprj/_sfprj/precompile/VPBs6CX5Fj2d3KwfGqQPeF.mat create mode 100644 Prof_Arya/slprj/_sfprj/precompile/autoInferAccessInfo.mat create mode 100644 Prof_Arya/slprj/_sfprj/precompile/pFxf9FCl6UH0ED177v1E9B.mat (limited to 'Prof_Arya') diff --git a/Prof_Arya/Cessna_6DOF.mdl b/Prof_Arya/Cessna_6DOF.mdl new file mode 100644 index 0000000..3d57cf7 --- /dev/null +++ b/Prof_Arya/Cessna_6DOF.mdl @@ -0,0 +1,2069 @@ +Model { + Name "Cessna_6DOF" + Version 8.3 + MdlSubVersion 0 + SavedCharacterEncoding "windows-1252" + GraphicalInterface { + NumRootInports 0 + NumRootOutports 0 + ParameterArgumentNames "" + ComputedModelVersion "1.16" + NumModelReferences 0 + NumTestPointedSignals 0 + } + SaveDefaultBlockParams on + ScopeRefreshTime 0.035000 + OverrideScopeRefreshTime on + DisableAllScopes off + DataTypeOverride "UseLocalSettings" + DataTypeOverrideAppliesTo "AllNumericTypes" + MinMaxOverflowLogging "UseLocalSettings" + MinMaxOverflowArchiveMode "Overwrite" + FPTRunName "Run 1" + MaxMDLFileLineLength 120 + Object { + $PropName "BdWindowsInfo" + $ObjectID 1 + $ClassName "Simulink.BDWindowsInfo" + Object { + $PropName "WindowsInfo" + $ObjectID 2 + $ClassName "Simulink.WindowInfo" + IsActive [1] + Location [-8.0, -8.0, 1382.0, 754.0] + Object { + $PropName "ModelBrowserInfo" + $ObjectID 3 + $ClassName "Simulink.ModelBrowserInfo" + Visible [0] + DockPosition "Left" + Width [50] + Height [50] + Filter [8] + } + Object { + $PropName "ExplorerBarInfo" + $ObjectID 4 + $ClassName "Simulink.ExplorerBarInfo" + Visible [1] + } + Object { + $PropName "EditorsInfo" + $ObjectID 5 + $ClassName "Simulink.EditorInfo" + IsActive [1] + ViewObjType "SimulinkTopLevel" + LoadSaveID "0" + Extents [1332.0, 580.0] + ZoomFactor [1.0] + Offset [0.0, 0.0] + } + } + } + Created "Sat Dec 20 14:26:50 2014" + Creator "Pranav" + UpdateHistory "UpdateHistoryNever" + ModifiedByFormat "%" + LastModifiedBy "Pranav" + ModifiedDateFormat "%" + LastModifiedDate "Wed Mar 30 16:47:01 2016" + RTWModifiedTimeStamp 381257210 + ModelVersionFormat "1.%" + ConfigurationManager "none" + SampleTimeColors off + SampleTimeAnnotations off + LibraryLinkDisplay "none" + WideLines off + ShowLineDimensions off + ShowPortDataTypes off + ShowDesignRanges off + ShowLoopsOnError on + IgnoreBidirectionalLines off + ShowStorageClass off + ShowTestPointIcons on + ShowSignalResolutionIcons on + ShowViewerIcons on + SortedOrder off + ExecutionContextIcon off + ShowLinearizationAnnotations on + BlockNameDataTip off + BlockParametersDataTip off + BlockDescriptionStringDataTip off + ToolBar on + StatusBar on + BrowserShowLibraryLinks off + BrowserLookUnderMasks off + SimulationMode "normal" + PauseTimes "5" + NumberOfSteps 1 + SnapshotBufferSize 10 + SnapshotInterval 10 + NumberOfLastSnapshots 0 + LinearizationMsg "none" + Profile off + ParamWorkspaceSource "MATLABWorkspace" + AccelSystemTargetFile "accel.tlc" + AccelTemplateMakefile "accel_default_tmf" + AccelMakeCommand "make_rtw" + TryForcingSFcnDF off + Object { + $PropName "DataLoggingOverride" + $ObjectID 6 + $ClassName "Simulink.SimulationData.ModelLoggingInfo" + model_ "Cessna_6DOF" + overrideMode_ [0.0] + Array { + Type "Cell" + Dimension 1 + Cell "Cessna_6DOF" + PropName "logAsSpecifiedByModels_" + } + Array { + Type "Cell" + Dimension 1 + Cell [] + PropName "logAsSpecifiedByModelsSSIDs_" + } + } + RecordCoverage off + CovPath "/" + CovSaveName "covdata" + CovMetricSettings "dw" + CovNameIncrementing off + CovHtmlReporting on + CovForceBlockReductionOff on + CovEnableCumulative on + covSaveCumulativeToWorkspaceVar on + CovSaveSingleToWorkspaceVar on + CovCumulativeVarName "covCumulativeData" + CovCumulativeReport off + CovReportOnPause on + CovModelRefEnable "Off" + CovExternalEMLEnable off + CovSFcnEnable off + CovBoundaryAbsTol 0.000010 + CovBoundaryRelTol 0.010000 + ExtModeBatchMode off + ExtModeEnableFloating on + ExtModeTrigType "manual" + ExtModeTrigMode "normal" + ExtModeTrigPort "1" + ExtModeTrigElement "any" + ExtModeTrigDuration 1000 + ExtModeTrigDurationFloating "auto" + ExtModeTrigHoldOff 0 + ExtModeTrigDelay 0 + ExtModeTrigDirection "rising" + ExtModeTrigLevel 0 + ExtModeArchiveMode "off" + ExtModeAutoIncOneShot off + ExtModeIncDirWhenArm off + ExtModeAddSuffixToVar off + ExtModeWriteAllDataToWs off + ExtModeArmWhenConnect on + ExtModeSkipDownloadWhenConnect off + ExtModeLogAll on + ExtModeAutoUpdateStatusClock on + BufferReuse on + ShowModelReferenceBlockVersion off + ShowModelReferenceBlockIO off + Array { + Type "Handle" + Dimension 1 + Simulink.ConfigSet { + $ObjectID 7 + Version "1.14.2" + Array { + Type "Handle" + Dimension 9 + Simulink.SolverCC { + $ObjectID 8 + Version "1.14.2" + StartTime "0.0" + StopTime "1000" + AbsTol "auto" + FixedStep "auto" + InitialStep "auto" + MaxNumMinSteps "-1" + MaxOrder 5 + ZcThreshold "auto" + ConsecutiveZCsStepRelTol "10*128*eps" + MaxConsecutiveZCs "1000" + ExtrapolationOrder 4 + NumberNewtonIterations 1 + MaxStep "auto" + MinStep "auto" + MaxConsecutiveMinStep "1" + RelTol "1e-3" + SolverMode "Auto" + EnableConcurrentExecution off + ConcurrentTasks off + Solver "ode45" + SolverName "ode45" + SolverJacobianMethodControl "auto" + ShapePreserveControl "DisableAll" + ZeroCrossControl "UseLocalSettings" + ZeroCrossAlgorithm "Nonadaptive" + AlgebraicLoopSolver "TrustRegion" + SolverResetMethod "Fast" + PositivePriorityOrder off + AutoInsertRateTranBlk off + SampleTimeConstraint "Unconstrained" + InsertRTBMode "Whenever possible" + } + Simulink.DataIOCC { + $ObjectID 9 + Version "1.14.2" + Decimation "1" + ExternalInput "[t, u]" + FinalStateName "xFinal" + InitialState "xInitial" + LimitDataPoints on + MaxDataPoints "1000" + LoadExternalInput off + LoadInitialState off + SaveFinalState off + SaveCompleteFinalSimState off + SaveFormat "Array" + SignalLoggingSaveFormat "ModelDataLogs" + SaveOutput on + SaveState off + SignalLogging on + DSMLogging on + InspectSignalLogs off + VisualizeSimOutput on + SaveTime on + ReturnWorkspaceOutputs off + StateSaveName "xout" + TimeSaveName "tout" + OutputSaveName "yout" + SignalLoggingName "logsout" + DSMLoggingName "dsmout" + OutputOption "RefineOutputTimes" + OutputTimes "[]" + ReturnWorkspaceOutputsName "out" + Refine "1" + } + Simulink.OptimizationCC { + $ObjectID 10 + Version "1.14.2" + Array { + Type "Cell" + Dimension 8 + Cell "BooleansAsBitfields" + Cell "PassReuseOutputArgsAs" + Cell "PassReuseOutputArgsThreshold" + Cell "ZeroExternalMemoryAtStartup" + Cell "ZeroInternalMemoryAtStartup" + Cell "OptimizeModelRefInitCode" + Cell "NoFixptDivByZeroProtection" + Cell "UseSpecifiedMinMax" + PropName "DisabledProps" + } + BlockReduction on + BooleanDataType on + ConditionallyExecuteInputs on + InlineParams off + UseIntDivNetSlope off + UseFloatMulNetSlope off + DefaultUnderspecifiedDataType "double" + UseSpecifiedMinMax off + InlineInvariantSignals off + OptimizeBlockIOStorage on + BufferReuse on + EnhancedBackFolding off + CachingGlobalReferences off + GlobalBufferReuse on + StrengthReduction off + ExpressionFolding on + BooleansAsBitfields off + BitfieldContainerType "uint_T" + EnableMemcpy on + MemcpyThreshold 64 + PassReuseOutputArgsAs "Structure reference" + ExpressionDepthLimit 2147483647 + FoldNonRolledExpr on + LocalBlockOutputs on + RollThreshold 5 + SystemCodeInlineAuto off + StateBitsets off + DataBitsets off + ActiveStateOutputEnumStorageType "Native Integer" + UseTempVars off + ZeroExternalMemoryAtStartup on + ZeroInternalMemoryAtStartup on + InitFltsAndDblsToZero off + NoFixptDivByZeroProtection off + EfficientFloat2IntCast off + EfficientMapNaN2IntZero on + OptimizeModelRefInitCode off + LifeSpan "inf" + MaxStackSize "Inherit from target" + BufferReusableBoundary on + SimCompilerOptimization "Off" + AccelVerboseBuild off + ParallelExecutionInRapidAccelerator on + } + Simulink.DebuggingCC { + $ObjectID 11 + Version "1.14.2" + RTPrefix "error" + ConsistencyChecking "none" + ArrayBoundsChecking "none" + SignalInfNanChecking "none" + SignalRangeChecking "none" + ReadBeforeWriteMsg "UseLocalSettings" + WriteAfterWriteMsg "UseLocalSettings" + WriteAfterReadMsg "UseLocalSettings" + AlgebraicLoopMsg "warning" + ArtificialAlgebraicLoopMsg "warning" + SaveWithDisabledLinksMsg "warning" + SaveWithParameterizedLinksMsg "warning" + CheckSSInitialOutputMsg on + UnderspecifiedInitializationDetection "Classic" + MergeDetectMultiDrivingBlocksExec "none" + CheckExecutionContextPreStartOutputMsg off + CheckExecutionContextRuntimeOutputMsg off + SignalResolutionControl "UseLocalSettings" + BlockPriorityViolationMsg "warning" + MinStepSizeMsg "warning" + TimeAdjustmentMsg "none" + MaxConsecutiveZCsMsg "error" + MaskedZcDiagnostic "warning" + IgnoredZcDiagnostic "warning" + SolverPrmCheckMsg "warning" + InheritedTsInSrcMsg "warning" + DiscreteInheritContinuousMsg "warning" + MultiTaskDSMMsg "error" + MultiTaskCondExecSysMsg "error" + MultiTaskRateTransMsg "error" + SingleTaskRateTransMsg "none" + TasksWithSamePriorityMsg "warning" + SigSpecEnsureSampleTimeMsg "warning" + CheckMatrixSingularityMsg "none" + IntegerOverflowMsg "warning" + Int32ToFloatConvMsg "warning" + ParameterDowncastMsg "error" + ParameterOverflowMsg "error" + ParameterUnderflowMsg "none" + ParameterPrecisionLossMsg "warning" + ParameterTunabilityLossMsg "warning" + FixptConstUnderflowMsg "none" + FixptConstOverflowMsg "none" + FixptConstPrecisionLossMsg "none" + UnderSpecifiedDataTypeMsg "none" + UnnecessaryDatatypeConvMsg "none" + VectorMatrixConversionMsg "none" + InvalidFcnCallConnMsg "error" + FcnCallInpInsideContextMsg "UseLocalSettings" + SignalLabelMismatchMsg "none" + UnconnectedInputMsg "warning" + UnconnectedOutputMsg "warning" + UnconnectedLineMsg "warning" + SFcnCompatibilityMsg "none" + FrameProcessingCompatibilityMsg "warning" + UniqueDataStoreMsg "none" + BusObjectLabelMismatch "warning" + RootOutportRequireBusObject "warning" + AssertControl "UseLocalSettings" + EnableOverflowDetection off + ModelReferenceIOMsg "none" + ModelReferenceMultiInstanceNormalModeStructChecksumCheck "error" + ModelReferenceVersionMismatchMessage "none" + ModelReferenceIOMismatchMessage "none" + ModelReferenceCSMismatchMessage "none" + UnknownTsInhSupMsg "warning" + ModelReferenceDataLoggingMessage "warning" + ModelReferenceSymbolNameMessage "warning" + ModelReferenceExtraNoncontSigs "error" + StateNameClashWarn "warning" + SimStateInterfaceChecksumMismatchMsg "warning" + SimStateOlderReleaseMsg "error" + InitInArrayFormatMsg "warning" + StrictBusMsg "ErrorLevel1" + BusNameAdapt "WarnAndRepair" + NonBusSignalsTreatedAsBus "none" + LoggingUnavailableSignals "error" + BlockIODiagnostic "none" + SFUnusedDataAndEventsDiag "warning" + SFUnexpectedBacktrackingDiag "warning" + SFInvalidInputDataAccessInChartInitDiag "warning" + SFNoUnconditionalDefaultTransitionDiag "warning" + SFTransitionOutsideNaturalParentDiag "warning" + SFUnconditionalTransitionShadowingDiag "warning" + SFUndirectedBroadcastEventsDiag "warning" + SFTransitionActionBeforeConditionDiag "warning" + } + Simulink.HardwareCC { + $ObjectID 12 + Version "1.14.2" + ProdBitPerChar 8 + ProdBitPerShort 16 + ProdBitPerInt 32 + ProdBitPerLong 32 + ProdBitPerLongLong 64 + ProdBitPerFloat 32 + ProdBitPerDouble 64 + ProdBitPerPointer 32 + ProdLargestAtomicInteger "Char" + ProdLargestAtomicFloat "None" + ProdIntDivRoundTo "Undefined" + ProdEndianess "Unspecified" + ProdWordSize 32 + ProdShiftRightIntArith on + ProdLongLongMode off + ProdHWDeviceType "32-bit Generic" + TargetBitPerChar 8 + TargetBitPerShort 16 + TargetBitPerInt 32 + TargetBitPerLong 32 + TargetBitPerLongLong 64 + TargetBitPerFloat 32 + TargetBitPerDouble 64 + TargetBitPerPointer 32 + TargetLargestAtomicInteger "Char" + TargetLargestAtomicFloat "None" + TargetShiftRightIntArith on + TargetLongLongMode off + TargetIntDivRoundTo "Undefined" + TargetEndianess "Unspecified" + TargetWordSize 32 + TargetTypeEmulationWarnSuppressLevel 0 + TargetPreprocMaxBitsSint 32 + TargetPreprocMaxBitsUint 32 + TargetHWDeviceType "Specified" + TargetUnknown off + ProdEqTarget on + } + Simulink.ModelReferenceCC { + $ObjectID 13 + Version "1.14.2" + UpdateModelReferenceTargets "IfOutOfDateOrStructuralChange" + CheckModelReferenceTargetMessage "error" + EnableParallelModelReferenceBuilds off + ParallelModelReferenceErrorOnInvalidPool on + ParallelModelReferenceMATLABWorkerInit "None" + ModelReferenceNumInstancesAllowed "Multi" + PropagateVarSize "Infer from blocks in model" + ModelReferencePassRootInputsByReference on + ModelReferenceMinAlgLoopOccurrences off + PropagateSignalLabelsOutOfModel off + SupportModelReferenceSimTargetCustomCode off + } + Simulink.SFSimCC { + $ObjectID 14 + Version "1.14.2" + SFSimEnableDebug on + SFSimOverflowDetection on + SFSimEcho on + SimBlas on + SimCtrlC on + SimExtrinsic on + SimIntegrity on + SimUseLocalCustomCode off + SimParseCustomCode on + SimBuildMode "sf_incremental_build" + SimGenImportedTypeDefs off + } + Simulink.RTWCC { + $BackupClass "Simulink.RTWCC" + $ObjectID 15 + Version "1.14.2" + Array { + Type "Cell" + Dimension 8 + Cell "IncludeHyperlinkInReport" + Cell "GenerateTraceInfo" + Cell "GenerateTraceReport" + Cell "GenerateTraceReportSl" + Cell "GenerateTraceReportSf" + Cell "GenerateTraceReportEml" + Cell "GenerateSLWebview" + Cell "GenerateCodeMetricsReport" + PropName "DisabledProps" + } + SystemTargetFile "grt.tlc" + TLCOptions "" + GenCodeOnly off + MakeCommand "make_rtw" + GenerateMakefile on + PackageGeneratedCodeAndArtifacts off + PackageName "" + TemplateMakefile "grt_default_tmf" + PostCodeGenCommand "" + Description "" + GenerateReport off + SaveLog off + RTWVerbose on + RetainRTWFile off + ProfileTLC off + TLCDebug off + TLCCoverage off + TLCAssert off + ProcessScriptMode "Default" + ConfigurationMode "Optimized" + ProcessScript "" + ConfigurationScript "" + ConfigAtBuild off + RTWUseLocalCustomCode off + RTWUseSimCustomCode off + CustomSourceCode "" + CustomHeaderCode "" + CustomInclude "" + CustomSource "" + CustomLibrary "" + CustomInitializer "" + CustomTerminator "" + Toolchain "Automatically locate an installed toolchain" + BuildConfiguration "Faster Builds" + IncludeHyperlinkInReport off + LaunchReport off + PortableWordSizes off + CreateSILPILBlock "None" + CodeExecutionProfiling off + CodeExecutionProfileVariable "executionProfile" + CodeProfilingSaveOptions "SummaryOnly" + CodeProfilingInstrumentation off + SILDebugging off + TargetLang "C" + IncludeBusHierarchyInRTWFileBlockHierarchyMap off + IncludeERTFirstTime off + GenerateTraceInfo off + GenerateTraceReport off + GenerateTraceReportSl off + GenerateTraceReportSf off + GenerateTraceReportEml off + GenerateCodeInfo off + GenerateWebview off + GenerateCodeMetricsReport off + GenerateCodeReplacementReport off + RTWCompilerOptimization "Off" + RTWCustomCompilerOptimizations "" + CheckMdlBeforeBuild "Off" + CustomRebuildMode "OnUpdate" + DataInitializer "" + SharedConstantsCachingThreshold 1024 + Array { + Type "Handle" + Dimension 2 + Simulink.CodeAppCC { + $ObjectID 16 + Version "1.14.2" + Array { + Type "Cell" + Dimension 21 + Cell "IgnoreCustomStorageClasses" + Cell "IgnoreTestpoints" + Cell "InsertBlockDesc" + Cell "InsertPolySpaceComments" + Cell "SFDataObjDesc" + Cell "MATLABFcnDesc" + Cell "SimulinkDataObjDesc" + Cell "DefineNamingRule" + Cell "SignalNamingRule" + Cell "ParamNamingRule" + Cell "InlinedPrmAccess" + Cell "CustomSymbolStr" + Cell "CustomSymbolStrGlobalVar" + Cell "CustomSymbolStrType" + Cell "CustomSymbolStrField" + Cell "CustomSymbolStrFcn" + Cell "CustomSymbolStrFcnArg" + Cell "CustomSymbolStrBlkIO" + Cell "CustomSymbolStrTmpVar" + Cell "CustomSymbolStrMacro" + Cell "ReqsInCode" + PropName "DisabledProps" + } + ForceParamTrailComments off + GenerateComments on + CommentStyle "Auto" + IgnoreCustomStorageClasses on + IgnoreTestpoints off + IncHierarchyInIds off + MaxIdLength 31 + PreserveName off + PreserveNameWithParent off + ShowEliminatedStatement off + OperatorAnnotations off + IncAutoGenComments off + SimulinkDataObjDesc off + SFDataObjDesc off + MATLABFcnDesc off + IncDataTypeInIds off + MangleLength 1 + CustomSymbolStrGlobalVar "$R$N$M" + CustomSymbolStrType "$N$R$M_T" + CustomSymbolStrField "$N$M" + CustomSymbolStrFcn "$R$N$M$F" + CustomSymbolStrFcnArg "rt$I$N$M" + CustomSymbolStrBlkIO "rtb_$N$M" + CustomSymbolStrTmpVar "$N$M" + CustomSymbolStrMacro "$R$N$M" + CustomSymbolStrUtil "$N$C" + DefineNamingRule "None" + ParamNamingRule "None" + SignalNamingRule "None" + InsertBlockDesc off + InsertPolySpaceComments off + SimulinkBlockComments on + MATLABSourceComments off + EnableCustomComments off + InternalIdentifier "Shortened" + InlinedPrmAccess "Literals" + ReqsInCode off + UseSimReservedNames off + } + Simulink.GRTTargetCC { + $BackupClass "Simulink.TargetCC" + $ObjectID 17 + Version "1.14.2" + Array { + Type "Cell" + Dimension 16 + Cell "GeneratePreprocessorConditionals" + Cell "IncludeMdlTerminateFcn" + Cell "CombineOutputUpdateFcns" + Cell "SuppressErrorStatus" + Cell "ERTCustomFileBanners" + Cell "GenerateSampleERTMain" + Cell "GenerateTestInterfaces" + Cell "ModelStepFunctionPrototypeControlCompliant" + Cell "CPPClassGenCompliant" + Cell "PortableWordSizes" + Cell "PurelyIntegerCode" + Cell "SupportComplex" + Cell "SupportAbsoluteTime" + Cell "SupportContinuousTime" + Cell "SupportNonInlinedSFcns" + Cell "GenerateAllocFcn" + PropName "DisabledProps" + } + TargetFcnLib "ansi_tfl_table_tmw.mat" + TargetLibSuffix "" + TargetPreCompLibLocation "" + GenFloatMathFcnCalls "NOT IN USE" + TargetLangStandard "C89/C90 (ANSI)" + CodeReplacementLibrary "None" + UtilityFuncGeneration "Auto" + ERTMultiwordTypeDef "System defined" + ERTMultiwordLength 256 + MultiwordLength 2048 + GenerateFullHeader on + GenerateSampleERTMain off + GenerateTestInterfaces off + ModelReferenceCompliant on + ParMdlRefBuildCompliant on + CompOptLevelCompliant on + ConcurrentExecutionCompliant on + IncludeMdlTerminateFcn on + GeneratePreprocessorConditionals "Disable all" + CombineOutputUpdateFcns off + CombineSignalStateStructs off + SuppressErrorStatus off + ERTFirstTimeCompliant off + IncludeFileDelimiter "Auto" + ERTCustomFileBanners off + SupportAbsoluteTime on + LogVarNameModifier "rt_" + MatFileLogging on + MultiInstanceERTCode off + CodeInterfacePackaging "Nonreusable function" + SupportNonFinite on + SupportComplex on + PurelyIntegerCode off + SupportContinuousTime on + SupportNonInlinedSFcns on + SupportVariableSizeSignals off + EnableShiftOperators on + ParenthesesLevel "Nominal" + MATLABClassNameForMDSCustomization "Simulink.SoftwareTarget.GRTCustomization" + ModelStepFunctionPrototypeControlCompliant off + CPPClassGenCompliant on + AutosarCompliant off + GRTInterface on + GenerateAllocFcn off + UseMalloc off + ExtMode off + ExtModeStaticAlloc off + ExtModeTesting off + ExtModeStaticAllocSize 1000000 + ExtModeTransport 0 + ExtModeMexFile "ext_comm" + ExtModeIntrfLevel "Level1" + RTWCAPISignals off + RTWCAPIParams off + RTWCAPIStates off + RTWCAPIRootIO off + GenerateASAP2 off + MultiInstanceErrorCode "Error" + } + PropName "Components" + } + } + hdlcoderui.hdlcc { + $ObjectID 18 + Version "1.14.2" + Description "HDL Coder custom configuration component" + Name "HDL Coder" + Array { + Type "Cell" + Dimension 1 + Cell "" + PropName "HDLConfigFile" + } + HDLCActiveTab "0" + } + PropName "Components" + } + Name "Configuration" + CurrentDlgPage "Solver" + ConfigPrmDlgPosition [ 243, 69, 1123, 699 ] + } + PropName "ConfigurationSets" + } + Simulink.ConfigSet { + $PropName "ActiveConfigurationSet" + $ObjectID 7 + } + Object { + $PropName "DataTransfer" + $ObjectID 19 + $ClassName "Simulink.GlobalDataTransfer" + DefaultTransitionBetweenSyncTasks "Ensure deterministic transfer (maximum delay)" + DefaultTransitionBetweenAsyncTasks "Ensure data integrity only" + DefaultTransitionBetweenContTasks "Ensure deterministic transfer (minimum delay)" + DefaultExtrapolationMethodBetweenContTasks "None" + AutoInsertRateTranBlk [0] + } + ExplicitPartitioning off + BlockDefaults { + ForegroundColor "black" + BackgroundColor "white" + DropShadow off + NamePlacement "normal" + FontName "Helvetica" + FontSize 10 + FontWeight "normal" + FontAngle "normal" + ShowName on + BlockRotation 0 + BlockMirror off + } + AnnotationDefaults { + HorizontalAlignment "center" + VerticalAlignment "middle" + ForegroundColor "black" + BackgroundColor "white" + DropShadow off + FontName "Helvetica" + FontSize 10 + FontWeight "normal" + FontAngle "normal" + UseDisplayTextAsClickCallback off + } + LineDefaults { + FontName "Helvetica" + FontSize 9 + FontWeight "normal" + FontAngle "normal" + } + MaskDefaults { + SelfModifiable "off" + IconFrame "on" + IconOpaque "on" + RunInitForIconRedraw "off" + IconRotate "none" + PortRotate "default" + IconUnits "autoscale" + } + MaskParameterDefaults { + Evaluate "on" + Tunable "on" + NeverSave "off" + Internal "off" + ReadOnly "off" + Enabled "on" + Visible "on" + ToolTip "on" + } + BlockParameterDefaults { + Block { + BlockType Demux + Outputs "4" + DisplayOption "none" + BusSelectionMode off + } + Block { + BlockType Derivative + CoefficientInTFapproximation "inf" + } + Block { + BlockType Gain + Gain "1" + Multiplication "Element-wise(K.*u)" + ParamMin "[]" + ParamMax "[]" + ParamDataTypeStr "Inherit: Same as input" + OutMin "[]" + OutMax "[]" + OutDataTypeStr "Inherit: Same as input" + LockScale off + RndMeth "Floor" + SaturateOnIntegerOverflow on + SampleTime "-1" + } + Block { + BlockType Inport + Port "1" + OutputFunctionCall off + OutMin "[]" + OutMax "[]" + OutDataTypeStr "Inherit: auto" + LockScale off + BusOutputAsStruct off + PortDimensions "-1" + VarSizeSig "Inherit" + SampleTime "-1" + SignalType "auto" + SamplingMode "auto" + LatchByDelayingOutsideSignal off + LatchInputForFeedbackSignals off + Interpolate on + } + Block { + BlockType Outport + Port "1" + OutMin "[]" + OutMax "[]" + OutDataTypeStr "Inherit: auto" + LockScale off + BusOutputAsStruct off + PortDimensions "-1" + VarSizeSig "Inherit" + SampleTime "-1" + SignalType "auto" + SamplingMode "auto" + SourceOfInitialOutputValue "Dialog" + OutputWhenDisabled "held" + InitialOutput "[]" + } + Block { + BlockType S-Function + FunctionName "system" + SFunctionModules "''" + PortCounts "[]" + SFunctionDeploymentMode off + } + Block { + BlockType Scope + ModelBased off + TickLabels "OneTimeTick" + ZoomMode "on" + Grid "on" + TimeRange "auto" + YMin "-5" + YMax "5" + SaveToWorkspace off + SaveName "ScopeData" + DataFormat "Array" + LimitDataPoints on + MaxDataPoints "5000" + Decimation "1" + SampleInput off + SampleTime "-1" + } + Block { + BlockType SubSystem + ShowPortLabels "FromPortIcon" + Permissions "ReadWrite" + PermitHierarchicalResolution "All" + TreatAsAtomicUnit off + MinAlgLoopOccurrences off + PropExecContextOutsideSubsystem off + CheckFcnCallInpInsideContextMsg off + SystemSampleTime "-1" + RTWSystemCode "Auto" + RTWFcnNameOpts "Auto" + RTWFileNameOpts "Auto" + FunctionInterfaceSpec "void_void" + FunctionWithSeparateData off + RTWMemSecFuncInitTerm "Inherit from model" + RTWMemSecFuncExecute "Inherit from model" + RTWMemSecDataConstants "Inherit from model" + RTWMemSecDataInternal "Inherit from model" + RTWMemSecDataParameters "Inherit from model" + SimViewingDevice off + DataTypeOverride "UseLocalSettings" + DataTypeOverrideAppliesTo "AllNumericTypes" + MinMaxOverflowLogging "UseLocalSettings" + Opaque off + MaskHideContents off + SFBlockType "NONE" + Variant off + GeneratePreprocessorConditionals off + ContentPreviewEnabled off + } + Block { + BlockType Terminator + } + } + System { + Name "Cessna_6DOF" + Location [-8, -8, 1374, 746] + Open on + ModelBrowserVisibility off + ModelBrowserWidth 200 + ScreenColor "white" + PaperOrientation "landscape" + PaperPositionMode "auto" + PaperType "A4" + PaperUnits "centimeters" + TiledPaperMargins [1.270000, 1.270000, 1.270000, 1.270000] + TiledPageScale 1 + ShowPageBoundaries off + ZoomFactor "100" + ReportName "simulink-default.rpt" + SIDHighWatermark "23" + Block { + BlockType Reference + Name "6DoF (Euler Angles)" + SID "1" + Ports [2, 8] + Position [235, 187, 435, 388] + ZOrder -1 + LibraryVersion "1.44" + SourceBlock "aerolibobsolete/6DoF (Euler Angles)" + SourceType "6DoF EoM (Body Axis)" + ContentPreviewEnabled off + units "Metric (MKS)" + mtype "Fixed" + rep "Euler Angles" + xme_0 "[x y z]" + Vm_0 "[u v w]" + eul_0 "[phi theta psi]" + pm_0 "[p q r]" + mass_0 "m" + mass_e "0.5" + mass_f "2.0" + inertia "diag([I_xx I_yy I_zz])" + inertia_e "eye(3)" + inertia_f "2*eye(3)" + k_quat "1.0" + } + Block { + BlockType Demux + Name "Demux" + SID "7" + Ports [1, 3] + Position [655, 321, 660, 359] + ZOrder -2 + ShowName off + Outputs "3" + DisplayOption "bar" + } + Block { + BlockType Demux + Name "Demux1" + SID "12" + Ports [1, 3] + Position [485, 126, 490, 164] + ZOrder -3 + BlockMirror on + ShowName off + Outputs "3" + DisplayOption "bar" + } + Block { + BlockType Demux + Name "Demux2" + SID "15" + Ports [1, 3] + Position [485, 71, 490, 109] + ZOrder -4 + BlockMirror on + ShowName off + Outputs "3" + DisplayOption "bar" + } + Block { + BlockType Derivative + Name "Derivative" + SID "6" + Position [615, 235, 645, 265] + ZOrder -5 + } + Block { + BlockType Gain + Name "Gain" + SID "17" + Position [385, 65, 415, 95] + ZOrder -6 + BlockMirror on + Gain "180/pi" + ParamDataTypeStr "Inherit: Inherit via internal rule" + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Gain + Name "Gain1" + SID "18" + Position [430, 75, 460, 105] + ZOrder -7 + BlockMirror on + Gain "180/pi" + ParamDataTypeStr "Inherit: Inherit via internal rule" + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Gain + Name "Gain2" + SID "19" + Position [385, 85, 415, 115] + ZOrder -8 + BlockMirror on + Gain "180/pi" + ParamDataTypeStr "Inherit: Inherit via internal rule" + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Gain + Name "Gain3" + SID "20" + Position [615, 125, 645, 155] + ZOrder -9 + Gain "180/pi" + ParamDataTypeStr "Inherit: Inherit via internal rule" + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Gain + Name "Gain4" + SID "21" + Position [700, 135, 730, 165] + ZOrder -10 + Gain "180/pi" + ParamDataTypeStr "Inherit: Inherit via internal rule" + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Reference + Name "Incidence, Sideslip,\n& Airspeed" + SID "3" + Ports [1, 3] + Position [525, 275, 585, 325] + ZOrder -11 + LibraryVersion "1.133" + SourceBlock "aerolibasang/Incidence, Sideslip,\n& Airspeed" + SourceType "Incidence,Sideslip,&Airspeed" + ContentPreviewEnabled off + } + Block { + BlockType SubSystem + Name "MATLAB Function1" + SID "5" + Ports [8, 2] + Position [715, 195, 830, 390] + ZOrder -12 + LibraryVersion "1.32" + ErrorFcn "Stateflow.Translate.translate" + PermitHierarchicalResolution "ExplicitOnly" + TreatAsAtomicUnit on + RequestExecContextInheritance off + SFBlockType "MATLAB Function" + System { + Name "MATLAB Function1" + Location [227, 345, 838, 789] + Open off + ModelBrowserVisibility off + ModelBrowserWidth 200 + ScreenColor "white" + PaperOrientation "landscape" + PaperPositionMode "auto" + PaperType "A4" + PaperUnits "centimeters" + TiledPaperMargins [1.270000, 1.270000, 1.270000, 1.270000] + TiledPageScale 1 + ShowPageBoundaries off + ZoomFactor "100" + SIDHighWatermark "29" + Block { + BlockType Inport + Name "V" + SID "5::1" + Position [20, 101, 40, 119] + ZOrder -1 + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "alpha" + SID "5::18" + Position [20, 136, 40, 154] + ZOrder -2 + Port "2" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "alpha_dot" + SID "5::25" + Position [20, 171, 40, 189] + ZOrder -3 + Port "3" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "beta" + SID "5::19" + Position [20, 206, 40, 224] + ZOrder -4 + Port "4" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "p" + SID "5::20" + Position [20, 246, 40, 264] + ZOrder -5 + Port "5" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "q" + SID "5::21" + Position [20, 281, 40, 299] + ZOrder -6 + Port "6" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "r" + SID "5::22" + Position [20, 316, 40, 334] + ZOrder -7 + Port "7" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "theta" + SID "5::23" + Position [20, 351, 40, 369] + ZOrder -8 + Port "8" + IconDisplay "Port number" + } + Block { + BlockType Demux + Name " Demux " + SID "5::27" + Ports [1, 1] + Position [270, 230, 320, 270] + ZOrder 2 + Outputs "1" + } + Block { + BlockType S-Function + Name " SFunction " + SID "5::26" + Tag "Stateflow S-Function Cessna_6DOF 1" + Ports [8, 3] + Position [180, 100, 230, 280] + ZOrder 1 + FunctionName "sf_sfun" + PortCounts "[8 3]" + EnableBusSupport on + Port { + PortNumber 2 + Name "F" + RTWStorageClass "Auto" + DataLoggingNameMode "SignalName" + } + Port { + PortNumber 3 + Name "M" + RTWStorageClass "Auto" + DataLoggingNameMode "SignalName" + } + } + Block { + BlockType Terminator + Name " Terminator " + SID "5::28" + Position [460, 241, 480, 259] + ZOrder 3 + } + Block { + BlockType Outport + Name "F" + SID "5::5" + Position [460, 101, 480, 119] + ZOrder -12 + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "M" + SID "5::24" + Position [460, 136, 480, 154] + ZOrder -13 + Port "2" + IconDisplay "Port number" + } + Line { + ZOrder 38 + SrcBlock "V" + SrcPort 1 + DstBlock " SFunction " + DstPort 1 + } + Line { + ZOrder 39 + SrcBlock "alpha" + SrcPort 1 + DstBlock " SFunction " + DstPort 2 + } + Line { + ZOrder 40 + SrcBlock "alpha_dot" + SrcPort 1 + DstBlock " SFunction " + DstPort 3 + } + Line { + ZOrder 41 + SrcBlock "beta" + SrcPort 1 + DstBlock " SFunction " + DstPort 4 + } + Line { + ZOrder 42 + SrcBlock "p" + SrcPort 1 + DstBlock " SFunction " + DstPort 5 + } + Line { + ZOrder 43 + SrcBlock "q" + SrcPort 1 + DstBlock " SFunction " + DstPort 6 + } + Line { + ZOrder 44 + SrcBlock "r" + SrcPort 1 + DstBlock " SFunction " + DstPort 7 + } + Line { + ZOrder 45 + SrcBlock "theta" + SrcPort 1 + DstBlock " SFunction " + DstPort 8 + } + Line { + Name "F" + ZOrder 46 + Labels [0, 0] + SrcBlock " SFunction " + SrcPort 2 + DstBlock "F" + DstPort 1 + } + Line { + Name "M" + ZOrder 47 + Labels [0, 0] + SrcBlock " SFunction " + SrcPort 3 + DstBlock "M" + DstPort 1 + } + Line { + ZOrder 48 + SrcBlock " Demux " + SrcPort 1 + DstBlock " Terminator " + DstPort 1 + } + Line { + ZOrder 49 + SrcBlock " SFunction " + SrcPort 1 + DstBlock " Demux " + DstPort 1 + } + } + } + Block { + BlockType Scope + Name "Scope" + SID "13" + Ports [3] + Position [765, 124, 795, 156] + ZOrder -13 + Floating off + Location [1, 48, 1367, 737] + Open off + NumInputPorts "3" + List { + ListType AxesTitles + axes1 "%" + axes2 "%" + axes3 "%" + } + ShowLegends off + YMin "-5~-5~-5" + YMax "5~5~5" + DataFormat "StructureWithTime" + SampleTime "0" + } + Block { + BlockType Scope + Name "Scope1" + SID "14" + Ports [3] + Position [410, 129, 440, 161] + ZOrder -14 + BlockMirror on + Floating off + Location [1, 48, 1025, 737] + Open off + NumInputPorts "3" + List { + ListType AxesTitles + axes1 "%" + axes2 "%" + axes3 "%" + } + List { + ListType ScopeGraphics + FigureColor "[0.5 0.5 0.5]" + AxesColor "[0 0 0]" + AxesTickColor "[1 1 1]" + LineColors "[1 1 0;1 0 1;0 1 1;1 0 0;0 1 0;0 0 1]" + LineStyles "-|-|-|-|-|-" + LineWidths "[0.5 0.5 0.5 0.5 0.5 0.5]" + MarkerStyles "none|none|none|none|none|none" + } + ShowLegends off + YMin "-5~-5~-5" + YMax "5~5~5" + SaveName "ScopeData1" + DataFormat "StructureWithTime" + SampleTime "0" + } + Block { + BlockType Scope + Name "Scope2" + SID "16" + Ports [3] + Position [330, 74, 360, 106] + ZOrder -15 + BlockMirror on + Floating off + Location [1, 48, 1367, 737] + Open off + NumInputPorts "3" + List { + ListType AxesTitles + axes1 "%" + axes2 "%" + axes3 "%" + } + ShowLegends off + YMin "-5~-5~-5" + YMax "5~5~5" + SaveName "ScopeData2" + DataFormat "StructureWithTime" + SampleTime "0" + } + Block { + BlockType Scope + Name "Scope3" + SID "22" + Ports [3] + Position [755, 424, 785, 456] + ZOrder -16 + Floating off + Location [1, 48, 1367, 737] + Open off + NumInputPorts "3" + List { + ListType AxesTitles + axes1 "%" + axes2 "%" + axes3 "%" + } + ShowLegends off + YMin "-5~-5~-5" + YMax "5~5~5" + SaveName "ScopeData3" + DataFormat "StructureWithTime" + SampleTime "0" + } + Block { + BlockType Terminator + Name "Terminator" + SID "8" + Position [475, 375, 495, 395] + ZOrder -17 + } + Block { + BlockType Terminator + Name "Terminator1" + SID "9" + Position [550, 375, 570, 395] + ZOrder -18 + } + Block { + BlockType Terminator + Name "Terminator2" + SID "10" + Position [460, 190, 480, 210] + ZOrder -19 + } + Block { + BlockType Terminator + Name "Terminator3" + SID "11" + Position [460, 265, 480, 285] + ZOrder -20 + } + Line { + ZOrder 1 + SrcBlock "6DoF (Euler Angles)" + SrcPort 5 + DstBlock "Incidence, Sideslip,\n& Airspeed" + DstPort 1 + } + Line { + ZOrder 2 + SrcBlock "Incidence, Sideslip,\n& Airspeed" + SrcPort 3 + Points [0, -115] + Branch { + ZOrder 3 + Points [110, 0] + DstBlock "MATLAB Function1" + DstPort 1 + } + Branch { + ZOrder 4 + Points [0, -70] + DstBlock "Scope" + DstPort 1 + } + } + Line { + ZOrder 5 + SrcBlock "Incidence, Sideslip,\n& Airspeed" + SrcPort 1 + Points [10, 0; 0, -35] + Branch { + ZOrder 6 + DstBlock "Derivative" + DstPort 1 + } + Branch { + ZOrder 7 + Points [0, -25] + Branch { + ZOrder 8 + Points [100, 0] + DstBlock "MATLAB Function1" + DstPort 2 + } + Branch { + ZOrder 9 + DstBlock "Gain3" + DstPort 1 + } + } + } + Line { + ZOrder 10 + SrcBlock "Incidence, Sideslip,\n& Airspeed" + SrcPort 2 + Points [75, 0; 0, -25] + Branch { + ZOrder 11 + Points [35, 0] + DstBlock "MATLAB Function1" + DstPort 4 + } + Branch { + ZOrder 12 + Points [0, -125] + DstBlock "Gain4" + DstPort 1 + } + } + Line { + ZOrder 13 + SrcBlock "Derivative" + SrcPort 1 + Points [50, 0] + DstBlock "MATLAB Function1" + DstPort 3 + } + Line { + ZOrder 14 + SrcBlock "Demux" + SrcPort 1 + Points [25, 0] + Branch { + ZOrder 15 + Points [0, -25] + DstBlock "MATLAB Function1" + DstPort 5 + } + Branch { + ZOrder 16 + Points [0, 100] + DstBlock "Scope3" + DstPort 1 + } + } + Line { + ZOrder 17 + SrcBlock "Demux" + SrcPort 2 + Points [35, 0] + Branch { + ZOrder 18 + DstBlock "MATLAB Function1" + DstPort 6 + } + Branch { + ZOrder 19 + Points [0, 100] + DstBlock "Scope3" + DstPort 2 + } + } + Line { + ZOrder 20 + SrcBlock "Demux" + SrcPort 3 + Points [15, 0] + Branch { + ZOrder 21 + Points [20, 0] + DstBlock "MATLAB Function1" + DstPort 7 + } + Branch { + ZOrder 22 + Points [0, 100] + DstBlock "Scope3" + DstPort 3 + } + } + Line { + ZOrder 23 + SrcBlock "6DoF (Euler Angles)" + SrcPort 6 + Points [25, 0; 0, 35; 175, 0] + DstBlock "Demux" + DstPort 1 + } + Line { + ZOrder 24 + SrcBlock "MATLAB Function1" + SrcPort 1 + Points [9, 0; 0, -70; -624, 0] + DstBlock "6DoF (Euler Angles)" + DstPort 1 + } + Line { + ZOrder 25 + SrcBlock "MATLAB Function1" + SrcPort 2 + Points [9, 0; 0, 70; -624, 0] + DstBlock "6DoF (Euler Angles)" + DstPort 2 + } + Line { + ZOrder 26 + SrcBlock "6DoF (Euler Angles)" + SrcPort 7 + Points [20, 0; 0, 20; 75, 0] + DstBlock "Terminator1" + DstPort 1 + } + Line { + ZOrder 27 + SrcBlock "6DoF (Euler Angles)" + SrcPort 8 + Points [10, 0; 0, 10] + DstBlock "Terminator" + DstPort 1 + } + Line { + ZOrder 28 + SrcBlock "6DoF (Euler Angles)" + SrcPort 1 + DstBlock "Terminator2" + DstPort 1 + } + Line { + ZOrder 29 + SrcBlock "6DoF (Euler Angles)" + SrcPort 4 + DstBlock "Terminator3" + DstPort 1 + } + Line { + ZOrder 30 + SrcBlock "Demux1" + SrcPort 1 + DstBlock "Scope1" + DstPort 1 + } + Line { + ZOrder 31 + SrcBlock "Demux1" + SrcPort 2 + DstBlock "Scope1" + DstPort 2 + } + Line { + ZOrder 32 + SrcBlock "Demux1" + SrcPort 3 + DstBlock "Scope1" + DstPort 3 + } + Line { + ZOrder 33 + SrcBlock "6DoF (Euler Angles)" + SrcPort 2 + Points [0, 5; 65, 0] + DstBlock "Demux1" + DstPort 1 + } + Line { + ZOrder 34 + SrcBlock "Demux2" + SrcPort 1 + DstBlock "Gain" + DstPort 1 + } + Line { + ZOrder 35 + SrcBlock "Demux2" + SrcPort 2 + Points [-5, 0] + Branch { + ZOrder 36 + Points [0, -30; 40, 0; 0, 305; 185, 0] + DstBlock "MATLAB Function1" + DstPort 8 + } + Branch { + ZOrder 37 + DstBlock "Gain1" + DstPort 1 + } + } + Line { + ZOrder 38 + SrcBlock "Demux2" + SrcPort 3 + DstBlock "Gain2" + DstPort 1 + } + Line { + ZOrder 39 + SrcBlock "6DoF (Euler Angles)" + SrcPort 3 + Points [70, 0; 0, -160] + DstBlock "Demux2" + DstPort 1 + } + Line { + ZOrder 40 + SrcBlock "Gain" + SrcPort 1 + DstBlock "Scope2" + DstPort 1 + } + Line { + ZOrder 41 + SrcBlock "Gain1" + SrcPort 1 + DstBlock "Scope2" + DstPort 2 + } + Line { + ZOrder 42 + SrcBlock "Gain2" + SrcPort 1 + DstBlock "Scope2" + DstPort 3 + } + Line { + ZOrder 43 + SrcBlock "Gain3" + SrcPort 1 + DstBlock "Scope" + DstPort 2 + } + Line { + ZOrder 44 + SrcBlock "Gain4" + SrcPort 1 + DstBlock "Scope" + DstPort 3 + } + } +} +#Finite State Machines +# +# Stateflow Version 8.1 (R2014a) dated Feb 8 2014, 02:29:12 +# +# +Stateflow { + machine { + id 1 + name "Cessna_6DOF" + created "20-Dec-2014 14:27:29" + isLibrary 0 + firstTarget 17 + sfVersion 76014001.002 + } + chart { + id 2 + name "MATLAB Function1" + windowPosition [315.596 52 213 385] + viewLimits [0 156.75 0 153.75] + screen [1 1 1024 768 1.333333333333333] + treeNode [0 3 0 0] + firstTransition 15 + firstJunction 14 + viewObj 2 + visible 1 + machine 1 + subviewS { + } + ssIdHighWaterMark 14 + decomposition CLUSTER_CHART + type EML_CHART + firstData 4 + chartFileNumber 1 + disableImplicitCasting 1 + eml { + name "FM_Cessna" + } + } + state { + id 3 + labelString "eML_blk_kernel()" + position [18 64.5 118 66] + fontSize 12 + chart 2 + treeNode [2 0 0 0] + superState SUBCHART + subviewer 2 + ssIdNumber 1 + type FUNC_STATE + decomposition CLUSTER_STATE + eml { + isEML 1 + script "function [F, M] = FM_Cessna(V, alpha, alpha_dot, beta, p, q, r, theta)\n\ng = 9.8;\nrho = 1.225;\n" + "\nm = 1043.26;\nC_bar = 1.493;\nb = 10.911;\nS_ref = 16.1651;\n\nC_L_0 = 0.25;\nC_L_alpha = 4.47;\nC_L_q = 1.7;\n" + "C_L_delta_e = 0.3476;\n\n% Ignore all other C_D derivatives excluding C_D_0\n% Use C_D = C_D_0 + k*C_L^2\n\nC_D_" + "0 = 0.036;\nk = 0.3;\n\nC_Y_beta = -0.31;\nC_Y_p = -0.037;\nC_Y_r = 0.21;\nC_Y_delta_a = 0;\n\nC_l_beta = -0.089" + ";\nC_l_p = -0.47;\nC_l_r = 0.096;\nC_l_delta_a = -0.09;\nC_l_delta_r = 0.0147;\n\nC_M_0 = -0.02;\nC_M_alpha = -1" + ".8;\nC_M_alpha_dot = -12.4;\nC_M_delta_e = -1.28;\n\nC_N_beta = 0.065;\nC_N_p = -0.03;\nC_N_r = -0.99;\nC_N_delt" + "a_a = -0.0053;\nC_N_delta_r = -0.0657;\n\n% Use delta_e and thrust value from output of fsolve(@Trim_function)\n" + "\ndelta_e = 0.0338;\ndelta_a = 0;\ndelta_r = 0;\nthrust = 4219.6;\n\nC_L = C_L_0 + C_L_alpha*alpha + C_L_q*(q*C_" + "bar/(2*V)) + C_L_delta_e*delta_e;\nC_D = C_D_0 + k*C_L^2;\nC_Y = C_Y_beta*beta + C_Y_p*(p*b/(2*V)) + C_Y_r*(r*b/" + "(2*V)) + C_Y_delta_a*delta_a;\n\nC_l = C_l_beta*beta + C_l_p*(p*b/(2*V)) + C_l_r*(r*b/(2*V)) + C_l_delta_a*delta" + "_a + C_l_delta_r*delta_r;\nC_M = C_M_0 + C_M_alpha*alpha + C_M_alpha_dot*(alpha_dot*C_bar/(2*V)) + C_M_delta_e*d" + "elta_e;\nC_N = C_N_beta*beta + C_N_p*(p*b/(2*V)) + C_N_r*(r*b/(2*V)) + C_N_delta_a*delta_a + C_N_delta_r*delta_r" + ";\n\nC_X = -C_D*cos(alpha) + C_L*sin(alpha);\nC_Z = -C_D*sin(alpha) - C_L*cos(alpha);\n\nF = zeros(3,1);\nM = ze" + "ros(3,1);\n\nq_bar = 0.5*rho*V*V;\n\nF(1,1) = q_bar*S_ref*C_X - m*g*sin(theta) + thrust;\nF(2,1) = q_bar*S_ref*C" + "_Y;\nF(3,1) = q_bar*S_ref*C_Z + m*g*cos(theta);\n\nM(1,1) = q_bar*b*S_ref*C_l;\nM(2,1) = q_bar*C_bar*S_ref*C_M;\n" + "M(3,1) = q_bar*b*S_ref*C_N;" + editorLayout "100 M4x1[10 5 700 500]" + } + } + data { + id 4 + ssIdNumber 4 + name "V" + linkNode [2 0 5] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + } + complexity SF_COMPLEX_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 5 + ssIdNumber 5 + name "F" + linkNode [2 4 6] + scope OUTPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_NO + } + dataType "Inherit: Same as Simulink" + } + data { + id 6 + ssIdNumber 6 + name "alpha" + linkNode [2 5 7] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 7 + ssIdNumber 13 + name "alpha_dot" + linkNode [2 6 8] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 8 + ssIdNumber 7 + name "beta" + linkNode [2 7 9] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 9 + ssIdNumber 8 + name "p" + linkNode [2 8 10] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 10 + ssIdNumber 9 + name "q" + linkNode [2 9 11] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 11 + ssIdNumber 10 + name "r" + linkNode [2 10 12] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 12 + ssIdNumber 11 + name "theta" + linkNode [2 11 13] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 13 + ssIdNumber 12 + name "M" + linkNode [2 12 0] + scope OUTPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_NO + } + dataType "Inherit: Same as Simulink" + } + junction { + id 14 + position [23.5747 49.5747 7] + chart 2 + linkNode [2 0 0] + subviewer 2 + ssIdNumber 3 + type CONNECTIVE_JUNCTION + } + transition { + id 15 + labelString "{eML_blk_kernel();}" + labelPosition [36.125 25.875 102.544 14.964] + fontSize 12 + src { + intersection [0 0 1 0 23.5747 14.625 0 0] + } + dst { + id 14 + intersection [1 0 -1 0 23.5747 42.5747 0 0] + } + midPoint [23.5747 24.9468] + chart 2 + linkNode [2 0 0] + dataLimits [21.175 25.975 14.625 42.575] + subviewer 2 + drawStyle SMART + slide { + sticky BOTH_STICK + } + executionOrder 1 + ssIdNumber 2 + } + instance { + id 16 + name "MATLAB Function1" + machine 1 + chart 2 + } + target { + id 17 + name "sfun" + description "Default Simulink S-Function Target." + machine 1 + linkNode [1 0 0] + } +} diff --git a/Prof_Arya/Cessna_6DOF.mdl.r2011a b/Prof_Arya/Cessna_6DOF.mdl.r2011a new file mode 100644 index 0000000..4be6b03 --- /dev/null +++ b/Prof_Arya/Cessna_6DOF.mdl.r2011a @@ -0,0 +1,1849 @@ +Model { + Name "Cessna_6DOF" + Version 7.7 + MdlSubVersion 0 + GraphicalInterface { + NumRootInports 0 + NumRootOutports 0 + ParameterArgumentNames "" + ComputedModelVersion "1.8" + NumModelReferences 0 + NumTestPointedSignals 0 + } + SavedCharacterEncoding "windows-1252" + SaveDefaultBlockParams on + ScopeRefreshTime 0.035000 + OverrideScopeRefreshTime on + DisableAllScopes off + DataTypeOverride "UseLocalSettings" + DataTypeOverrideAppliesTo "AllNumericTypes" + MinMaxOverflowLogging "UseLocalSettings" + MinMaxOverflowArchiveMode "Overwrite" + MaxMDLFileLineLength 120 + Created "Sat Dec 20 14:26:50 2014" + Creator "Pranav" + UpdateHistory "UpdateHistoryNever" + ModifiedByFormat "%" + LastModifiedBy "Pranav" + ModifiedDateFormat "%" + LastModifiedDate "Mon Dec 22 10:00:17 2014" + RTWModifiedTimeStamp 341142813 + ModelVersionFormat "1.%" + ConfigurationManager "None" + SampleTimeColors off + SampleTimeAnnotations off + LibraryLinkDisplay "none" + WideLines off + ShowLineDimensions off + ShowPortDataTypes off + ShowLoopsOnError on + IgnoreBidirectionalLines off + ShowStorageClass off + ShowTestPointIcons on + ShowSignalResolutionIcons on + ShowViewerIcons on + SortedOrder off + ExecutionContextIcon off + ShowLinearizationAnnotations on + BlockNameDataTip off + BlockParametersDataTip off + BlockDescriptionStringDataTip off + ToolBar on + StatusBar on + BrowserShowLibraryLinks off + BrowserLookUnderMasks off + SimulationMode "normal" + LinearizationMsg "none" + Profile off + ParamWorkspaceSource "MATLABWorkspace" + AccelSystemTargetFile "accel.tlc" + AccelTemplateMakefile "accel_default_tmf" + AccelMakeCommand "make_rtw" + TryForcingSFcnDF off + Object { + $PropName "DataLoggingOverride" + $ObjectID 1 + $ClassName "Simulink.SimulationData.ModelLoggingInfo" + model_ "Cessna_6DOF" + overrideMode_ [0.0] + Array { + Type "Cell" + Dimension 1 + Cell "Cessna_6DOF" + PropName "logAsSpecifiedByModels_" + } + Array { + Type "Cell" + Dimension 1 + Cell [] + PropName "logAsSpecifiedByModelsSSIDs_" + } + } + RecordCoverage off + CovPath "/" + CovSaveName "covdata" + CovMetricSettings "dw" + CovNameIncrementing off + CovHtmlReporting on + CovForceBlockReductionOff on + covSaveCumulativeToWorkspaceVar on + CovSaveSingleToWorkspaceVar on + CovCumulativeVarName "covCumulativeData" + CovCumulativeReport off + CovReportOnPause on + CovModelRefEnable "Off" + CovExternalEMLEnable off + ExtModeBatchMode off + ExtModeEnableFloating on + ExtModeTrigType "manual" + ExtModeTrigMode "normal" + ExtModeTrigPort "1" + ExtModeTrigElement "any" + ExtModeTrigDuration 1000 + ExtModeTrigDurationFloating "auto" + ExtModeTrigHoldOff 0 + ExtModeTrigDelay 0 + ExtModeTrigDirection "rising" + ExtModeTrigLevel 0 + ExtModeArchiveMode "off" + ExtModeAutoIncOneShot off + ExtModeIncDirWhenArm off + ExtModeAddSuffixToVar off + ExtModeWriteAllDataToWs off + ExtModeArmWhenConnect on + ExtModeSkipDownloadWhenConnect off + ExtModeLogAll on + ExtModeAutoUpdateStatusClock on + BufferReuse on + ShowModelReferenceBlockVersion off + ShowModelReferenceBlockIO off + Array { + Type "Handle" + Dimension 1 + Simulink.ConfigSet { + $ObjectID 2 + Version "1.11.0" + Array { + Type "Handle" + Dimension 9 + Simulink.SolverCC { + $ObjectID 3 + Version "1.11.0" + StartTime "0.0" + StopTime "1000" + AbsTol "auto" + FixedStep "auto" + InitialStep "auto" + MaxNumMinSteps "-1" + MaxOrder 5 + ZcThreshold "auto" + ConsecutiveZCsStepRelTol "10*128*eps" + MaxConsecutiveZCs "1000" + ExtrapolationOrder 4 + NumberNewtonIterations 1 + MaxStep "auto" + MinStep "auto" + MaxConsecutiveMinStep "1" + RelTol "1e-3" + SolverMode "Auto" + ConcurrentTasks off + Solver "ode45" + SolverName "ode45" + SolverJacobianMethodControl "auto" + ShapePreserveControl "DisableAll" + ZeroCrossControl "UseLocalSettings" + ZeroCrossAlgorithm "Nonadaptive" + AlgebraicLoopSolver "TrustRegion" + SolverResetMethod "Fast" + PositivePriorityOrder off + AutoInsertRateTranBlk off + SampleTimeConstraint "Unconstrained" + InsertRTBMode "Whenever possible" + } + Simulink.DataIOCC { + $ObjectID 4 + Version "1.11.0" + Decimation "1" + ExternalInput "[t, u]" + FinalStateName "xFinal" + InitialState "xInitial" + LimitDataPoints on + MaxDataPoints "1000" + LoadExternalInput off + LoadInitialState off + SaveFinalState off + SaveCompleteFinalSimState off + SaveFormat "Array" + SignalLoggingSaveFormat "ModelDataLogs" + SaveOutput on + SaveState off + SignalLogging on + DSMLogging on + InspectSignalLogs off + SaveTime on + ReturnWorkspaceOutputs off + StateSaveName "xout" + TimeSaveName "tout" + OutputSaveName "yout" + SignalLoggingName "logsout" + DSMLoggingName "dsmout" + OutputOption "RefineOutputTimes" + OutputTimes "[]" + ReturnWorkspaceOutputsName "out" + Refine "1" + } + Simulink.OptimizationCC { + $ObjectID 5 + Version "1.11.0" + Array { + Type "Cell" + Dimension 8 + Cell "BooleansAsBitfields" + Cell "PassReuseOutputArgsAs" + Cell "PassReuseOutputArgsThreshold" + Cell "ZeroExternalMemoryAtStartup" + Cell "ZeroInternalMemoryAtStartup" + Cell "OptimizeModelRefInitCode" + Cell "NoFixptDivByZeroProtection" + Cell "UseSpecifiedMinMax" + PropName "DisabledProps" + } + BlockReduction on + BooleanDataType on + ConditionallyExecuteInputs on + InlineParams off + UseIntDivNetSlope off + UseSpecifiedMinMax off + InlineInvariantSignals off + OptimizeBlockIOStorage on + BufferReuse on + EnhancedBackFolding off + StrengthReduction off + ExpressionFolding on + BooleansAsBitfields off + BitfieldContainerType "uint_T" + EnableMemcpy on + MemcpyThreshold 64 + PassReuseOutputArgsAs "Structure reference" + ExpressionDepthLimit 2147483647 + FoldNonRolledExpr on + LocalBlockOutputs on + RollThreshold 5 + SystemCodeInlineAuto off + StateBitsets off + DataBitsets off + UseTempVars off + ZeroExternalMemoryAtStartup on + ZeroInternalMemoryAtStartup on + InitFltsAndDblsToZero off + NoFixptDivByZeroProtection off + EfficientFloat2IntCast off + EfficientMapNaN2IntZero on + OptimizeModelRefInitCode off + LifeSpan "inf" + MaxStackSize "Inherit from target" + BufferReusableBoundary on + SimCompilerOptimization "Off" + AccelVerboseBuild off + AccelParallelForEachSubsystem on + } + Simulink.DebuggingCC { + $ObjectID 6 + Version "1.11.0" + RTPrefix "error" + ConsistencyChecking "none" + ArrayBoundsChecking "none" + SignalInfNanChecking "none" + SignalRangeChecking "none" + ReadBeforeWriteMsg "UseLocalSettings" + WriteAfterWriteMsg "UseLocalSettings" + WriteAfterReadMsg "UseLocalSettings" + AlgebraicLoopMsg "warning" + ArtificialAlgebraicLoopMsg "warning" + SaveWithDisabledLinksMsg "warning" + SaveWithParameterizedLinksMsg "warning" + CheckSSInitialOutputMsg on + UnderspecifiedInitializationDetection "Classic" + MergeDetectMultiDrivingBlocksExec "none" + CheckExecutionContextPreStartOutputMsg off + CheckExecutionContextRuntimeOutputMsg off + SignalResolutionControl "UseLocalSettings" + BlockPriorityViolationMsg "warning" + MinStepSizeMsg "warning" + TimeAdjustmentMsg "none" + MaxConsecutiveZCsMsg "error" + MaskedZcDiagnostic "warning" + IgnoredZcDiagnostic "warning" + SolverPrmCheckMsg "warning" + InheritedTsInSrcMsg "warning" + DiscreteInheritContinuousMsg "warning" + MultiTaskDSMMsg "error" + MultiTaskCondExecSysMsg "error" + MultiTaskRateTransMsg "error" + SingleTaskRateTransMsg "none" + TasksWithSamePriorityMsg "warning" + SigSpecEnsureSampleTimeMsg "warning" + CheckMatrixSingularityMsg "none" + IntegerOverflowMsg "warning" + Int32ToFloatConvMsg "warning" + ParameterDowncastMsg "error" + ParameterOverflowMsg "error" + ParameterUnderflowMsg "none" + ParameterPrecisionLossMsg "warning" + ParameterTunabilityLossMsg "warning" + FixptConstUnderflowMsg "none" + FixptConstOverflowMsg "none" + FixptConstPrecisionLossMsg "none" + UnderSpecifiedDataTypeMsg "none" + UnnecessaryDatatypeConvMsg "none" + VectorMatrixConversionMsg "none" + InvalidFcnCallConnMsg "error" + FcnCallInpInsideContextMsg "Use local settings" + SignalLabelMismatchMsg "none" + UnconnectedInputMsg "warning" + UnconnectedOutputMsg "warning" + UnconnectedLineMsg "warning" + SFcnCompatibilityMsg "none" + UniqueDataStoreMsg "none" + BusObjectLabelMismatch "warning" + RootOutportRequireBusObject "warning" + AssertControl "UseLocalSettings" + EnableOverflowDetection off + ModelReferenceIOMsg "none" + ModelReferenceMultiInstanceNormalModeStructChecksumCheck "error" + ModelReferenceVersionMismatchMessage "none" + ModelReferenceIOMismatchMessage "none" + ModelReferenceCSMismatchMessage "none" + UnknownTsInhSupMsg "warning" + ModelReferenceDataLoggingMessage "warning" + ModelReferenceSymbolNameMessage "warning" + ModelReferenceExtraNoncontSigs "error" + StateNameClashWarn "warning" + SimStateInterfaceChecksumMismatchMsg "warning" + SimStateOlderReleaseMsg "error" + InitInArrayFormatMsg "warning" + StrictBusMsg "ErrorLevel1" + BusNameAdapt "WarnAndRepair" + NonBusSignalsTreatedAsBus "none" + LoggingUnavailableSignals "error" + BlockIODiagnostic "none" + SFUnusedDataAndEventsDiag "warning" + SFUnexpectedBacktrackingDiag "warning" + SFInvalidInputDataAccessInChartInitDiag "warning" + SFNoUnconditionalDefaultTransitionDiag "warning" + SFTransitionOutsideNaturalParentDiag "warning" + } + Simulink.HardwareCC { + $ObjectID 7 + Version "1.11.0" + ProdBitPerChar 8 + ProdBitPerShort 16 + ProdBitPerInt 32 + ProdBitPerLong 32 + ProdBitPerFloat 32 + ProdBitPerDouble 64 + ProdBitPerPointer 32 + ProdLargestAtomicInteger "Char" + ProdLargestAtomicFloat "None" + ProdIntDivRoundTo "Undefined" + ProdEndianess "Unspecified" + ProdWordSize 32 + ProdShiftRightIntArith on + ProdHWDeviceType "32-bit Generic" + TargetBitPerChar 8 + TargetBitPerShort 16 + TargetBitPerInt 32 + TargetBitPerLong 32 + TargetBitPerFloat 32 + TargetBitPerDouble 64 + TargetBitPerPointer 32 + TargetLargestAtomicInteger "Char" + TargetLargestAtomicFloat "None" + TargetShiftRightIntArith on + TargetIntDivRoundTo "Undefined" + TargetEndianess "Unspecified" + TargetWordSize 32 + TargetTypeEmulationWarnSuppressLevel 0 + TargetPreprocMaxBitsSint 32 + TargetPreprocMaxBitsUint 32 + TargetHWDeviceType "Specified" + TargetUnknown off + ProdEqTarget on + } + Simulink.ModelReferenceCC { + $ObjectID 8 + Version "1.11.0" + UpdateModelReferenceTargets "IfOutOfDateOrStructuralChange" + CheckModelReferenceTargetMessage "error" + EnableParallelModelReferenceBuilds off + ParallelModelReferenceErrorOnInvalidPool on + ParallelModelReferenceMATLABWorkerInit "None" + ModelReferenceNumInstancesAllowed "Multi" + PropagateVarSize "Infer from blocks in model" + ModelReferencePassRootInputsByReference on + ModelReferenceMinAlgLoopOccurrences off + PropagateSignalLabelsOutOfModel off + SupportModelReferenceSimTargetCustomCode off + } + Simulink.SFSimCC { + $ObjectID 9 + Version "1.11.0" + SFSimEnableDebug on + SFSimOverflowDetection on + SFSimEcho on + SimBlas on + SimCtrlC on + SimExtrinsic on + SimIntegrity on + SimUseLocalCustomCode off + SimParseCustomCode on + SimBuildMode "sf_incremental_build" + } + Simulink.RTWCC { + $BackupClass "Simulink.RTWCC" + $ObjectID 10 + Version "1.11.0" + Array { + Type "Cell" + Dimension 8 + Cell "IncludeHyperlinkInReport" + Cell "GenerateTraceInfo" + Cell "GenerateTraceReport" + Cell "GenerateTraceReportSl" + Cell "GenerateTraceReportSf" + Cell "GenerateTraceReportEml" + Cell "GenerateSLWebview" + Cell "GenerateCodeMetricsReport" + PropName "DisabledProps" + } + SystemTargetFile "grt.tlc" + GenCodeOnly off + MakeCommand "make_rtw" + GenerateMakefile on + TemplateMakefile "grt_default_tmf" + GenerateReport off + SaveLog off + RTWVerbose on + RetainRTWFile off + ProfileTLC off + TLCDebug off + TLCCoverage off + TLCAssert off + ProcessScriptMode "Default" + ConfigurationMode "Optimized" + ConfigAtBuild off + RTWUseLocalCustomCode off + RTWUseSimCustomCode off + IncludeHyperlinkInReport off + LaunchReport off + TargetLang "C" + IncludeBusHierarchyInRTWFileBlockHierarchyMap off + IncludeERTFirstTime off + GenerateTraceInfo off + GenerateTraceReport off + GenerateTraceReportSl off + GenerateTraceReportSf off + GenerateTraceReportEml off + GenerateCodeInfo off + GenerateSLWebview off + GenerateCodeMetricsReport off + RTWCompilerOptimization "Off" + CheckMdlBeforeBuild "Off" + CustomRebuildMode "OnUpdate" + Array { + Type "Handle" + Dimension 2 + Simulink.CodeAppCC { + $ObjectID 11 + Version "1.11.0" + Array { + Type "Cell" + Dimension 21 + Cell "IgnoreCustomStorageClasses" + Cell "IgnoreTestpoints" + Cell "InsertBlockDesc" + Cell "InsertPolySpaceComments" + Cell "SFDataObjDesc" + Cell "MATLABFcnDesc" + Cell "SimulinkDataObjDesc" + Cell "DefineNamingRule" + Cell "SignalNamingRule" + Cell "ParamNamingRule" + Cell "InlinedPrmAccess" + Cell "CustomSymbolStr" + Cell "CustomSymbolStrGlobalVar" + Cell "CustomSymbolStrType" + Cell "CustomSymbolStrField" + Cell "CustomSymbolStrFcn" + Cell "CustomSymbolStrFcnArg" + Cell "CustomSymbolStrBlkIO" + Cell "CustomSymbolStrTmpVar" + Cell "CustomSymbolStrMacro" + Cell "ReqsInCode" + PropName "DisabledProps" + } + ForceParamTrailComments off + GenerateComments on + IgnoreCustomStorageClasses on + IgnoreTestpoints off + IncHierarchyInIds off + MaxIdLength 31 + PreserveName off + PreserveNameWithParent off + ShowEliminatedStatement off + IncAutoGenComments off + SimulinkDataObjDesc off + SFDataObjDesc off + MATLABFcnDesc off + IncDataTypeInIds off + MangleLength 1 + CustomSymbolStrGlobalVar "$R$N$M" + CustomSymbolStrType "$N$R$M" + CustomSymbolStrField "$N$M" + CustomSymbolStrFcn "$R$N$M$F" + CustomSymbolStrFcnArg "rt$I$N$M" + CustomSymbolStrBlkIO "rtb_$N$M" + CustomSymbolStrTmpVar "$N$M" + CustomSymbolStrMacro "$R$N$M" + DefineNamingRule "None" + ParamNamingRule "None" + SignalNamingRule "None" + InsertBlockDesc off + InsertPolySpaceComments off + SimulinkBlockComments on + MATLABSourceComments off + EnableCustomComments off + InlinedPrmAccess "Literals" + ReqsInCode off + UseSimReservedNames off + } + Simulink.GRTTargetCC { + $BackupClass "Simulink.TargetCC" + $ObjectID 12 + Version "1.11.0" + Array { + Type "Cell" + Dimension 16 + Cell "GeneratePreprocessorConditionals" + Cell "IncludeMdlTerminateFcn" + Cell "CombineOutputUpdateFcns" + Cell "SuppressErrorStatus" + Cell "ERTCustomFileBanners" + Cell "GenerateSampleERTMain" + Cell "GenerateTestInterfaces" + Cell "ModelStepFunctionPrototypeControlCompliant" + Cell "CPPClassGenCompliant" + Cell "MultiInstanceERTCode" + Cell "PurelyIntegerCode" + Cell "SupportComplex" + Cell "SupportAbsoluteTime" + Cell "SupportContinuousTime" + Cell "SupportNonInlinedSFcns" + Cell "PortableWordSizes" + PropName "DisabledProps" + } + TargetFcnLib "ansi_tfl_table_tmw.mat" + TargetLibSuffix "" + TargetPreCompLibLocation "" + TargetFunctionLibrary "ANSI_C" + UtilityFuncGeneration "Auto" + ERTMultiwordTypeDef "System defined" + FunctionExecutionProfile off + CodeExecutionProfiling off + ERTCodeCoverageTool "None" + ERTMultiwordLength 256 + MultiwordLength 2048 + GenerateFullHeader on + GenerateSampleERTMain off + GenerateTestInterfaces off + IsPILTarget off + ModelReferenceCompliant on + ParMdlRefBuildCompliant on + CompOptLevelCompliant on + IncludeMdlTerminateFcn on + GeneratePreprocessorConditionals "Disable all" + CombineOutputUpdateFcns off + CombineSignalStateStructs off + SuppressErrorStatus off + ERTFirstTimeCompliant off + IncludeFileDelimiter "Auto" + ERTCustomFileBanners off + SupportAbsoluteTime on + LogVarNameModifier "rt_" + MatFileLogging on + MultiInstanceERTCode off + SupportNonFinite on + SupportComplex on + PurelyIntegerCode off + SupportContinuousTime on + SupportNonInlinedSFcns on + SupportVariableSizeSignals off + EnableShiftOperators on + ParenthesesLevel "Nominal" + PortableWordSizes off + ModelStepFunctionPrototypeControlCompliant off + CPPClassGenCompliant off + AutosarCompliant off + UseMalloc off + ExtMode off + ExtModeStaticAlloc off + ExtModeTesting off + ExtModeStaticAllocSize 1000000 + ExtModeTransport 0 + ExtModeMexFile "ext_comm" + ExtModeIntrfLevel "Level1" + RTWCAPISignals off + RTWCAPIParams off + RTWCAPIStates off + RTWCAPIRootIO off + GenerateASAP2 off + } + PropName "Components" + } + } + hdlcoderui.hdlcc { + $ObjectID 13 + Version "1.11.0" + Description "HDL Coder custom configuration component" + Name "HDL Coder" + Array { + Type "Cell" + Dimension 1 + Cell "" + PropName "HDLConfigFile" + } + HDLCActiveTab "0" + } + PropName "Components" + } + Name "Configuration" + CurrentDlgPage "Solver" + ConfigPrmDlgPosition [ 243, 69, 1123, 699 ] + } + PropName "ConfigurationSets" + } + Simulink.ConfigSet { + $PropName "ActiveConfigurationSet" + $ObjectID 2 + } + BlockDefaults { + ForegroundColor "black" + BackgroundColor "white" + DropShadow off + NamePlacement "normal" + FontName "Helvetica" + FontSize 10 + FontWeight "normal" + FontAngle "normal" + ShowName on + BlockRotation 0 + BlockMirror off + } + AnnotationDefaults { + HorizontalAlignment "center" + VerticalAlignment "middle" + ForegroundColor "black" + BackgroundColor "white" + DropShadow off + FontName "Helvetica" + FontSize 10 + FontWeight "normal" + FontAngle "normal" + UseDisplayTextAsClickCallback off + } + LineDefaults { + FontName "Helvetica" + FontSize 9 + FontWeight "normal" + FontAngle "normal" + } + BlockParameterDefaults { + Block { + BlockType Demux + Outputs "4" + DisplayOption "none" + BusSelectionMode off + } + Block { + BlockType Derivative + LinearizePole "inf" + } + Block { + BlockType Gain + Gain "1" + Multiplication "Element-wise(K.*u)" + ParamMin "[]" + ParamMax "[]" + ParamDataTypeStr "Inherit: Same as input" + OutMin "[]" + OutMax "[]" + OutDataTypeStr "Inherit: Same as input" + LockScale off + RndMeth "Floor" + SaturateOnIntegerOverflow on + SampleTime "-1" + } + Block { + BlockType Inport + Port "1" + OutputFunctionCall off + OutMin "[]" + OutMax "[]" + OutDataTypeStr "Inherit: auto" + LockScale off + BusOutputAsStruct off + PortDimensions "-1" + VarSizeSig "Inherit" + SampleTime "-1" + SignalType "auto" + SamplingMode "auto" + LatchByDelayingOutsideSignal off + LatchInputForFeedbackSignals off + Interpolate on + } + Block { + BlockType Outport + Port "1" + OutMin "[]" + OutMax "[]" + OutDataTypeStr "Inherit: auto" + LockScale off + BusOutputAsStruct off + PortDimensions "-1" + VarSizeSig "Inherit" + SampleTime "-1" + SignalType "auto" + SamplingMode "auto" + SourceOfInitialOutputValue "Dialog" + OutputWhenDisabled "held" + InitialOutput "[]" + } + Block { + BlockType S-Function + FunctionName "system" + SFunctionModules "''" + PortCounts "[]" + SFunctionDeploymentMode off + } + Block { + BlockType Scope + ModelBased off + TickLabels "OneTimeTick" + ZoomMode "on" + Grid "on" + TimeRange "auto" + YMin "-5" + YMax "5" + SaveToWorkspace off + SaveName "ScopeData" + LimitDataPoints on + MaxDataPoints "5000" + Decimation "1" + SampleInput off + SampleTime "-1" + } + Block { + BlockType SubSystem + ShowPortLabels "FromPortIcon" + Permissions "ReadWrite" + PermitHierarchicalResolution "All" + TreatAsAtomicUnit off + CheckFcnCallInpInsideContextMsg off + SystemSampleTime "-1" + RTWFcnNameOpts "Auto" + RTWFileNameOpts "Auto" + RTWMemSecFuncInitTerm "Inherit from model" + RTWMemSecFuncExecute "Inherit from model" + RTWMemSecDataConstants "Inherit from model" + RTWMemSecDataInternal "Inherit from model" + RTWMemSecDataParameters "Inherit from model" + SimViewingDevice off + DataTypeOverride "UseLocalSettings" + DataTypeOverrideAppliesTo "AllNumericTypes" + MinMaxOverflowLogging "UseLocalSettings" + Variant off + GeneratePreprocessorConditionals off + } + Block { + BlockType Terminator + } + } + System { + Name "Cessna_6DOF" + Location [2, 74, 1364, 717] + Open on + ModelBrowserVisibility off + ModelBrowserWidth 200 + ScreenColor "white" + PaperOrientation "landscape" + PaperPositionMode "auto" + PaperType "A4" + PaperUnits "centimeters" + TiledPaperMargins [1.270000, 1.270000, 1.270000, 1.270000] + TiledPageScale 1 + ShowPageBoundaries off + ZoomFactor "100" + ReportName "simulink-default.rpt" + SIDHighWatermark "22" + Block { + BlockType Reference + Name "6DoF (Euler Angles)" + SID "1" + Ports [2, 8] + Position [235, 187, 435, 388] + LibraryVersion "1.246" + SourceBlock "aerolib6dof2/6DoF (Euler Angles)" + SourceType "6DoF EoM (Body Axis)" + ShowPortLabels "FromPortIcon" + SystemSampleTime "-1" + FunctionWithSeparateData off + RTWMemSecFuncInitTerm "Inherit from model" + RTWMemSecFuncExecute "Inherit from model" + RTWMemSecDataConstants "Inherit from model" + RTWMemSecDataInternal "Inherit from model" + RTWMemSecDataParameters "Inherit from model" + GeneratePreprocessorConditionals off + units "Metric (MKS)" + mtype "Fixed" + rep "Euler Angles" + xme_0 "[x y z]" + Vm_0 "[u v w]" + eul_0 "[phi theta psi]" + pm_0 "[p q r]" + mass_0 "m" + mass_e "0.5" + mass_f "2.0" + inertia "diag([I_xx I_yy I_zz])" + inertia_e "eye(3)" + inertia_f "2*eye(3)" + k_quat "1.0" + } + Block { + BlockType Demux + Name "Demux" + SID "7" + Ports [1, 3] + Position [655, 321, 660, 359] + ShowName off + Outputs "3" + DisplayOption "bar" + } + Block { + BlockType Demux + Name "Demux1" + SID "12" + Ports [1, 3] + Position [485, 126, 490, 164] + BlockMirror on + ShowName off + Outputs "3" + DisplayOption "bar" + } + Block { + BlockType Demux + Name "Demux2" + SID "15" + Ports [1, 3] + Position [485, 71, 490, 109] + BlockMirror on + ShowName off + Outputs "3" + DisplayOption "bar" + } + Block { + BlockType Derivative + Name "Derivative" + SID "6" + Position [615, 235, 645, 265] + } + Block { + BlockType Gain + Name "Gain" + SID "17" + Position [385, 65, 415, 95] + BlockMirror on + Gain "180/pi" + ParamDataTypeStr "Inherit: Inherit via internal rule" + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Gain + Name "Gain1" + SID "18" + Position [430, 75, 460, 105] + BlockMirror on + Gain "180/pi" + ParamDataTypeStr "Inherit: Inherit via internal rule" + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Gain + Name "Gain2" + SID "19" + Position [385, 85, 415, 115] + BlockMirror on + Gain "180/pi" + ParamDataTypeStr "Inherit: Inherit via internal rule" + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Gain + Name "Gain3" + SID "20" + Position [615, 125, 645, 155] + Gain "180/pi" + ParamDataTypeStr "Inherit: Inherit via internal rule" + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Gain + Name "Gain4" + SID "21" + Position [700, 135, 730, 165] + Gain "180/pi" + ParamDataTypeStr "Inherit: Inherit via internal rule" + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Reference + Name "Incidence, Sideslip,\n& Airspeed" + SID "3" + Ports [1, 3] + Position [525, 275, 585, 325] + LibraryVersion "1.124" + SourceBlock "aerolibasang/Incidence, Sideslip,\n& Airspeed" + SourceType "Incidence,Sideslip,&Airspeed" + ShowPortLabels "FromPortIcon" + SystemSampleTime "-1" + FunctionWithSeparateData off + RTWMemSecFuncInitTerm "Inherit from model" + RTWMemSecFuncExecute "Inherit from model" + RTWMemSecDataConstants "Inherit from model" + RTWMemSecDataInternal "Inherit from model" + RTWMemSecDataParameters "Inherit from model" + GeneratePreprocessorConditionals off + } + Block { + BlockType SubSystem + Name "MATLAB Function1" + SID "5" + Ports [8, 2] + Position [715, 189, 785, 386] + LibraryVersion "1.32" + ErrorFcn "Stateflow.Translate.translate" + PermitHierarchicalResolution "ExplicitOnly" + TreatAsAtomicUnit on + MinAlgLoopOccurrences off + PropExecContextOutsideSubsystem off + RTWSystemCode "Auto" + FunctionWithSeparateData off + Opaque off + RequestExecContextInheritance off + MaskHideContents off + MaskType "Stateflow" + MaskDescription "Embedded MATLAB block" + MaskSelfModifiable on + MaskDisplay "bgColor = Simulink.Root.ColorString2Rgb(get_param(gcbh, 'BackgroundColor')); image(imread('pr" + "ivate/eml_membrane_16.png','png','BackgroundColor',bgColor(1:3)),'center'); disp([10 10 'FM_Cessna']);" + MaskIconFrame on + MaskIconOpaque off + MaskIconRotate "none" + MaskPortRotate "default" + MaskIconUnits "normalized" + System { + Name "MATLAB Function1" + Location [257, 457, 812, 717] + Open off + ModelBrowserVisibility off + ModelBrowserWidth 200 + ScreenColor "white" + PaperOrientation "landscape" + PaperPositionMode "auto" + PaperType "A4" + PaperUnits "centimeters" + TiledPaperMargins [1.270000, 1.270000, 1.270000, 1.270000] + TiledPageScale 1 + ShowPageBoundaries off + ZoomFactor "100" + SIDHighWatermark "25" + Block { + BlockType Inport + Name "V" + SID "5::1" + Position [20, 101, 40, 119] + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "alpha" + SID "5::18" + Position [20, 136, 40, 154] + Port "2" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "alpha_dot" + SID "5::25" + Position [20, 171, 40, 189] + Port "3" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "beta" + SID "5::19" + Position [20, 206, 40, 224] + Port "4" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "p" + SID "5::20" + Position [20, 246, 40, 264] + Port "5" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "q" + SID "5::21" + Position [20, 281, 40, 299] + Port "6" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "r" + SID "5::22" + Position [20, 316, 40, 334] + Port "7" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "theta" + SID "5::23" + Position [20, 351, 40, 369] + Port "8" + IconDisplay "Port number" + } + Block { + BlockType Demux + Name " Demux " + SID "5::15" + Ports [1, 1] + Position [270, 285, 320, 325] + Outputs "1" + } + Block { + BlockType S-Function + Name " SFunction " + SID "5::14" + Tag "Stateflow S-Function Cessna_6DOF 1" + Ports [8, 3] + Position [180, 105, 230, 285] + FunctionName "sf_sfun" + PortCounts "[8 3]" + EnableBusSupport on + Port { + PortNumber 2 + Name "F" + RTWStorageClass "Auto" + DataLoggingNameMode "SignalName" + } + Port { + PortNumber 3 + Name "M" + RTWStorageClass "Auto" + DataLoggingNameMode "SignalName" + } + } + Block { + BlockType Terminator + Name " Terminator " + SID "5::17" + Position [460, 296, 480, 314] + } + Block { + BlockType Outport + Name "F" + SID "5::5" + Position [460, 101, 480, 119] + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "M" + SID "5::24" + Position [460, 136, 480, 154] + Port "2" + IconDisplay "Port number" + } + Line { + SrcBlock "V" + SrcPort 1 + DstBlock " SFunction " + DstPort 1 + } + Line { + SrcBlock "alpha" + SrcPort 1 + DstBlock " SFunction " + DstPort 2 + } + Line { + SrcBlock "alpha_dot" + SrcPort 1 + DstBlock " SFunction " + DstPort 3 + } + Line { + SrcBlock "beta" + SrcPort 1 + DstBlock " SFunction " + DstPort 4 + } + Line { + SrcBlock "p" + SrcPort 1 + DstBlock " SFunction " + DstPort 5 + } + Line { + SrcBlock "q" + SrcPort 1 + DstBlock " SFunction " + DstPort 6 + } + Line { + SrcBlock "r" + SrcPort 1 + DstBlock " SFunction " + DstPort 7 + } + Line { + SrcBlock "theta" + SrcPort 1 + DstBlock " SFunction " + DstPort 8 + } + Line { + Name "F" + Labels [0, 0; 0, 0] + SrcBlock " SFunction " + SrcPort 2 + DstBlock "F" + DstPort 1 + } + Line { + Name "M" + Labels [0, 0; 0, 0] + SrcBlock " SFunction " + SrcPort 3 + DstBlock "M" + DstPort 1 + } + Line { + SrcBlock " Demux " + SrcPort 1 + DstBlock " Terminator " + DstPort 1 + } + Line { + SrcBlock " SFunction " + SrcPort 1 + DstBlock " Demux " + DstPort 1 + } + } + } + Block { + BlockType Scope + Name "Scope" + SID "13" + Ports [3] + Position [765, 124, 795, 156] + Floating off + Location [1, 48, 1367, 737] + Open off + NumInputPorts "3" + List { + ListType AxesTitles + axes1 "%" + axes2 "%" + axes3 "%" + } + YMin "-5~-5~-5" + YMax "5~5~5" + DataFormat "StructureWithTime" + SampleTime "0" + } + Block { + BlockType Scope + Name "Scope1" + SID "14" + Ports [3] + Position [410, 129, 440, 161] + BlockMirror on + Floating off + Location [5, 48, 1367, 737] + Open on + NumInputPorts "3" + List { + ListType AxesTitles + axes1 "%" + axes2 "%" + axes3 "%" + } + YMin "-5~-5~-5" + YMax "5~5~5" + SaveName "ScopeData1" + DataFormat "StructureWithTime" + SampleTime "0" + } + Block { + BlockType Scope + Name "Scope2" + SID "16" + Ports [3] + Position [330, 74, 360, 106] + BlockMirror on + Floating off + Location [1, 48, 1367, 737] + Open off + NumInputPorts "3" + List { + ListType AxesTitles + axes1 "%" + axes2 "%" + axes3 "%" + } + YMin "-5~-5~-5" + YMax "5~5~5" + SaveName "ScopeData2" + DataFormat "StructureWithTime" + SampleTime "0" + } + Block { + BlockType Scope + Name "Scope3" + SID "22" + Ports [3] + Position [755, 424, 785, 456] + Floating off + Location [1, 48, 1367, 737] + Open off + NumInputPorts "3" + List { + ListType AxesTitles + axes1 "%" + axes2 "%" + axes3 "%" + } + YMin "-5~-5~-5" + YMax "5~5~5" + SaveName "ScopeData3" + DataFormat "StructureWithTime" + SampleTime "0" + } + Block { + BlockType Terminator + Name "Terminator" + SID "8" + Position [475, 375, 495, 395] + } + Block { + BlockType Terminator + Name "Terminator1" + SID "9" + Position [550, 375, 570, 395] + } + Block { + BlockType Terminator + Name "Terminator2" + SID "10" + Position [460, 190, 480, 210] + } + Block { + BlockType Terminator + Name "Terminator3" + SID "11" + Position [460, 265, 480, 285] + } + Line { + SrcBlock "6DoF (Euler Angles)" + SrcPort 5 + DstBlock "Incidence, Sideslip,\n& Airspeed" + DstPort 1 + } + Line { + SrcBlock "Incidence, Sideslip,\n& Airspeed" + SrcPort 3 + Points [0, -115] + Branch { + DstBlock "MATLAB Function1" + DstPort 1 + } + Branch { + Points [0, -70] + DstBlock "Scope" + DstPort 1 + } + } + Line { + SrcBlock "Incidence, Sideslip,\n& Airspeed" + SrcPort 1 + Points [10, 0; 0, -35] + Branch { + DstBlock "Derivative" + DstPort 1 + } + Branch { + Points [0, -25] + Branch { + DstBlock "MATLAB Function1" + DstPort 2 + } + Branch { + DstBlock "Gain3" + DstPort 1 + } + } + } + Line { + SrcBlock "Incidence, Sideslip,\n& Airspeed" + SrcPort 2 + Points [75, 0; 0, -25] + Branch { + DstBlock "MATLAB Function1" + DstPort 4 + } + Branch { + Points [0, -125] + DstBlock "Gain4" + DstPort 1 + } + } + Line { + SrcBlock "Derivative" + SrcPort 1 + DstBlock "MATLAB Function1" + DstPort 3 + } + Line { + SrcBlock "Demux" + SrcPort 1 + Points [25, 0] + Branch { + Points [0, -30] + DstBlock "MATLAB Function1" + DstPort 5 + } + Branch { + Points [0, 100] + DstBlock "Scope3" + DstPort 1 + } + } + Line { + SrcBlock "Demux" + SrcPort 2 + Points [35, 0] + Branch { + DstBlock "MATLAB Function1" + DstPort 6 + } + Branch { + Points [0, 100] + DstBlock "Scope3" + DstPort 2 + } + } + Line { + SrcBlock "Demux" + SrcPort 3 + Points [15, 0] + Branch { + DstBlock "MATLAB Function1" + DstPort 7 + } + Branch { + Points [0, 100] + DstBlock "Scope3" + DstPort 3 + } + } + Line { + SrcBlock "6DoF (Euler Angles)" + SrcPort 6 + Points [25, 0; 0, 35; 175, 0] + DstBlock "Demux" + DstPort 1 + } + Line { + SrcBlock "MATLAB Function1" + SrcPort 1 + Points [0, -65; -570, 0] + DstBlock "6DoF (Euler Angles)" + DstPort 1 + } + Line { + SrcBlock "MATLAB Function1" + SrcPort 2 + Points [10, 0; 0, 70; -580, 0] + DstBlock "6DoF (Euler Angles)" + DstPort 2 + } + Line { + SrcBlock "6DoF (Euler Angles)" + SrcPort 7 + Points [20, 0; 0, 20; 75, 0] + DstBlock "Terminator1" + DstPort 1 + } + Line { + SrcBlock "6DoF (Euler Angles)" + SrcPort 8 + Points [10, 0; 0, 10] + DstBlock "Terminator" + DstPort 1 + } + Line { + SrcBlock "6DoF (Euler Angles)" + SrcPort 1 + DstBlock "Terminator2" + DstPort 1 + } + Line { + SrcBlock "6DoF (Euler Angles)" + SrcPort 4 + DstBlock "Terminator3" + DstPort 1 + } + Line { + SrcBlock "Demux1" + SrcPort 1 + DstBlock "Scope1" + DstPort 1 + } + Line { + SrcBlock "Demux1" + SrcPort 2 + DstBlock "Scope1" + DstPort 2 + } + Line { + SrcBlock "Demux1" + SrcPort 3 + DstBlock "Scope1" + DstPort 3 + } + Line { + SrcBlock "6DoF (Euler Angles)" + SrcPort 2 + Points [0, 5; 65, 0] + DstBlock "Demux1" + DstPort 1 + } + Line { + SrcBlock "Demux2" + SrcPort 1 + DstBlock "Gain" + DstPort 1 + } + Line { + SrcBlock "Demux2" + SrcPort 2 + Points [-5, 0] + Branch { + Points [0, -30; 40, 0; 0, 305; 185, 0] + DstBlock "MATLAB Function1" + DstPort 8 + } + Branch { + DstBlock "Gain1" + DstPort 1 + } + } + Line { + SrcBlock "Demux2" + SrcPort 3 + DstBlock "Gain2" + DstPort 1 + } + Line { + SrcBlock "6DoF (Euler Angles)" + SrcPort 3 + Points [70, 0; 0, -160] + DstBlock "Demux2" + DstPort 1 + } + Line { + SrcBlock "Gain" + SrcPort 1 + DstBlock "Scope2" + DstPort 1 + } + Line { + SrcBlock "Gain1" + SrcPort 1 + DstBlock "Scope2" + DstPort 2 + } + Line { + SrcBlock "Gain2" + SrcPort 1 + DstBlock "Scope2" + DstPort 3 + } + Line { + SrcBlock "Gain3" + SrcPort 1 + DstBlock "Scope" + DstPort 2 + } + Line { + SrcBlock "Gain4" + SrcPort 1 + DstBlock "Scope" + DstPort 3 + } + } +} +# Finite State Machines +# +# Stateflow Version 7.5 (R2010a) dated Mar 4 2011, 22:36:02 +# +# + + +Stateflow { + machine { + id 1 + name "Cessna_6DOF" + created "20-Dec-2014 14:27:29" + isLibrary 0 + firstTarget 17 + sfVersion 75014001 + } + chart { + id 2 + name "MATLAB Function1" + windowPosition [315.747 315 200.25 189.75] + viewLimits [0 156.75 0 153.75] + screen [1 1 1366 768 1.333333333333333] + treeNode [0 3 0 0] + firstTransition 5 + firstJunction 4 + viewObj 2 + machine 1 + toolbarMode LIBRARY_TOOLBAR + ssIdHighWaterMark 13 + decomposition CLUSTER_CHART + type EML_CHART + firstData 6 + chartFileNumber 1 + disableImplicitCasting 1 + eml { + name "FM_Cessna" + } + } + state { + id 3 + labelString "eML_blk_kernel()" + position [18 64.5 118 66] + fontSize 12 + chart 2 + treeNode [2 0 0 0] + superState SUBCHART + subviewer 2 + ssIdNumber 1 + type FUNC_STATE + decomposition CLUSTER_STATE + eml { + isEML 1 + script "function [F, M] = FM_Cessna(V, alpha, alpha_dot, beta, p, q, r, theta)\n\nm = 1043.26;\nC_bar = 1" + ".493;\nb = 10.911;\nS_ref = 16.1651;\n\ng = 9.8;\nrho = 1.225;\n\nC_L_0 = 0.25;\nC_L_alpha = 4.47;\nC_L_q = 1.7;" + "\nC_L_delta_e = 0.3476;\n\nC_D_0 = 0.036;\nC_D_alpha = 0.13;\nC_D_beta = 0.17;\nC_D_delta_e = 0.06;\n\nC_Y_beta " + "= -0.31;\nC_Y_p = -0.037;\nC_Y_r = 0.21;\nC_Y_delta_a = 0;\n\nC_l_beta = -0.089;\nC_l_p = -0.47;\nC_l_r = 0.096;" + "\nC_l_delta_a = -0.09;\nC_l_delta_r = 0.0147;\n\nC_M_0 = -0.02;\nC_M_alpha = -1.8;\nC_M_alpha_dot = -12.4;\nC_M_" + "delta_e = -1.28;\n\nC_N_beta = 0.065;\nC_N_p = -0.03;\nC_N_r = -0.99;\nC_N_delta_a = -0.0053;\nC_N_delta_r = -0." + "0657;\n\ndelta_e = 0.03376; %-0.0304;\ndelta_a = 0;\ndelta_r = 0;\nthrust = 4219.6; %1397;\n\nC_L = C_L_0 + C_L_" + "alpha*alpha + C_L_q*(q*C_bar/(2*V)) + C_L_delta_e*delta_e;\nC_D = C_D_0 + C_D_alpha*abs(alpha) + C_D_beta*abs(be" + "ta) + C_D_delta_e*abs(delta_e);\nC_Y = C_Y_beta*beta + C_Y_p*(p*b/(2*V)) + C_Y_r*(r*b/(2*V)) + C_Y_delta_a*delta" + "_a;\n\nC_l = C_l_beta*beta + C_l_p*(p*b/(2*V)) + C_l_r*(r*b/(2*V)) + C_l_delta_a*delta_a + C_l_delta_r*delta_r;\n" + "C_M = C_M_0 + C_M_alpha*alpha + C_M_alpha_dot*(alpha_dot*C_bar/(2*V)) + C_M_delta_e*delta_e;\nC_N = C_N_beta*bet" + "a + C_N_p*(p*b/(2*V)) + C_N_r*(r*b/(2*V)) + C_N_delta_a*delta_a + C_N_delta_r*delta_r;\n\nC_X = -C_D*cos(alpha) " + "+ C_L*sin(alpha);\nC_Z = -C_D*sin(alpha) - C_L*cos(alpha);\n\nF = zeros(3,1);\nM = zeros(3,1);\n\nq_bar = 0.5*rh" + "o*V*V;\n\nF(1,1) = q_bar*S_ref*C_X - m*g*sin(theta) + thrust;\nF(2,1) = q_bar*S_ref*C_Y;\nF(3,1) = q_bar*S_ref*C" + "_Z + m*g*cos(theta);\n\nM(1,1) = q_bar*b*S_ref*C_l;\nM(2,1) = q_bar*C_bar*S_ref*C_M;\nM(3,1) = q_bar*b*S_ref*C_N" + ";" + editorLayout "100 M4x1[205 227 1382 754]" + } + } + junction { + id 4 + position [23.5747 49.5747 7] + chart 2 + linkNode [2 0 0] + subviewer 2 + ssIdNumber 3 + type CONNECTIVE_JUNCTION + } + transition { + id 5 + labelString "{eML_blk_kernel();}" + labelPosition [32.125 19.875 102.544 14.964] + fontSize 12 + src { + intersection [0 0 1 0 23.5747 14.625 0 0] + } + dst { + id 4 + intersection [7 0 -1 -1 23.5747 42.5747 0 0] + } + midPoint [23.5747 24.9468] + chart 2 + linkNode [2 0 0] + dataLimits [23.575 23.575 14.625 34.575] + subviewer 2 + drawStyle SMART + executionOrder 1 + ssIdNumber 2 + } + data { + id 6 + ssIdNumber 4 + name "V" + linkNode [2 0 7] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + } + complexity SF_COMPLEX_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 7 + ssIdNumber 5 + name "F" + linkNode [2 6 8] + scope OUTPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_NO + } + dataType "Inherit: Same as Simulink" + } + data { + id 8 + ssIdNumber 6 + name "alpha" + linkNode [2 7 9] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 9 + ssIdNumber 13 + name "alpha_dot" + linkNode [2 8 10] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 10 + ssIdNumber 7 + name "beta" + linkNode [2 9 11] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 11 + ssIdNumber 8 + name "p" + linkNode [2 10 12] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 12 + ssIdNumber 9 + name "q" + linkNode [2 11 13] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 13 + ssIdNumber 10 + name "r" + linkNode [2 12 14] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 14 + ssIdNumber 11 + name "theta" + linkNode [2 13 15] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 15 + ssIdNumber 12 + name "M" + linkNode [2 14 0] + scope OUTPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_NO + } + dataType "Inherit: Same as Simulink" + } + instance { + id 16 + name "MATLAB Function1" + machine 1 + chart 2 + } + target { + id 17 + name "sfun" + description "Default Simulink S-Function Target." + machine 1 + linkNode [1 0 0] + } +} diff --git a/Prof_Arya/Cessna_6DOF_Wind_trim.mdl b/Prof_Arya/Cessna_6DOF_Wind_trim.mdl new file mode 100644 index 0000000..08a6980 --- /dev/null +++ b/Prof_Arya/Cessna_6DOF_Wind_trim.mdl @@ -0,0 +1,2310 @@ +Model { + Name "Cessna_6DOF_Wind_trim" + Version 8.6 + MdlSubVersion 0 + SavedCharacterEncoding "UTF-8" + GraphicalInterface { + NumRootInports 4 + Inport { + Name "In1" + BusObject "" + OutputFunctionCall "off" + } + Inport { + Name "In2" + BusObject "" + OutputFunctionCall "off" + } + Inport { + Name "In3" + BusObject "" + OutputFunctionCall "off" + } + Inport { + Name "In4" + BusObject "" + OutputFunctionCall "off" + } + NumRootOutports 12 + Outport { + Name "Out1" + BusObject "" + BusOutputAsStruct "off" + } + Outport { + Name "Out2" + BusObject "" + BusOutputAsStruct "off" + } + Outport { + Name "Out3" + BusObject "" + BusOutputAsStruct "off" + } + Outport { + Name "Out4" + BusObject "" + BusOutputAsStruct "off" + } + Outport { + Name "Out5" + BusObject "" + BusOutputAsStruct "off" + } + Outport { + Name "Out6" + BusObject "" + BusOutputAsStruct "off" + } + Outport { + Name "Out7" + BusObject "" + BusOutputAsStruct "off" + } + Outport { + Name "Out8" + BusObject "" + BusOutputAsStruct "off" + } + Outport { + Name "Out9" + BusObject "" + BusOutputAsStruct "off" + } + Outport { + Name "Out10" + BusObject "" + BusOutputAsStruct "off" + } + Outport { + Name "Out11" + BusObject "" + BusOutputAsStruct "off" + } + Outport { + Name "Out12" + BusObject "" + BusOutputAsStruct "off" + } + ParameterArgumentNames "" + ComputedModelVersion "1.6" + NumModelReferences 0 + NumTestPointedSignals 0 + } + ScopeRefreshTime 0.035000 + OverrideScopeRefreshTime on + DisableAllScopes off + DataTypeOverride "UseLocalSettings" + DataTypeOverrideAppliesTo "AllNumericTypes" + MinMaxOverflowLogging "UseLocalSettings" + MinMaxOverflowArchiveMode "Overwrite" + FPTRunName "Run 1" + MaxMDLFileLineLength 120 + Object { + $PropName "BdWindowsInfo" + $ObjectID 1 + $ClassName "Simulink.BDWindowsInfo" + Object { + $PropName "WindowsInfo" + $ObjectID 2 + $ClassName "Simulink.WindowInfo" + IsActive [1] + Location [-8.0, 27.0, 1382.0, 754.0] + Object { + $PropName "ModelBrowserInfo" + $ObjectID 3 + $ClassName "Simulink.ModelBrowserInfo" + Visible [0] + DockPosition "Left" + Width [50] + Height [50] + Filter [8] + } + Object { + $PropName "ExplorerBarInfo" + $ObjectID 4 + $ClassName "Simulink.ExplorerBarInfo" + Visible [1] + } + Object { + $PropName "EditorsInfo" + $ObjectID 5 + $ClassName "Simulink.EditorInfo" + IsActive [1] + ViewObjType "SimulinkTopLevel" + LoadSaveID "0" + Extents [1348.0, 581.0] + ZoomFactor [0.8] + Offset [118.4499999999997, -52.828571428571422] + } + } + } + Created "Tue Dec 23 15:02:08 2014" + Creator "Pranav" + UpdateHistory "UpdateHistoryNever" + ModifiedByFormat "%" + LastModifiedBy "siddharth" + ModifiedDateFormat "%" + LastModifiedDate "Mon Aug 06 17:12:47 2018" + RTWModifiedTimeStamp 455475849 + ModelVersionFormat "1.%" + ConfigurationManager "none" + SampleTimeColors off + SampleTimeAnnotations off + LibraryLinkDisplay "none" + WideLines off + ShowLineDimensions off + ShowPortDataTypes off + ShowDesignRanges off + ShowLoopsOnError on + IgnoreBidirectionalLines off + ShowStorageClass off + ShowTestPointIcons on + ShowSignalResolutionIcons on + ShowViewerIcons on + SortedOrder off + ExecutionContextIcon off + ShowLinearizationAnnotations on + ShowVisualizeInsertedRTB on + ShowMarkup on + BlockNameDataTip off + BlockParametersDataTip off + BlockDescriptionStringDataTip off + ToolBar on + StatusBar on + BrowserShowLibraryLinks off + BrowserLookUnderMasks off + SimulationMode "normal" + PauseTimes "5" + NumberOfSteps 1 + SnapshotBufferSize 10 + SnapshotInterval 10 + NumberOfLastSnapshots 0 + LinearizationMsg "none" + Profile off + ParamWorkspaceSource "MATLABWorkspace" + AccelSystemTargetFile "accel.tlc" + AccelTemplateMakefile "accel_default_tmf" + AccelMakeCommand "make_rtw" + TryForcingSFcnDF off + Object { + $PropName "DataLoggingOverride" + $ObjectID 6 + $ClassName "Simulink.SimulationData.ModelLoggingInfo" + model_ "Cessna_6DOF_Wind_trim" + signals_ [] + overrideMode_ [0.0] + Array { + Type "Cell" + Dimension 1 + Cell "Cessna_6DOF_Wind_trim" + PropName "logAsSpecifiedByModels_" + } + Array { + Type "Cell" + Dimension 1 + Cell [] + PropName "logAsSpecifiedByModelsSSIDs_" + } + } + ExtModeBatchMode off + ExtModeEnableFloating on + ExtModeTrigType "manual" + ExtModeTrigMode "normal" + ExtModeTrigPort "1" + ExtModeTrigElement "any" + ExtModeTrigDuration 1000 + ExtModeTrigDurationFloating "auto" + ExtModeTrigHoldOff 0 + ExtModeTrigDelay 0 + ExtModeTrigDirection "rising" + ExtModeTrigLevel 0 + ExtModeArchiveMode "off" + ExtModeAutoIncOneShot off + ExtModeIncDirWhenArm off + ExtModeAddSuffixToVar off + ExtModeWriteAllDataToWs off + ExtModeArmWhenConnect on + ExtModeSkipDownloadWhenConnect off + ExtModeLogAll on + ExtModeAutoUpdateStatusClock on + ShowModelReferenceBlockVersion off + ShowModelReferenceBlockIO off + Array { + Type "Handle" + Dimension 1 + Simulink.ConfigSet { + $ObjectID 7 + Version "1.15.1" + Array { + Type "Handle" + Dimension 10 + Simulink.SolverCC { + $ObjectID 8 + Version "1.15.1" + StartTime "0.0" + StopTime "10.0" + AbsTol "auto" + FixedStep "auto" + InitialStep "auto" + MaxNumMinSteps "-1" + MaxOrder 5 + ZcThreshold "auto" + ConsecutiveZCsStepRelTol "10*128*eps" + MaxConsecutiveZCs "1000" + ExtrapolationOrder 4 + NumberNewtonIterations 1 + MaxStep "auto" + MinStep "auto" + MaxConsecutiveMinStep "1" + RelTol "1e-3" + SolverMode "Auto" + EnableConcurrentExecution off + ConcurrentTasks off + Solver "ode45" + SolverName "ode45" + SolverJacobianMethodControl "auto" + ShapePreserveControl "DisableAll" + ZeroCrossControl "UseLocalSettings" + ZeroCrossAlgorithm "Nonadaptive" + AlgebraicLoopSolver "TrustRegion" + SolverInfoToggleStatus off + IsAutoAppliedInSIP off + SolverResetMethod "Fast" + PositivePriorityOrder off + AutoInsertRateTranBlk off + SampleTimeConstraint "Unconstrained" + InsertRTBMode "Whenever possible" + } + Simulink.DataIOCC { + $ObjectID 9 + Version "1.15.1" + Decimation "1" + ExternalInput "[t, u]" + FinalStateName "xFinal" + InitialState "xInitial" + LimitDataPoints on + MaxDataPoints "1000" + LoadExternalInput off + LoadInitialState off + SaveFinalState off + SaveCompleteFinalSimState off + SaveFormat "Array" + SignalLoggingSaveFormat "ModelDataLogs" + SaveOutput on + SaveState off + SignalLogging on + DSMLogging on + InspectSignalLogs off + VisualizeSimOutput on + StreamToWorkspace off + StreamVariableName "streamout" + SaveTime on + ReturnWorkspaceOutputs off + StateSaveName "xout" + TimeSaveName "tout" + OutputSaveName "yout" + SignalLoggingName "logsout" + DSMLoggingName "dsmout" + OutputOption "RefineOutputTimes" + OutputTimes "[]" + ReturnWorkspaceOutputsName "out" + Refine "1" + LoggingIntervals "[-inf, inf]" + } + Simulink.OptimizationCC { + $ObjectID 10 + Version "1.15.1" + Array { + Type "Cell" + Dimension 8 + Cell "BooleansAsBitfields" + Cell "PassReuseOutputArgsAs" + Cell "PassReuseOutputArgsThreshold" + Cell "ZeroExternalMemoryAtStartup" + Cell "ZeroInternalMemoryAtStartup" + Cell "OptimizeModelRefInitCode" + Cell "NoFixptDivByZeroProtection" + Cell "UseSpecifiedMinMax" + PropName "DisabledProps" + } + BlockReduction on + BooleanDataType on + ConditionallyExecuteInputs on + DefaultParameterBehavior "Tunable" + UseDivisionForNetSlopeComputation "off" + UseFloatMulNetSlope off + DefaultUnderspecifiedDataType "double" + UseSpecifiedMinMax off + InlineInvariantSignals off + OptimizeBlockIOStorage on + BufferReuse on + EnhancedBackFolding off + CachingGlobalReferences off + GlobalBufferReuse on + StrengthReduction off + ExpressionFolding on + BooleansAsBitfields off + BitfieldContainerType "uint_T" + EnableMemcpy on + MemcpyThreshold 64 + PassReuseOutputArgsAs "Structure reference" + PassReuseOutputArgsThreshold 12 + ExpressionDepthLimit 2147483647 + LocalBlockOutputs on + RollThreshold 5 + StateBitsets off + DataBitsets off + ActiveStateOutputEnumStorageType "Native Integer" + ZeroExternalMemoryAtStartup on + ZeroInternalMemoryAtStartup on + InitFltsAndDblsToZero off + NoFixptDivByZeroProtection off + EfficientFloat2IntCast off + EfficientMapNaN2IntZero on + OptimizeModelRefInitCode off + LifeSpan "inf" + MaxStackSize "Inherit from target" + BufferReusableBoundary on + SimCompilerOptimization "off" + AccelVerboseBuild off + } + Simulink.DebuggingCC { + $ObjectID 11 + Version "1.15.1" + RTPrefix "error" + ConsistencyChecking "none" + ArrayBoundsChecking "none" + SignalInfNanChecking "none" + SignalRangeChecking "none" + ReadBeforeWriteMsg "UseLocalSettings" + WriteAfterWriteMsg "UseLocalSettings" + WriteAfterReadMsg "UseLocalSettings" + AlgebraicLoopMsg "warning" + ArtificialAlgebraicLoopMsg "warning" + SaveWithDisabledLinksMsg "warning" + SaveWithParameterizedLinksMsg "warning" + CheckSSInitialOutputMsg on + UnderspecifiedInitializationDetection "Classic" + MergeDetectMultiDrivingBlocksExec "none" + CheckExecutionContextPreStartOutputMsg off + CheckExecutionContextRuntimeOutputMsg off + SignalResolutionControl "UseLocalSettings" + BlockPriorityViolationMsg "warning" + MinStepSizeMsg "warning" + TimeAdjustmentMsg "none" + MaxConsecutiveZCsMsg "error" + MaskedZcDiagnostic "warning" + IgnoredZcDiagnostic "warning" + SolverPrmCheckMsg "warning" + InheritedTsInSrcMsg "warning" + MultiTaskDSMMsg "error" + MultiTaskCondExecSysMsg "error" + MultiTaskRateTransMsg "error" + SingleTaskRateTransMsg "none" + TasksWithSamePriorityMsg "warning" + SigSpecEnsureSampleTimeMsg "warning" + CheckMatrixSingularityMsg "none" + IntegerOverflowMsg "warning" + Int32ToFloatConvMsg "warning" + ParameterDowncastMsg "error" + ParameterOverflowMsg "error" + ParameterUnderflowMsg "none" + ParameterPrecisionLossMsg "warning" + ParameterTunabilityLossMsg "warning" + FixptConstUnderflowMsg "none" + FixptConstOverflowMsg "none" + FixptConstPrecisionLossMsg "none" + UnderSpecifiedDataTypeMsg "none" + UnnecessaryDatatypeConvMsg "none" + VectorMatrixConversionMsg "none" + InvalidFcnCallConnMsg "error" + FcnCallInpInsideContextMsg "UseLocalSettings" + SignalLabelMismatchMsg "none" + UnconnectedInputMsg "warning" + UnconnectedOutputMsg "warning" + UnconnectedLineMsg "warning" + SFcnCompatibilityMsg "none" + FrameProcessingCompatibilityMsg "error" + UniqueDataStoreMsg "none" + BusObjectLabelMismatch "warning" + RootOutportRequireBusObject "warning" + AssertControl "UseLocalSettings" + AllowSymbolicDim off + ModelReferenceIOMsg "none" + ModelReferenceMultiInstanceNormalModeStructChecksumCheck "error" + ModelReferenceVersionMismatchMessage "none" + ModelReferenceIOMismatchMessage "none" + UnknownTsInhSupMsg "warning" + ModelReferenceDataLoggingMessage "warning" + ModelReferenceSymbolNameMessage "warning" + ModelReferenceExtraNoncontSigs "error" + StateNameClashWarn "warning" + SimStateInterfaceChecksumMismatchMsg "warning" + SimStateOlderReleaseMsg "error" + InitInArrayFormatMsg "warning" + StrictBusMsg "ErrorLevel1" + BusNameAdapt "WarnAndRepair" + NonBusSignalsTreatedAsBus "none" + SymbolicDimMinMaxWarning "warning" + BlockIODiagnostic "none" + SFUnusedDataAndEventsDiag "warning" + SFUnexpectedBacktrackingDiag "warning" + SFInvalidInputDataAccessInChartInitDiag "warning" + SFNoUnconditionalDefaultTransitionDiag "warning" + SFTransitionOutsideNaturalParentDiag "warning" + SFUnconditionalTransitionShadowingDiag "warning" + SFUndirectedBroadcastEventsDiag "warning" + SFTransitionActionBeforeConditionDiag "warning" + SFOutputUsedAsStateInMooreChartDiag "error" + IntegerSaturationMsg "warning" + } + Simulink.HardwareCC { + $ObjectID 12 + Version "1.15.1" + ProdBitPerChar 8 + ProdBitPerShort 16 + ProdBitPerInt 32 + ProdBitPerLong 32 + ProdBitPerLongLong 64 + ProdBitPerFloat 32 + ProdBitPerDouble 64 + ProdBitPerPointer 32 + ProdLargestAtomicInteger "Char" + ProdLargestAtomicFloat "None" + ProdIntDivRoundTo "Undefined" + ProdEndianess "Unspecified" + ProdWordSize 32 + ProdShiftRightIntArith on + ProdLongLongMode off + ProdHWDeviceType "32-bit Generic" + TargetBitPerChar 8 + TargetBitPerShort 16 + TargetBitPerInt 32 + TargetBitPerLong 32 + TargetBitPerLongLong 64 + TargetBitPerFloat 32 + TargetBitPerDouble 64 + TargetBitPerPointer 32 + TargetLargestAtomicInteger "Char" + TargetLargestAtomicFloat "None" + TargetShiftRightIntArith on + TargetLongLongMode off + TargetIntDivRoundTo "Undefined" + TargetEndianess "Unspecified" + TargetWordSize 32 + TargetPreprocMaxBitsSint 32 + TargetPreprocMaxBitsUint 32 + TargetHWDeviceType "Specified" + TargetUnknown off + ProdEqTarget on + } + Simulink.ModelReferenceCC { + $ObjectID 13 + Version "1.15.1" + UpdateModelReferenceTargets "IfOutOfDateOrStructuralChange" + EnableRefExpFcnMdlSchedulingChecks on + CheckModelReferenceTargetMessage "error" + EnableParallelModelReferenceBuilds off + ParallelModelReferenceErrorOnInvalidPool on + ParallelModelReferenceMATLABWorkerInit "None" + ModelReferenceNumInstancesAllowed "Multi" + PropagateVarSize "Infer from blocks in model" + ModelReferencePassRootInputsByReference on + ModelReferenceMinAlgLoopOccurrences off + PropagateSignalLabelsOutOfModel off + SupportModelReferenceSimTargetCustomCode off + } + Simulink.SFSimCC { + $ObjectID 14 + Version "1.15.1" + SFSimEcho on + SimCtrlC on + SimIntegrity on + SimUseLocalCustomCode off + SimParseCustomCode on + SimBuildMode "sf_incremental_build" + SimGenImportedTypeDefs off + } + Simulink.RTWCC { + $BackupClass "Simulink.RTWCC" + $ObjectID 15 + Version "1.15.1" + Array { + Type "Cell" + Dimension 8 + Cell "IncludeHyperlinkInReport" + Cell "GenerateTraceInfo" + Cell "GenerateTraceReport" + Cell "GenerateTraceReportSl" + Cell "GenerateTraceReportSf" + Cell "GenerateTraceReportEml" + Cell "GenerateSLWebview" + Cell "GenerateCodeMetricsReport" + PropName "DisabledProps" + } + SystemTargetFile "grt.tlc" + TLCOptions "" + GenCodeOnly off + MakeCommand "make_rtw" + GenerateMakefile on + PackageGeneratedCodeAndArtifacts off + TemplateMakefile "grt_default_tmf" + PostCodeGenCommand "" + Description "" + GenerateReport off + SaveLog off + RTWVerbose on + RetainRTWFile off + ProfileTLC off + TLCDebug off + TLCCoverage off + TLCAssert off + RTWUseLocalCustomCode off + RTWUseSimCustomCode off + Toolchain "Automatically locate an installed toolchain" + BuildConfiguration "Faster Builds" + IncludeHyperlinkInReport off + LaunchReport off + PortableWordSizes off + CreateSILPILBlock "None" + CodeExecutionProfiling off + CodeExecutionProfileVariable "executionProfile" + CodeProfilingSaveOptions "SummaryOnly" + CodeProfilingInstrumentation off + SILDebugging off + TargetLang "C" + IncludeBusHierarchyInRTWFileBlockHierarchyMap off + GenerateTraceInfo off + GenerateTraceReport off + GenerateTraceReportSl off + GenerateTraceReportSf off + GenerateTraceReportEml off + GenerateWebview off + GenerateCodeMetricsReport off + GenerateCodeReplacementReport off + GenerateMissedCodeReplacementReport off + RTWCompilerOptimization "off" + RTWCustomCompilerOptimizations "" + CheckMdlBeforeBuild "Off" + SharedConstantsCachingThreshold 1024 + Array { + Type "Handle" + Dimension 2 + Simulink.CodeAppCC { + $ObjectID 16 + Version "1.15.1" + Array { + Type "Cell" + Dimension 21 + Cell "IgnoreCustomStorageClasses" + Cell "IgnoreTestpoints" + Cell "InsertBlockDesc" + Cell "InsertPolySpaceComments" + Cell "SFDataObjDesc" + Cell "MATLABFcnDesc" + Cell "SimulinkDataObjDesc" + Cell "DefineNamingRule" + Cell "SignalNamingRule" + Cell "ParamNamingRule" + Cell "InlinedPrmAccess" + Cell "CustomSymbolStr" + Cell "CustomSymbolStrGlobalVar" + Cell "CustomSymbolStrType" + Cell "CustomSymbolStrField" + Cell "CustomSymbolStrFcn" + Cell "CustomSymbolStrFcnArg" + Cell "CustomSymbolStrBlkIO" + Cell "CustomSymbolStrTmpVar" + Cell "CustomSymbolStrMacro" + Cell "ReqsInCode" + PropName "DisabledProps" + } + ForceParamTrailComments off + GenerateComments on + CommentStyle "Auto" + IgnoreCustomStorageClasses on + IgnoreTestpoints off + IncHierarchyInIds off + MaxIdLength 31 + PreserveName off + PreserveNameWithParent off + ShowEliminatedStatement off + OperatorAnnotations off + IncAutoGenComments off + SimulinkDataObjDesc off + SFDataObjDesc off + MATLABFcnDesc off + IncDataTypeInIds off + MangleLength 1 + CustomSymbolStrGlobalVar "$R$N$M" + CustomSymbolStrType "$N$R$M_T" + CustomSymbolStrField "$N$M" + CustomSymbolStrFcn "$R$N$M$F" + CustomSymbolStrFcnArg "rt$I$N$M" + CustomSymbolStrBlkIO "rtb_$N$M" + CustomSymbolStrTmpVar "$N$M" + CustomSymbolStrMacro "$R$N$M" + CustomSymbolStrUtil "$N$C" + DefineNamingRule "None" + ParamNamingRule "None" + SignalNamingRule "None" + InsertBlockDesc off + InsertPolySpaceComments off + SimulinkBlockComments on + MATLABSourceComments off + EnableCustomComments off + InternalIdentifier "Shortened" + InlinedPrmAccess "Literals" + ReqsInCode off + UseSimReservedNames off + } + Simulink.GRTTargetCC { + $BackupClass "Simulink.TargetCC" + $ObjectID 17 + Version "1.15.1" + Array { + Type "Cell" + Dimension 15 + Cell "GeneratePreprocessorConditionals" + Cell "IncludeMdlTerminateFcn" + Cell "GenerateAllocFcn" + Cell "SuppressErrorStatus" + Cell "ERTCustomFileBanners" + Cell "GenerateSampleERTMain" + Cell "GenerateTestInterfaces" + Cell "ModelStepFunctionPrototypeControlCompliant" + Cell "CPPClassGenCompliant" + Cell "PortableWordSizes" + Cell "PurelyIntegerCode" + Cell "SupportComplex" + Cell "SupportAbsoluteTime" + Cell "SupportContinuousTime" + Cell "SupportNonInlinedSFcns" + PropName "DisabledProps" + } + TargetFcnLib "ansi_tfl_table_tmw.mat" + TargetLibSuffix "" + TargetPreCompLibLocation "" + GenFloatMathFcnCalls "NOT IN USE" + TargetLangStandard "C89/C90 (ANSI)" + CodeReplacementLibrary "None" + UtilityFuncGeneration "Auto" + ERTMultiwordTypeDef "System defined" + ERTMultiwordLength 256 + MultiwordLength 2048 + GenerateFullHeader on + InferredTypesCompatibility off + GenerateSampleERTMain off + GenerateTestInterfaces off + ModelReferenceCompliant on + ParMdlRefBuildCompliant on + CompOptLevelCompliant on + ConcurrentExecutionCompliant on + IncludeMdlTerminateFcn on + GeneratePreprocessorConditionals "Disable all" + CombineOutputUpdateFcns off + CombineSignalStateStructs off + SuppressErrorStatus off + ERTFirstTimeCompliant off + IncludeFileDelimiter "Auto" + ERTCustomFileBanners off + SupportAbsoluteTime on + LogVarNameModifier "rt_" + MatFileLogging on + MultiInstanceERTCode off + CodeInterfacePackaging "Nonreusable function" + SupportNonFinite on + SupportComplex on + PurelyIntegerCode off + SupportContinuousTime on + SupportNonInlinedSFcns on + SupportVariableSizeSignals off + ParenthesesLevel "Nominal" + CastingMode "Nominal" + MATLABClassNameForMDSCustomization "Simulink.SoftwareTarget.GRTCustomization" + ModelStepFunctionPrototypeControlCompliant off + CPPClassGenCompliant on + AutosarCompliant off + GRTInterface on + GenerateAllocFcn off + UseToolchainInfoCompliant on + GenerateSharedConstants on + UseMalloc off + ExtMode off + ExtModeStaticAlloc off + ExtModeTesting off + ExtModeStaticAllocSize 1000000 + ExtModeTransport 0 + ExtModeMexFile "ext_comm" + ExtModeIntrfLevel "Level1" + RTWCAPISignals off + RTWCAPIParams off + RTWCAPIStates off + RTWCAPIRootIO off + GenerateASAP2 off + MultiInstanceErrorCode "Error" + } + PropName "Components" + } + } + SlCovCC.ConfigComp { + $ObjectID 18 + Version "1.15.1" + Description "Simulink Coverage Configuration Component" + Name "Simulink Coverage" + RecordCoverage off + CovPath "/" + CovSaveName "covdata" + CovMetricSettings "dw" + CovNameIncrementing off + CovHtmlReporting on + CovForceBlockReductionOff on + CovEnableCumulative on + CovSaveCumulativeToWorkspaceVar on + CovSaveSingleToWorkspaceVar on + CovCumulativeVarName "covCumulativeData" + CovCumulativeReport off + CovReportOnPause on + CovModelRefEnable "Off" + CovExternalEMLEnable off + CovSFcnEnable off + CovBoundaryAbsTol 1e-05 + CovBoundaryRelTol 0.01 + CovUseTimeInterval off + CovStartTime 0 + CovStopTime 0 + } + hdlcoderui.hdlcc { + $ObjectID 19 + Version "1.15.1" + Description "HDL Coder custom configuration component" + Name "HDL Coder" + Array { + Type "Cell" + Dimension 1 + Cell "" + PropName "HDLConfigFile" + } + HDLCActiveTab "0" + } + PropName "Components" + } + Name "Configuration" + CurrentDlgPage "Solver" + ConfigPrmDlgPosition [ 243, 69, 1123, 699 ] + } + PropName "ConfigurationSets" + } + Simulink.ConfigSet { + $PropName "ActiveConfigurationSet" + $ObjectID 7 + } + Object { + $PropName "DataTransfer" + $ObjectID 20 + $ClassName "Simulink.GlobalDataTransfer" + DefaultTransitionBetweenSyncTasks "Ensure deterministic transfer (maximum delay)" + DefaultTransitionBetweenAsyncTasks "Ensure data integrity only" + DefaultTransitionBetweenContTasks "Ensure deterministic transfer (minimum delay)" + DefaultExtrapolationMethodBetweenContTasks "None" + AutoInsertRateTranBlk [0] + } + ExplicitPartitioning off + BlockDefaults { + ForegroundColor "black" + BackgroundColor "white" + DropShadow off + NamePlacement "normal" + FontName "Helvetica" + FontSize 10 + FontWeight "normal" + FontAngle "normal" + ShowName on + BlockRotation 0 + BlockMirror off + } + AnnotationDefaults { + HorizontalAlignment "center" + VerticalAlignment "middle" + ForegroundColor "black" + BackgroundColor "white" + DropShadow off + FontName "Helvetica" + FontSize 10 + FontWeight "normal" + FontAngle "normal" + UseDisplayTextAsClickCallback off + } + LineDefaults { + FontName "Helvetica" + FontSize 9 + FontWeight "normal" + FontAngle "normal" + } + MaskDefaults { + SelfModifiable "off" + IconFrame "on" + IconOpaque "on" + RunInitForIconRedraw "off" + IconRotate "none" + PortRotate "default" + IconUnits "autoscale" + } + MaskParameterDefaults { + Evaluate "on" + Tunable "on" + NeverSave "off" + Internal "off" + ReadOnly "off" + Enabled "on" + Visible "on" + ToolTip "on" + } + BlockParameterDefaults { + Block { + BlockType Demux + Outputs "4" + DisplayOption "none" + BusSelectionMode off + } + Block { + BlockType Derivative + CoefficientInTFapproximation "inf" + } + Block { + BlockType Fcn + Expr "sin(u[1])" + SampleTime "-1" + } + Block { + BlockType Inport + Port "1" + OutputFunctionCall off + OutMin "[]" + OutMax "[]" + OutDataTypeStr "Inherit: auto" + LockScale off + BusOutputAsStruct off + PortDimensions "-1" + VarSizeSig "Inherit" + SampleTime "-1" + SignalType "auto" + SamplingMode "auto" + LatchByDelayingOutsideSignal off + LatchInputForFeedbackSignals off + Interpolate on + } + Block { + BlockType Outport + Port "1" + OutMin "[]" + OutMax "[]" + OutDataTypeStr "Inherit: auto" + LockScale off + BusOutputAsStruct off + PortDimensions "-1" + VarSizeSig "Inherit" + SampleTime "-1" + SignalType "auto" + SamplingMode "auto" + SourceOfInitialOutputValue "Dialog" + OutputWhenDisabled "held" + InitialOutput "[]" + } + Block { + BlockType S-Function + FunctionName "system" + SFunctionModules "''" + PortCounts "[]" + } + Block { + BlockType SubSystem + ShowPortLabels "FromPortIcon" + Permissions "ReadWrite" + PermitHierarchicalResolution "All" + TreatAsAtomicUnit off + MinAlgLoopOccurrences off + PropExecContextOutsideSubsystem off + CheckFcnCallInpInsideContextMsg off + SystemSampleTime "-1" + RTWSystemCode "Auto" + RTWFcnNameOpts "Auto" + RTWFileNameOpts "Auto" + FunctionInterfaceSpec "void_void" + FunctionWithSeparateData off + RTWMemSecFuncInitTerm "Inherit from model" + RTWMemSecFuncExecute "Inherit from model" + RTWMemSecDataConstants "Inherit from model" + RTWMemSecDataInternal "Inherit from model" + RTWMemSecDataParameters "Inherit from model" + SimViewingDevice off + DataTypeOverride "UseLocalSettings" + DataTypeOverrideAppliesTo "AllNumericTypes" + MinMaxOverflowLogging "UseLocalSettings" + Opaque off + MaskHideContents off + SFBlockType "NONE" + GeneratePreprocessorConditionals off + ContentPreviewEnabled off + IsWebBlock off + } + Block { + BlockType Terminator + } + } + System { + Name "Cessna_6DOF_Wind_trim" + Location [-8, 27, 1374, 781] + Open on + ModelBrowserVisibility off + ModelBrowserWidth 200 + ScreenColor "white" + PaperOrientation "landscape" + PaperPositionMode "auto" + PaperType "A4" + PaperUnits "centimeters" + TiledPaperMargins [1.270000, 1.270000, 1.270000, 1.270000] + TiledPageScale 1 + ShowPageBoundaries off + ZoomFactor "80" + ReportName "simulink-default.rpt" + SIDHighWatermark "33" + Block { + BlockType Inport + Name "In1" + SID "18" + Position [910, 483, 940, 497] + ZOrder -1 + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "In2" + SID "19" + Position [910, 518, 940, 532] + ZOrder -2 + Port "2" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "In3" + SID "20" + Position [910, 553, 940, 567] + ZOrder -3 + Port "3" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "In4" + SID "21" + Position [910, 583, 940, 597] + ZOrder -4 + Port "4" + IconDisplay "Port number" + } + Block { + BlockType Reference + Name "6DoF Wind (Wind Angles)" + SID "1" + Ports [2, 10] + Position [335, 223, 535, 427] + ZOrder -5 + LibraryVersion "1.46" + SourceBlock "aerolibobsolete/6DoF Wind (Wind Angles)" + SourceType "6DoF EoM (Wind Axis)" + ContentPreviewEnabled off + units "Metric (MKS)" + mtype "Fixed" + rep "Wind Angles" + xme_0 "[x y z]" + Vm_0 "[V alpha beta]" + wind_0 "[0 0 0]" + pm_0 "[p q r]" + mass_0 "m" + mass_e "0.5" + mass_f "2.0" + inertia "diag([I_xx I_yy I_zz])" + inertia_e "eye(3)" + inertia_f "2*eye(3)" + } + Block { + BlockType Demux + Name "Demux" + SID "2" + Ports [1, 3] + Position [620, 236, 625, 274] + ZOrder -6 + ShowName off + Outputs "3" + DisplayOption "bar" + } + Block { + BlockType Demux + Name "Demux1" + SID "3" + Ports [1, 3] + Position [665, 256, 670, 294] + ZOrder -7 + ShowName off + Outputs "3" + DisplayOption "bar" + } + Block { + BlockType Demux + Name "Demux2" + SID "4" + Ports [1, 3] + Position [920, 356, 925, 394] + ZOrder -8 + ShowName off + Outputs "3" + DisplayOption "bar" + } + Block { + BlockType Demux + Name "Demux3" + SID "5" + Ports [1, 2] + Position [620, 336, 625, 374] + ZOrder -9 + ShowName off + Outputs "2" + DisplayOption "bar" + } + Block { + BlockType Derivative + Name "Derivative" + SID "6" + Position [905, 410, 935, 440] + ZOrder -10 + } + Block { + BlockType Fcn + Name "Fcn" + SID "7" + Position [675, 310, 735, 340] + ZOrder -11 + Expr "sin(u(1)*exp(2.3*(-u(2))))" + } + Block { + BlockType SubSystem + Name "MATLAB Function" + SID "8" + Ports [13, 2] + Position [1010, 228, 1165, 442] + ZOrder -12 + LibraryVersion "1.32" + ErrorFcn "Stateflow.Translate.translate" + PermitHierarchicalResolution "ExplicitOnly" + TreatAsAtomicUnit on + RequestExecContextInheritance off + SFBlockType "MATLAB Function" + Variant off + System { + Name "MATLAB Function" + Location [227, 345, 838, 789] + Open off + ModelBrowserVisibility off + ModelBrowserWidth 200 + ScreenColor "white" + PaperOrientation "landscape" + PaperPositionMode "auto" + PaperType "A4" + PaperUnits "centimeters" + TiledPaperMargins [1.270000, 1.270000, 1.270000, 1.270000] + TiledPageScale 1 + ShowPageBoundaries off + ZoomFactor "100" + SIDHighWatermark "36" + Block { + BlockType Inport + Name "alpha" + SID "8::1" + Position [20, 101, 40, 119] + ZOrder -1 + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "beta" + SID "8::18" + Position [20, 136, 40, 154] + ZOrder -2 + Port "2" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "gamma" + SID "8::19" + Position [20, 171, 40, 189] + ZOrder -3 + Port "3" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "mu" + SID "8::20" + Position [20, 206, 40, 224] + ZOrder -4 + Port "4" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "p" + SID "8::21" + Position [20, 246, 40, 264] + ZOrder -5 + Port "5" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "q" + SID "8::22" + Position [20, 281, 40, 299] + ZOrder -6 + Port "6" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "r" + SID "8::23" + Position [20, 316, 40, 334] + ZOrder -7 + Port "7" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "V" + SID "8::24" + Position [20, 351, 40, 369] + ZOrder -8 + Port "8" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "alpha_dot" + SID "8::25" + Position [20, 386, 40, 404] + ZOrder -9 + Port "9" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "delta_e" + SID "8::27" + Position [20, 426, 40, 444] + ZOrder -10 + Port "10" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "delta_a" + SID "8::28" + Position [20, 461, 40, 479] + ZOrder -11 + Port "11" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "delta_r" + SID "8::29" + Position [20, 496, 40, 514] + ZOrder -12 + Port "12" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "thrust" + SID "8::30" + Position [20, 531, 40, 549] + ZOrder -13 + Port "13" + IconDisplay "Port number" + } + Block { + BlockType Demux + Name " Demux " + SID "8::35" + Ports [1, 1] + Position [270, 230, 320, 270] + ZOrder 5 + Outputs "1" + } + Block { + BlockType S-Function + Name " SFunction " + SID "8::34" + Tag "Stateflow S-Function Cessna_6DOF_Wind_trim 2" + Ports [13, 3] + Position [180, 90, 230, 370] + ZOrder 4 + FunctionName "sf_sfun" + PortCounts "[13 3]" + SFunctionDeploymentMode off + EnableBusSupport off + Port { + PortNumber 2 + Name "F" + RTWStorageClass "Auto" + DataLoggingNameMode "SignalName" + } + Port { + PortNumber 3 + Name "M" + RTWStorageClass "Auto" + DataLoggingNameMode "SignalName" + } + } + Block { + BlockType Terminator + Name " Terminator " + SID "8::36" + Position [460, 241, 480, 259] + ZOrder 6 + } + Block { + BlockType Outport + Name "F" + SID "8::5" + Position [460, 101, 480, 119] + ZOrder -17 + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "M" + SID "8::26" + Position [460, 136, 480, 154] + ZOrder -18 + Port "2" + IconDisplay "Port number" + } + Line { + ZOrder 35 + SrcBlock "alpha" + SrcPort 1 + DstBlock " SFunction " + DstPort 1 + } + Line { + ZOrder 36 + SrcBlock "beta" + SrcPort 1 + DstBlock " SFunction " + DstPort 2 + } + Line { + ZOrder 37 + SrcBlock "gamma" + SrcPort 1 + DstBlock " SFunction " + DstPort 3 + } + Line { + ZOrder 38 + SrcBlock "mu" + SrcPort 1 + DstBlock " SFunction " + DstPort 4 + } + Line { + ZOrder 39 + SrcBlock "p" + SrcPort 1 + DstBlock " SFunction " + DstPort 5 + } + Line { + ZOrder 40 + SrcBlock "q" + SrcPort 1 + DstBlock " SFunction " + DstPort 6 + } + Line { + ZOrder 41 + SrcBlock "r" + SrcPort 1 + DstBlock " SFunction " + DstPort 7 + } + Line { + ZOrder 42 + SrcBlock "V" + SrcPort 1 + DstBlock " SFunction " + DstPort 8 + } + Line { + ZOrder 43 + SrcBlock "alpha_dot" + SrcPort 1 + DstBlock " SFunction " + DstPort 9 + } + Line { + ZOrder 44 + SrcBlock "delta_e" + SrcPort 1 + DstBlock " SFunction " + DstPort 10 + } + Line { + ZOrder 45 + SrcBlock "delta_a" + SrcPort 1 + DstBlock " SFunction " + DstPort 11 + } + Line { + ZOrder 46 + SrcBlock "delta_r" + SrcPort 1 + DstBlock " SFunction " + DstPort 12 + } + Line { + ZOrder 47 + SrcBlock "thrust" + SrcPort 1 + DstBlock " SFunction " + DstPort 13 + } + Line { + Name "F" + ZOrder 48 + Labels [0, 0] + SrcBlock " SFunction " + SrcPort 2 + DstBlock "F" + DstPort 1 + } + Line { + Name "M" + ZOrder 49 + Labels [0, 0] + SrcBlock " SFunction " + SrcPort 3 + DstBlock "M" + DstPort 1 + } + Line { + ZOrder 50 + SrcBlock " Demux " + SrcPort 1 + DstBlock " Terminator " + DstPort 1 + } + Line { + ZOrder 51 + SrcBlock " SFunction " + SrcPort 1 + DstBlock " Demux " + DstPort 1 + } + } + } + Block { + BlockType Terminator + Name "Terminator" + SID "13" + Position [565, 225, 585, 245] + ZOrder -13 + } + Block { + BlockType Terminator + Name "Terminator1" + SID "14" + Position [565, 285, 585, 305] + ZOrder -14 + } + Block { + BlockType Terminator + Name "Terminator2" + SID "15" + Position [565, 405, 585, 425] + ZOrder -15 + } + Block { + BlockType Terminator + Name "Terminator3" + SID "16" + Position [610, 385, 630, 405] + ZOrder -16 + } + Block { + BlockType Terminator + Name "Terminator4" + SID "17" + Position [565, 345, 585, 365] + ZOrder -17 + } + Block { + BlockType Outport + Name "Out1" + SID "22" + Position [910, 113, 940, 127] + ZOrder -18 + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "Out2" + SID "23" + Position [910, 143, 940, 157] + ZOrder -19 + Port "2" + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "Out3" + SID "24" + Position [910, 173, 940, 187] + ZOrder -20 + Port "3" + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "Out4" + SID "25" + Position [655, 113, 685, 127] + ZOrder -21 + Port "4" + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "Out5" + SID "26" + Position [655, 143, 685, 157] + ZOrder -22 + Port "5" + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "Out6" + SID "27" + Position [655, 173, 685, 187] + ZOrder -23 + Port "6" + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "Out7" + SID "28" + Position [705, 113, 735, 127] + ZOrder -24 + Port "7" + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "Out8" + SID "29" + Position [720, 143, 750, 157] + ZOrder -25 + Port "8" + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "Out9" + SID "30" + Position [720, 173, 750, 187] + ZOrder -26 + Port "9" + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "Out10" + SID "31" + Position [775, 483, 805, 497] + ZOrder -27 + Port "10" + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "Out11" + SID "32" + Position [810, 518, 840, 532] + ZOrder -28 + Port "11" + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "Out12" + SID "33" + Position [775, 543, 805, 557] + ZOrder -29 + Port "12" + IconDisplay "Port number" + } + Line { + ZOrder 1 + SrcBlock "MATLAB Function" + SrcPort 1 + Points [9, 0; 0, -70; -859, 0] + DstBlock "6DoF Wind (Wind Angles)" + DstPort 1 + } + Line { + ZOrder 2 + SrcBlock "MATLAB Function" + SrcPort 2 + Points [9, 0; 0, 60; -859, 0] + DstBlock "6DoF Wind (Wind Angles)" + DstPort 2 + } + Line { + ZOrder 3 + SrcBlock "6DoF Wind (Wind Angles)" + SrcPort 2 + DstBlock "Demux" + DstPort 1 + } + Line { + ZOrder 4 + SrcBlock "6DoF Wind (Wind Angles)" + SrcPort 1 + DstBlock "Terminator" + DstPort 1 + } + Line { + ZOrder 5 + SrcBlock "6DoF Wind (Wind Angles)" + SrcPort 3 + DstBlock "Demux1" + DstPort 1 + } + Line { + ZOrder 6 + SrcBlock "6DoF Wind (Wind Angles)" + SrcPort 4 + DstBlock "Terminator1" + DstPort 1 + } + Line { + ZOrder 7 + SrcBlock "6DoF Wind (Wind Angles)" + SrcPort 10 + DstBlock "Terminator2" + DstPort 1 + } + Line { + ZOrder 8 + SrcBlock "6DoF Wind (Wind Angles)" + SrcPort 9 + DstBlock "Terminator3" + DstPort 1 + } + Line { + ZOrder 9 + SrcBlock "6DoF Wind (Wind Angles)" + SrcPort 8 + DstBlock "Demux2" + DstPort 1 + } + Line { + ZOrder 10 + SrcBlock "6DoF Wind (Wind Angles)" + SrcPort 7 + DstBlock "Terminator4" + DstPort 1 + } + Line { + ZOrder 11 + SrcBlock "6DoF Wind (Wind Angles)" + SrcPort 6 + Points [65, 0] + DstBlock "Demux3" + DstPort 1 + } + Line { + ZOrder 12 + SrcBlock "Demux3" + SrcPort 1 + Points [165, 0] + Branch { + ZOrder 13 + Points [0, 80] + DstBlock "Derivative" + DstPort 1 + } + Branch { + ZOrder 14 + Points [0, -120] + Branch { + ZOrder 15 + Points [86, 0; 0, 20] + DstBlock "MATLAB Function" + DstPort 1 + } + Branch { + ZOrder 16 + Points [0, -75] + DstBlock "Out2" + DstPort 1 + } + } + } + Line { + ZOrder 17 + SrcBlock "Demux2" + SrcPort 1 + Points [15, 0; 0, -60] + Branch { + ZOrder 52 + Points [0, -5; -185, 0] + DstBlock "Out10" + DstPort 1 + } + Branch { + ZOrder 18 + DstBlock "MATLAB Function" + DstPort 5 + } + } + Line { + ZOrder 20 + SrcBlock "Demux2" + SrcPort 2 + Points [25, 0; 0, -55] + Branch { + ZOrder 51 + Points [0, -5; -190, 0; 0, 210] + DstBlock "Out11" + DstPort 1 + } + Branch { + ZOrder 21 + DstBlock "MATLAB Function" + DstPort 6 + } + } + Line { + ZOrder 23 + SrcBlock "Demux2" + SrcPort 3 + Points [30, 0; 0, -50] + Branch { + ZOrder 50 + Points [0, -5; -200, 0] + DstBlock "Out12" + DstPort 1 + } + Branch { + ZOrder 24 + DstBlock "MATLAB Function" + DstPort 7 + } + } + Line { + ZOrder 26 + SrcBlock "Demux3" + SrcPort 2 + Points [285, 0; 0, -115; -20, 0] + Branch { + ZOrder 27 + Points [-112, 0; 0, 10] + DstBlock "MATLAB Function" + DstPort 2 + } + Branch { + ZOrder 28 + DstBlock "Out3" + DstPort 1 + } + } + Line { + ZOrder 29 + SrcBlock "Demux1" + SrcPort 1 + Points [15, 0] + Branch { + ZOrder 30 + Points [273, 0; 0, 25] + DstBlock "MATLAB Function" + DstPort 4 + } + Branch { + ZOrder 31 + DstBlock "Out7" + DstPort 1 + } + } + Line { + ZOrder 32 + SrcBlock "Demux1" + SrcPort 2 + DstBlock "MATLAB Function" + DstPort 3 + } + Line { + ZOrder 33 + SrcBlock "6DoF Wind (Wind Angles)" + SrcPort 5 + Points [0, 10] + DstBlock "Fcn" + DstPort 1 + } + Line { + ZOrder 34 + SrcBlock "Fcn" + SrcPort 1 + Points [30, 0] + Branch { + ZOrder 35 + Points [115, 0; 0, 25] + DstBlock "MATLAB Function" + DstPort 8 + } + Branch { + ZOrder 36 + Points [0, -205] + DstBlock "Out1" + DstPort 1 + } + } + Line { + ZOrder 37 + SrcBlock "Derivative" + SrcPort 1 + Points [45, 0; 0, -60] + DstBlock "MATLAB Function" + DstPort 9 + } + Line { + ZOrder 38 + SrcBlock "In1" + SrcPort 1 + Points [28, 0; 0, -110] + DstBlock "MATLAB Function" + DstPort 10 + } + Line { + ZOrder 39 + SrcBlock "In2" + SrcPort 1 + Points [34, 0; 0, -130] + DstBlock "MATLAB Function" + DstPort 11 + } + Line { + ZOrder 40 + SrcBlock "In3" + SrcPort 1 + Points [14, 0; 0, -150] + DstBlock "MATLAB Function" + DstPort 12 + } + Line { + ZOrder 41 + SrcBlock "In4" + SrcPort 1 + Points [50, 0] + DstBlock "MATLAB Function" + DstPort 13 + } + Line { + ZOrder 42 + SrcBlock "Demux" + SrcPort 1 + Points [10, 0] + DstBlock "Out4" + DstPort 1 + } + Line { + ZOrder 43 + SrcBlock "Demux" + SrcPort 2 + Points [10, 0] + DstBlock "Out5" + DstPort 1 + } + Line { + ZOrder 44 + SrcBlock "Demux" + SrcPort 3 + Points [10, 0] + DstBlock "Out6" + DstPort 1 + } + Line { + ZOrder 45 + SrcBlock "Demux1" + SrcPort 3 + Points [30, 0; 0, -105] + Branch { + ZOrder 46 + DstBlock "Out9" + DstPort 1 + } + Branch { + ZOrder 47 + DstBlock "Out8" + DstPort 1 + } + } + } +} +#Finite State Machines +# +# Stateflow 80000006 +# +# +Stateflow { + machine { + id 1 + name "Cessna_6DOF_Wind_trim" + created "23-Dec-2014 15:02:14" + isLibrary 0 + firstTarget 22 + sfVersion 80000006 + } + chart { + id 2 + name "MATLAB Function" + windowPosition [421 52 213 385] + viewLimits [0 156.75 0 153.75] + screen [1 1 1366 768 1.333333333333333] + treeNode [0 3 0 0] + firstTransition 20 + firstJunction 19 + viewObj 2 + machine 1 + ssIdHighWaterMark 18 + decomposition CLUSTER_CHART + type EML_CHART + firstData 4 + chartFileNumber 2 + disableImplicitCasting 1 + eml { + name "Force_Cessna" + } + } + state { + id 3 + labelString "eML_blk_kernel()" + position [18 64.5 118 66] + fontSize 12 + chart 2 + treeNode [2 0 0 0] + superState SUBCHART + subviewer 2 + ssIdNumber 1 + type FUNC_STATE + decomposition CLUSTER_STATE + eml { + isEML 1 + script "function [F, M] = Force_Cessna(alpha, beta, gamma, mu, p, q, r, V, alpha_dot, delta_e, delta_a, d" + "elta_r, thrust)\n\ng = 9.8;\nrho = 1.225;\n\nm = 1043.26;\nC_bar = 1.493;\nb = 10.911;\nS_ref = 16.1651;\n\nC_L_" + "0 = 0.25;\nC_L_alpha = 4.47;\nC_L_q = 1.7;\nC_L_delta_e = 0.3476;\n\nC_D_0 = 0.036;\nC_D_alpha = 0.13;\nC_D_beta" + " = 0.17;\nC_D_delta_e = 0.06;\n\nC_Y_beta = -0.31;\nC_Y_p = -0.037;\nC_Y_r = 0.21;\nC_Y_delta_a = 0;\n\nC_l_beta" + " = -0.089;\nC_l_p = -0.47;\nC_l_r = 0.096;\nC_l_delta_a = -0.09;\nC_l_delta_r = 0.0147;\n\nC_M_0 = -0.02;\nC_M_a" + "lpha = -1.8;\nC_M_alpha_dot = -12.4;\nC_M_delta_e = -1.28;\n\nC_N_beta = 0.065;\nC_N_p = -0.03;\nC_N_r = -0.99;\n" + "C_N_delta_a = -0.0053;\nC_N_delta_r = -0.0657;\n\n% delta_e = -0.0304;\n% delta_a = 0;\n% delta_r = 0;\n% thrust" + " = 1397;\n\nC_L = C_L_0 + C_L_alpha*alpha + C_L_q*(q*C_bar/(2*V)) + C_L_delta_e*delta_e;\nC_D = C_D_0 + C_D_alph" + "a*abs(alpha) + C_D_beta*abs(beta) + C_D_delta_e*abs(delta_e);\nC_Y = C_Y_beta*beta + C_Y_p*(p*b/(2*V)) + C_Y_r*(" + "r*b/(2*V)) + C_Y_delta_a*delta_a;\n\nC_l = C_l_beta*beta + C_l_p*(p*b/(2*V)) + C_l_r*(r*b/(2*V)) + C_l_delta_a*d" + "elta_a + C_l_delta_r*delta_r;\nC_M = C_M_0 + C_M_alpha*alpha + C_M_alpha_dot*(alpha_dot*C_bar/(2*V)) + C_M_delta" + "_e*delta_e;\nC_N = C_N_beta*beta + C_N_p*(p*b/(2*V)) + C_N_r*(r*b/(2*V)) + C_N_delta_a*delta_a + C_N_delta_r*del" + "ta_r;\n\nF = zeros(3,1);\nM = zeros(3,1);\n\nq_bar = 0.5*rho*V*V;\n\nF(1,1) = q_bar*S_ref*(-C_D*cos(beta) + C_Y*" + "sin(beta)) - m*g*sin(gamma) + thrust*cos(alpha)*cos(beta);\nF(2,1) = q_bar*S_ref*(C_D*sin(beta) + C_Y*sin(beta))" + " - m*g*cos(gamma)*sin(mu) - thrust*cos(alpha)*sin(beta);\nF(3,1) = q_bar*S_ref*(-C_L) + m*g*cos(gamma)*cos(mu) -" + " thrust*sin(alpha);\n\nM(1,1) = q_bar*S_ref*b*C_l;\nM(2,1) = q_bar*S_ref*C_bar*C_M;\nM(3,1) = q_bar*S_ref*b*C_N;" + editorLayout "100 M4x1[205 227 1382 754]" + } + } + data { + id 4 + ssIdNumber 4 + name "alpha" + linkNode [2 0 5] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + } + complexity SF_COMPLEX_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 5 + ssIdNumber 5 + name "F" + linkNode [2 4 6] + scope OUTPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_NO + } + dataType "Inherit: Same as Simulink" + } + data { + id 6 + ssIdNumber 6 + name "beta" + linkNode [2 5 7] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 7 + ssIdNumber 7 + name "gamma" + linkNode [2 6 8] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 8 + ssIdNumber 8 + name "mu" + linkNode [2 7 9] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 9 + ssIdNumber 9 + name "p" + linkNode [2 8 10] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 10 + ssIdNumber 10 + name "q" + linkNode [2 9 11] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 11 + ssIdNumber 11 + name "r" + linkNode [2 10 12] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 12 + ssIdNumber 12 + name "V" + linkNode [2 11 13] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 13 + ssIdNumber 13 + name "alpha_dot" + linkNode [2 12 14] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 14 + ssIdNumber 14 + name "M" + linkNode [2 13 15] + scope OUTPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_NO + } + dataType "Inherit: Same as Simulink" + } + data { + id 15 + ssIdNumber 15 + name "delta_e" + linkNode [2 14 16] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 16 + ssIdNumber 16 + name "delta_a" + linkNode [2 15 17] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 17 + ssIdNumber 17 + name "delta_r" + linkNode [2 16 18] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 18 + ssIdNumber 18 + name "thrust" + linkNode [2 17 0] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + junction { + id 19 + position [23.5747 49.5747 7] + chart 2 + linkNode [2 0 0] + subviewer 2 + ssIdNumber 3 + type CONNECTIVE_JUNCTION + } + transition { + id 20 + labelString "{eML_blk_kernel();}" + labelPosition [36.125 25.875 102.544 14.964] + fontSize 12 + src { + intersection [0 0 1 0 23.5747 14.625 0 0] + } + dst { + id 19 + intersection [1 0 -1 0 23.5747 42.5747 0 0] + } + midPoint [23.5747 24.9468] + chart 2 + linkNode [2 0 0] + dataLimits [21.175 25.975 14.625 42.575] + subviewer 2 + drawStyle SMART + slide { + sticky BOTH_STICK + } + executionOrder 1 + ssIdNumber 2 + } + instance { + id 21 + name "MATLAB Function" + machine 1 + chart 2 + } + target { + id 22 + name "sfun" + description "Default Simulink S-Function Target." + machine 1 + linkNode [1 0 0] + } +} diff --git a/Prof_Arya/Cessna_6DOF_Wind_trim.mdl.r2014a b/Prof_Arya/Cessna_6DOF_Wind_trim.mdl.r2014a new file mode 100644 index 0000000..22c1a49 --- /dev/null +++ b/Prof_Arya/Cessna_6DOF_Wind_trim.mdl.r2014a @@ -0,0 +1,2317 @@ +Model { + Name "Cessna_6DOF_Wind_trim" + Version 8.3 + MdlSubVersion 0 + SavedCharacterEncoding "windows-1252" + GraphicalInterface { + NumRootInports 4 + Inport { + BusObject "" + Name "In1" + } + Inport { + BusObject "" + Name "In2" + } + Inport { + BusObject "" + Name "In3" + } + Inport { + BusObject "" + Name "In4" + } + NumRootOutports 12 + Outport { + BusObject "" + BusOutputAsStruct "off" + Name "Out1" + } + Outport { + BusObject "" + BusOutputAsStruct "off" + Name "Out2" + } + Outport { + BusObject "" + BusOutputAsStruct "off" + Name "Out3" + } + Outport { + BusObject "" + BusOutputAsStruct "off" + Name "Out4" + } + Outport { + BusObject "" + BusOutputAsStruct "off" + Name "Out5" + } + Outport { + BusObject "" + BusOutputAsStruct "off" + Name "Out6" + } + Outport { + BusObject "" + BusOutputAsStruct "off" + Name "Out7" + } + Outport { + BusObject "" + BusOutputAsStruct "off" + Name "Out8" + } + Outport { + BusObject "" + BusOutputAsStruct "off" + Name "Out9" + } + Outport { + BusObject "" + BusOutputAsStruct "off" + Name "Out10" + } + Outport { + BusObject "" + BusOutputAsStruct "off" + Name "Out11" + } + Outport { + BusObject "" + BusOutputAsStruct "off" + Name "Out12" + } + ParameterArgumentNames "" + ComputedModelVersion "1.5" + NumModelReferences 0 + NumTestPointedSignals 0 + } + SaveDefaultBlockParams on + ScopeRefreshTime 0.035000 + OverrideScopeRefreshTime on + DisableAllScopes off + DataTypeOverride "UseLocalSettings" + DataTypeOverrideAppliesTo "AllNumericTypes" + MinMaxOverflowLogging "UseLocalSettings" + MinMaxOverflowArchiveMode "Overwrite" + FPTRunName "Run 1" + MaxMDLFileLineLength 120 + Object { + $PropName "BdWindowsInfo" + $ObjectID 1 + $ClassName "Simulink.BDWindowsInfo" + Object { + $PropName "WindowsInfo" + $ObjectID 2 + $ClassName "Simulink.WindowInfo" + IsActive [1] + Location [-8.0, -8.0, 1382.0, 754.0] + Object { + $PropName "ModelBrowserInfo" + $ObjectID 3 + $ClassName "Simulink.ModelBrowserInfo" + Visible [0] + DockPosition "Left" + Width [50] + Height [50] + Filter [8] + } + Object { + $PropName "ExplorerBarInfo" + $ObjectID 4 + $ClassName "Simulink.ExplorerBarInfo" + Visible [1] + } + Object { + $PropName "EditorsInfo" + $ObjectID 5 + $ClassName "Simulink.EditorInfo" + IsActive [1] + ViewObjType "SimulinkSubsys" + LoadSaveID "1" + Extents [1332.0, 580.0] + ZoomFactor [1.0] + Offset [-0.25, 0.0] + } + } + } + Created "Tue Dec 23 15:02:08 2014" + Creator "Pranav" + UpdateHistory "UpdateHistoryNever" + ModifiedByFormat "%" + LastModifiedBy "Pranav" + ModifiedDateFormat "%" + LastModifiedDate "Wed Apr 13 15:49:51 2016" + RTWModifiedTimeStamp 382463365 + ModelVersionFormat "1.%" + ConfigurationManager "none" + SampleTimeColors off + SampleTimeAnnotations off + LibraryLinkDisplay "none" + WideLines off + ShowLineDimensions off + ShowPortDataTypes off + ShowDesignRanges off + ShowLoopsOnError on + IgnoreBidirectionalLines off + ShowStorageClass off + ShowTestPointIcons on + ShowSignalResolutionIcons on + ShowViewerIcons on + SortedOrder off + ExecutionContextIcon off + ShowLinearizationAnnotations on + BlockNameDataTip off + BlockParametersDataTip off + BlockDescriptionStringDataTip off + ToolBar on + StatusBar on + BrowserShowLibraryLinks off + BrowserLookUnderMasks off + SimulationMode "normal" + PauseTimes "5" + NumberOfSteps 1 + SnapshotBufferSize 10 + SnapshotInterval 10 + NumberOfLastSnapshots 0 + LinearizationMsg "none" + Profile off + ParamWorkspaceSource "MATLABWorkspace" + AccelSystemTargetFile "accel.tlc" + AccelTemplateMakefile "accel_default_tmf" + AccelMakeCommand "make_rtw" + TryForcingSFcnDF off + Object { + $PropName "DataLoggingOverride" + $ObjectID 6 + $ClassName "Simulink.SimulationData.ModelLoggingInfo" + model_ "Cessna_6DOF_Wind_trim" + signals_ [] + overrideMode_ [0.0] + Array { + Type "Cell" + Dimension 1 + Cell "Cessna_6DOF_Wind_trim" + PropName "logAsSpecifiedByModels_" + } + Array { + Type "Cell" + Dimension 1 + Cell [] + PropName "logAsSpecifiedByModelsSSIDs_" + } + } + RecordCoverage off + CovPath "/" + CovSaveName "covdata" + CovMetricSettings "dw" + CovNameIncrementing off + CovHtmlReporting on + CovForceBlockReductionOff on + CovEnableCumulative on + covSaveCumulativeToWorkspaceVar on + CovSaveSingleToWorkspaceVar on + CovCumulativeVarName "covCumulativeData" + CovCumulativeReport off + CovReportOnPause on + CovModelRefEnable "Off" + CovExternalEMLEnable off + CovSFcnEnable off + CovBoundaryAbsTol 0.000010 + CovBoundaryRelTol 0.010000 + ExtModeBatchMode off + ExtModeEnableFloating on + ExtModeTrigType "manual" + ExtModeTrigMode "normal" + ExtModeTrigPort "1" + ExtModeTrigElement "any" + ExtModeTrigDuration 1000 + ExtModeTrigDurationFloating "auto" + ExtModeTrigHoldOff 0 + ExtModeTrigDelay 0 + ExtModeTrigDirection "rising" + ExtModeTrigLevel 0 + ExtModeArchiveMode "off" + ExtModeAutoIncOneShot off + ExtModeIncDirWhenArm off + ExtModeAddSuffixToVar off + ExtModeWriteAllDataToWs off + ExtModeArmWhenConnect on + ExtModeSkipDownloadWhenConnect off + ExtModeLogAll on + ExtModeAutoUpdateStatusClock on + BufferReuse on + ShowModelReferenceBlockVersion off + ShowModelReferenceBlockIO off + Array { + Type "Handle" + Dimension 1 + Simulink.ConfigSet { + $ObjectID 7 + Version "1.14.2" + Array { + Type "Handle" + Dimension 9 + Simulink.SolverCC { + $ObjectID 8 + Version "1.14.2" + StartTime "0.0" + StopTime "10.0" + AbsTol "auto" + FixedStep "auto" + InitialStep "auto" + MaxNumMinSteps "-1" + MaxOrder 5 + ZcThreshold "auto" + ConsecutiveZCsStepRelTol "10*128*eps" + MaxConsecutiveZCs "1000" + ExtrapolationOrder 4 + NumberNewtonIterations 1 + MaxStep "auto" + MinStep "auto" + MaxConsecutiveMinStep "1" + RelTol "1e-3" + SolverMode "Auto" + EnableConcurrentExecution off + ConcurrentTasks off + Solver "ode45" + SolverName "ode45" + SolverJacobianMethodControl "auto" + ShapePreserveControl "DisableAll" + ZeroCrossControl "UseLocalSettings" + ZeroCrossAlgorithm "Nonadaptive" + AlgebraicLoopSolver "TrustRegion" + SolverResetMethod "Fast" + PositivePriorityOrder off + AutoInsertRateTranBlk off + SampleTimeConstraint "Unconstrained" + InsertRTBMode "Whenever possible" + } + Simulink.DataIOCC { + $ObjectID 9 + Version "1.14.2" + Decimation "1" + ExternalInput "[t, u]" + FinalStateName "xFinal" + InitialState "xInitial" + LimitDataPoints on + MaxDataPoints "1000" + LoadExternalInput off + LoadInitialState off + SaveFinalState off + SaveCompleteFinalSimState off + SaveFormat "Array" + SignalLoggingSaveFormat "ModelDataLogs" + SaveOutput on + SaveState off + SignalLogging on + DSMLogging on + InspectSignalLogs off + VisualizeSimOutput on + SaveTime on + ReturnWorkspaceOutputs off + StateSaveName "xout" + TimeSaveName "tout" + OutputSaveName "yout" + SignalLoggingName "logsout" + DSMLoggingName "dsmout" + OutputOption "RefineOutputTimes" + OutputTimes "[]" + ReturnWorkspaceOutputsName "out" + Refine "1" + } + Simulink.OptimizationCC { + $ObjectID 10 + Version "1.14.2" + Array { + Type "Cell" + Dimension 8 + Cell "BooleansAsBitfields" + Cell "PassReuseOutputArgsAs" + Cell "PassReuseOutputArgsThreshold" + Cell "ZeroExternalMemoryAtStartup" + Cell "ZeroInternalMemoryAtStartup" + Cell "OptimizeModelRefInitCode" + Cell "NoFixptDivByZeroProtection" + Cell "UseSpecifiedMinMax" + PropName "DisabledProps" + } + BlockReduction on + BooleanDataType on + ConditionallyExecuteInputs on + InlineParams off + UseIntDivNetSlope off + UseFloatMulNetSlope off + DefaultUnderspecifiedDataType "double" + UseSpecifiedMinMax off + InlineInvariantSignals off + OptimizeBlockIOStorage on + BufferReuse on + EnhancedBackFolding off + CachingGlobalReferences off + GlobalBufferReuse on + StrengthReduction off + ExpressionFolding on + BooleansAsBitfields off + BitfieldContainerType "uint_T" + EnableMemcpy on + MemcpyThreshold 64 + PassReuseOutputArgsAs "Structure reference" + ExpressionDepthLimit 2147483647 + FoldNonRolledExpr on + LocalBlockOutputs on + RollThreshold 5 + SystemCodeInlineAuto off + StateBitsets off + DataBitsets off + ActiveStateOutputEnumStorageType "Native Integer" + UseTempVars off + ZeroExternalMemoryAtStartup on + ZeroInternalMemoryAtStartup on + InitFltsAndDblsToZero off + NoFixptDivByZeroProtection off + EfficientFloat2IntCast off + EfficientMapNaN2IntZero on + OptimizeModelRefInitCode off + LifeSpan "inf" + MaxStackSize "Inherit from target" + BufferReusableBoundary on + SimCompilerOptimization "Off" + AccelVerboseBuild off + ParallelExecutionInRapidAccelerator on + } + Simulink.DebuggingCC { + $ObjectID 11 + Version "1.14.2" + RTPrefix "error" + ConsistencyChecking "none" + ArrayBoundsChecking "none" + SignalInfNanChecking "none" + SignalRangeChecking "none" + ReadBeforeWriteMsg "UseLocalSettings" + WriteAfterWriteMsg "UseLocalSettings" + WriteAfterReadMsg "UseLocalSettings" + AlgebraicLoopMsg "warning" + ArtificialAlgebraicLoopMsg "warning" + SaveWithDisabledLinksMsg "warning" + SaveWithParameterizedLinksMsg "warning" + CheckSSInitialOutputMsg on + UnderspecifiedInitializationDetection "Classic" + MergeDetectMultiDrivingBlocksExec "none" + CheckExecutionContextPreStartOutputMsg off + CheckExecutionContextRuntimeOutputMsg off + SignalResolutionControl "UseLocalSettings" + BlockPriorityViolationMsg "warning" + MinStepSizeMsg "warning" + TimeAdjustmentMsg "none" + MaxConsecutiveZCsMsg "error" + MaskedZcDiagnostic "warning" + IgnoredZcDiagnostic "warning" + SolverPrmCheckMsg "warning" + InheritedTsInSrcMsg "warning" + DiscreteInheritContinuousMsg "warning" + MultiTaskDSMMsg "error" + MultiTaskCondExecSysMsg "error" + MultiTaskRateTransMsg "error" + SingleTaskRateTransMsg "none" + TasksWithSamePriorityMsg "warning" + SigSpecEnsureSampleTimeMsg "warning" + CheckMatrixSingularityMsg "none" + IntegerOverflowMsg "warning" + Int32ToFloatConvMsg "warning" + ParameterDowncastMsg "error" + ParameterOverflowMsg "error" + ParameterUnderflowMsg "none" + ParameterPrecisionLossMsg "warning" + ParameterTunabilityLossMsg "warning" + FixptConstUnderflowMsg "none" + FixptConstOverflowMsg "none" + FixptConstPrecisionLossMsg "none" + UnderSpecifiedDataTypeMsg "none" + UnnecessaryDatatypeConvMsg "none" + VectorMatrixConversionMsg "none" + InvalidFcnCallConnMsg "error" + FcnCallInpInsideContextMsg "UseLocalSettings" + SignalLabelMismatchMsg "none" + UnconnectedInputMsg "warning" + UnconnectedOutputMsg "warning" + UnconnectedLineMsg "warning" + SFcnCompatibilityMsg "none" + FrameProcessingCompatibilityMsg "warning" + UniqueDataStoreMsg "none" + BusObjectLabelMismatch "warning" + RootOutportRequireBusObject "warning" + AssertControl "UseLocalSettings" + EnableOverflowDetection off + ModelReferenceIOMsg "none" + ModelReferenceMultiInstanceNormalModeStructChecksumCheck "error" + ModelReferenceVersionMismatchMessage "none" + ModelReferenceIOMismatchMessage "none" + ModelReferenceCSMismatchMessage "none" + UnknownTsInhSupMsg "warning" + ModelReferenceDataLoggingMessage "warning" + ModelReferenceSymbolNameMessage "warning" + ModelReferenceExtraNoncontSigs "error" + StateNameClashWarn "warning" + SimStateInterfaceChecksumMismatchMsg "warning" + SimStateOlderReleaseMsg "error" + InitInArrayFormatMsg "warning" + StrictBusMsg "ErrorLevel1" + BusNameAdapt "WarnAndRepair" + NonBusSignalsTreatedAsBus "none" + LoggingUnavailableSignals "error" + BlockIODiagnostic "none" + SFUnusedDataAndEventsDiag "warning" + SFUnexpectedBacktrackingDiag "warning" + SFInvalidInputDataAccessInChartInitDiag "warning" + SFNoUnconditionalDefaultTransitionDiag "warning" + SFTransitionOutsideNaturalParentDiag "warning" + SFUnconditionalTransitionShadowingDiag "warning" + SFUndirectedBroadcastEventsDiag "warning" + SFTransitionActionBeforeConditionDiag "warning" + } + Simulink.HardwareCC { + $ObjectID 12 + Version "1.14.2" + ProdBitPerChar 8 + ProdBitPerShort 16 + ProdBitPerInt 32 + ProdBitPerLong 32 + ProdBitPerLongLong 64 + ProdBitPerFloat 32 + ProdBitPerDouble 64 + ProdBitPerPointer 32 + ProdLargestAtomicInteger "Char" + ProdLargestAtomicFloat "None" + ProdIntDivRoundTo "Undefined" + ProdEndianess "Unspecified" + ProdWordSize 32 + ProdShiftRightIntArith on + ProdLongLongMode off + ProdHWDeviceType "32-bit Generic" + TargetBitPerChar 8 + TargetBitPerShort 16 + TargetBitPerInt 32 + TargetBitPerLong 32 + TargetBitPerLongLong 64 + TargetBitPerFloat 32 + TargetBitPerDouble 64 + TargetBitPerPointer 32 + TargetLargestAtomicInteger "Char" + TargetLargestAtomicFloat "None" + TargetShiftRightIntArith on + TargetLongLongMode off + TargetIntDivRoundTo "Undefined" + TargetEndianess "Unspecified" + TargetWordSize 32 + TargetTypeEmulationWarnSuppressLevel 0 + TargetPreprocMaxBitsSint 32 + TargetPreprocMaxBitsUint 32 + TargetHWDeviceType "Specified" + TargetUnknown off + ProdEqTarget on + } + Simulink.ModelReferenceCC { + $ObjectID 13 + Version "1.14.2" + UpdateModelReferenceTargets "IfOutOfDateOrStructuralChange" + CheckModelReferenceTargetMessage "error" + EnableParallelModelReferenceBuilds off + ParallelModelReferenceErrorOnInvalidPool on + ParallelModelReferenceMATLABWorkerInit "None" + ModelReferenceNumInstancesAllowed "Multi" + PropagateVarSize "Infer from blocks in model" + ModelReferencePassRootInputsByReference on + ModelReferenceMinAlgLoopOccurrences off + PropagateSignalLabelsOutOfModel off + SupportModelReferenceSimTargetCustomCode off + } + Simulink.SFSimCC { + $ObjectID 14 + Version "1.14.2" + SFSimEnableDebug on + SFSimOverflowDetection on + SFSimEcho on + SimBlas on + SimCtrlC on + SimExtrinsic on + SimIntegrity on + SimUseLocalCustomCode off + SimParseCustomCode on + SimBuildMode "sf_incremental_build" + SimGenImportedTypeDefs off + } + Simulink.RTWCC { + $BackupClass "Simulink.RTWCC" + $ObjectID 15 + Version "1.14.2" + Array { + Type "Cell" + Dimension 8 + Cell "IncludeHyperlinkInReport" + Cell "GenerateTraceInfo" + Cell "GenerateTraceReport" + Cell "GenerateTraceReportSl" + Cell "GenerateTraceReportSf" + Cell "GenerateTraceReportEml" + Cell "GenerateSLWebview" + Cell "GenerateCodeMetricsReport" + PropName "DisabledProps" + } + SystemTargetFile "grt.tlc" + TLCOptions "" + GenCodeOnly off + MakeCommand "make_rtw" + GenerateMakefile on + PackageGeneratedCodeAndArtifacts off + PackageName "" + TemplateMakefile "grt_default_tmf" + PostCodeGenCommand "" + Description "" + GenerateReport off + SaveLog off + RTWVerbose on + RetainRTWFile off + ProfileTLC off + TLCDebug off + TLCCoverage off + TLCAssert off + ProcessScriptMode "Default" + ConfigurationMode "Optimized" + ProcessScript "" + ConfigurationScript "" + ConfigAtBuild off + RTWUseLocalCustomCode off + RTWUseSimCustomCode off + CustomSourceCode "" + CustomHeaderCode "" + CustomInclude "" + CustomSource "" + CustomLibrary "" + CustomInitializer "" + CustomTerminator "" + Toolchain "Automatically locate an installed toolchain" + BuildConfiguration "Faster Builds" + IncludeHyperlinkInReport off + LaunchReport off + PortableWordSizes off + CreateSILPILBlock "None" + CodeExecutionProfiling off + CodeExecutionProfileVariable "executionProfile" + CodeProfilingSaveOptions "SummaryOnly" + CodeProfilingInstrumentation off + SILDebugging off + TargetLang "C" + IncludeBusHierarchyInRTWFileBlockHierarchyMap off + IncludeERTFirstTime off + GenerateTraceInfo off + GenerateTraceReport off + GenerateTraceReportSl off + GenerateTraceReportSf off + GenerateTraceReportEml off + GenerateCodeInfo off + GenerateWebview off + GenerateCodeMetricsReport off + GenerateCodeReplacementReport off + RTWCompilerOptimization "Off" + RTWCustomCompilerOptimizations "" + CheckMdlBeforeBuild "Off" + CustomRebuildMode "OnUpdate" + DataInitializer "" + SharedConstantsCachingThreshold 1024 + Array { + Type "Handle" + Dimension 2 + Simulink.CodeAppCC { + $ObjectID 16 + Version "1.14.2" + Array { + Type "Cell" + Dimension 21 + Cell "IgnoreCustomStorageClasses" + Cell "IgnoreTestpoints" + Cell "InsertBlockDesc" + Cell "InsertPolySpaceComments" + Cell "SFDataObjDesc" + Cell "MATLABFcnDesc" + Cell "SimulinkDataObjDesc" + Cell "DefineNamingRule" + Cell "SignalNamingRule" + Cell "ParamNamingRule" + Cell "InlinedPrmAccess" + Cell "CustomSymbolStr" + Cell "CustomSymbolStrGlobalVar" + Cell "CustomSymbolStrType" + Cell "CustomSymbolStrField" + Cell "CustomSymbolStrFcn" + Cell "CustomSymbolStrFcnArg" + Cell "CustomSymbolStrBlkIO" + Cell "CustomSymbolStrTmpVar" + Cell "CustomSymbolStrMacro" + Cell "ReqsInCode" + PropName "DisabledProps" + } + ForceParamTrailComments off + GenerateComments on + CommentStyle "Auto" + IgnoreCustomStorageClasses on + IgnoreTestpoints off + IncHierarchyInIds off + MaxIdLength 31 + PreserveName off + PreserveNameWithParent off + ShowEliminatedStatement off + OperatorAnnotations off + IncAutoGenComments off + SimulinkDataObjDesc off + SFDataObjDesc off + MATLABFcnDesc off + IncDataTypeInIds off + MangleLength 1 + CustomSymbolStrGlobalVar "$R$N$M" + CustomSymbolStrType "$N$R$M_T" + CustomSymbolStrField "$N$M" + CustomSymbolStrFcn "$R$N$M$F" + CustomSymbolStrFcnArg "rt$I$N$M" + CustomSymbolStrBlkIO "rtb_$N$M" + CustomSymbolStrTmpVar "$N$M" + CustomSymbolStrMacro "$R$N$M" + CustomSymbolStrUtil "$N$C" + DefineNamingRule "None" + ParamNamingRule "None" + SignalNamingRule "None" + InsertBlockDesc off + InsertPolySpaceComments off + SimulinkBlockComments on + MATLABSourceComments off + EnableCustomComments off + InternalIdentifier "Shortened" + InlinedPrmAccess "Literals" + ReqsInCode off + UseSimReservedNames off + } + Simulink.GRTTargetCC { + $BackupClass "Simulink.TargetCC" + $ObjectID 17 + Version "1.14.2" + Array { + Type "Cell" + Dimension 16 + Cell "GeneratePreprocessorConditionals" + Cell "IncludeMdlTerminateFcn" + Cell "CombineOutputUpdateFcns" + Cell "SuppressErrorStatus" + Cell "ERTCustomFileBanners" + Cell "GenerateSampleERTMain" + Cell "GenerateTestInterfaces" + Cell "ModelStepFunctionPrototypeControlCompliant" + Cell "CPPClassGenCompliant" + Cell "PortableWordSizes" + Cell "PurelyIntegerCode" + Cell "SupportComplex" + Cell "SupportAbsoluteTime" + Cell "SupportContinuousTime" + Cell "SupportNonInlinedSFcns" + Cell "GenerateAllocFcn" + PropName "DisabledProps" + } + TargetFcnLib "ansi_tfl_table_tmw.mat" + TargetLibSuffix "" + TargetPreCompLibLocation "" + GenFloatMathFcnCalls "NOT IN USE" + TargetLangStandard "C89/C90 (ANSI)" + CodeReplacementLibrary "None" + UtilityFuncGeneration "Auto" + ERTMultiwordTypeDef "System defined" + ERTMultiwordLength 256 + MultiwordLength 2048 + GenerateFullHeader on + GenerateSampleERTMain off + GenerateTestInterfaces off + ModelReferenceCompliant on + ParMdlRefBuildCompliant on + CompOptLevelCompliant on + ConcurrentExecutionCompliant on + IncludeMdlTerminateFcn on + GeneratePreprocessorConditionals "Disable all" + CombineOutputUpdateFcns off + CombineSignalStateStructs off + SuppressErrorStatus off + ERTFirstTimeCompliant off + IncludeFileDelimiter "Auto" + ERTCustomFileBanners off + SupportAbsoluteTime on + LogVarNameModifier "rt_" + MatFileLogging on + MultiInstanceERTCode off + CodeInterfacePackaging "Nonreusable function" + SupportNonFinite on + SupportComplex on + PurelyIntegerCode off + SupportContinuousTime on + SupportNonInlinedSFcns on + SupportVariableSizeSignals off + EnableShiftOperators on + ParenthesesLevel "Nominal" + MATLABClassNameForMDSCustomization "Simulink.SoftwareTarget.GRTCustomization" + ModelStepFunctionPrototypeControlCompliant off + CPPClassGenCompliant on + AutosarCompliant off + GRTInterface on + GenerateAllocFcn off + UseMalloc off + ExtMode off + ExtModeStaticAlloc off + ExtModeTesting off + ExtModeStaticAllocSize 1000000 + ExtModeTransport 0 + ExtModeMexFile "ext_comm" + ExtModeIntrfLevel "Level1" + RTWCAPISignals off + RTWCAPIParams off + RTWCAPIStates off + RTWCAPIRootIO off + GenerateASAP2 off + MultiInstanceErrorCode "Error" + } + PropName "Components" + } + } + hdlcoderui.hdlcc { + $ObjectID 18 + Version "1.14.2" + Description "HDL Coder custom configuration component" + Name "HDL Coder" + Array { + Type "Cell" + Dimension 1 + Cell "" + PropName "HDLConfigFile" + } + HDLCActiveTab "0" + } + PropName "Components" + } + Name "Configuration" + CurrentDlgPage "Solver" + ConfigPrmDlgPosition [ 243, 69, 1123, 699 ] + } + PropName "ConfigurationSets" + } + Simulink.ConfigSet { + $PropName "ActiveConfigurationSet" + $ObjectID 7 + } + Object { + $PropName "DataTransfer" + $ObjectID 19 + $ClassName "Simulink.GlobalDataTransfer" + DefaultTransitionBetweenSyncTasks "Ensure deterministic transfer (maximum delay)" + DefaultTransitionBetweenAsyncTasks "Ensure data integrity only" + DefaultTransitionBetweenContTasks "Ensure deterministic transfer (minimum delay)" + DefaultExtrapolationMethodBetweenContTasks "None" + AutoInsertRateTranBlk [0] + } + ExplicitPartitioning off + BlockDefaults { + ForegroundColor "black" + BackgroundColor "white" + DropShadow off + NamePlacement "normal" + FontName "Helvetica" + FontSize 10 + FontWeight "normal" + FontAngle "normal" + ShowName on + BlockRotation 0 + BlockMirror off + } + AnnotationDefaults { + HorizontalAlignment "center" + VerticalAlignment "middle" + ForegroundColor "black" + BackgroundColor "white" + DropShadow off + FontName "Helvetica" + FontSize 10 + FontWeight "normal" + FontAngle "normal" + UseDisplayTextAsClickCallback off + } + LineDefaults { + FontName "Helvetica" + FontSize 9 + FontWeight "normal" + FontAngle "normal" + } + MaskDefaults { + SelfModifiable "off" + IconFrame "on" + IconOpaque "on" + RunInitForIconRedraw "off" + IconRotate "none" + PortRotate "default" + IconUnits "autoscale" + } + MaskParameterDefaults { + Evaluate "on" + Tunable "on" + NeverSave "off" + Internal "off" + ReadOnly "off" + Enabled "on" + Visible "on" + ToolTip "on" + } + BlockParameterDefaults { + Block { + BlockType Demux + Outputs "4" + DisplayOption "none" + BusSelectionMode off + } + Block { + BlockType Derivative + CoefficientInTFapproximation "inf" + } + Block { + BlockType Fcn + Expr "sin(u[1])" + SampleTime "-1" + } + Block { + BlockType Inport + Port "1" + OutputFunctionCall off + OutMin "[]" + OutMax "[]" + OutDataTypeStr "Inherit: auto" + LockScale off + BusOutputAsStruct off + PortDimensions "-1" + VarSizeSig "Inherit" + SampleTime "-1" + SignalType "auto" + SamplingMode "auto" + LatchByDelayingOutsideSignal off + LatchInputForFeedbackSignals off + Interpolate on + } + Block { + BlockType Outport + Port "1" + OutMin "[]" + OutMax "[]" + OutDataTypeStr "Inherit: auto" + LockScale off + BusOutputAsStruct off + PortDimensions "-1" + VarSizeSig "Inherit" + SampleTime "-1" + SignalType "auto" + SamplingMode "auto" + SourceOfInitialOutputValue "Dialog" + OutputWhenDisabled "held" + InitialOutput "[]" + } + Block { + BlockType S-Function + FunctionName "system" + SFunctionModules "''" + PortCounts "[]" + SFunctionDeploymentMode off + } + Block { + BlockType SubSystem + ShowPortLabels "FromPortIcon" + Permissions "ReadWrite" + PermitHierarchicalResolution "All" + TreatAsAtomicUnit off + MinAlgLoopOccurrences off + PropExecContextOutsideSubsystem off + CheckFcnCallInpInsideContextMsg off + SystemSampleTime "-1" + RTWSystemCode "Auto" + RTWFcnNameOpts "Auto" + RTWFileNameOpts "Auto" + FunctionInterfaceSpec "void_void" + FunctionWithSeparateData off + RTWMemSecFuncInitTerm "Inherit from model" + RTWMemSecFuncExecute "Inherit from model" + RTWMemSecDataConstants "Inherit from model" + RTWMemSecDataInternal "Inherit from model" + RTWMemSecDataParameters "Inherit from model" + SimViewingDevice off + DataTypeOverride "UseLocalSettings" + DataTypeOverrideAppliesTo "AllNumericTypes" + MinMaxOverflowLogging "UseLocalSettings" + Opaque off + MaskHideContents off + SFBlockType "NONE" + Variant off + GeneratePreprocessorConditionals off + ContentPreviewEnabled off + } + Block { + BlockType Terminator + } + } + System { + Name "Cessna_6DOF_Wind_trim" + Location [-8, -8, 1374, 746] + Open off + ModelBrowserVisibility off + ModelBrowserWidth 200 + ScreenColor "white" + PaperOrientation "landscape" + PaperPositionMode "auto" + PaperType "A4" + PaperUnits "centimeters" + TiledPaperMargins [1.270000, 1.270000, 1.270000, 1.270000] + TiledPageScale 1 + ShowPageBoundaries off + ZoomFactor "100" + ReportName "simulink-default.rpt" + SIDHighWatermark "33" + Block { + BlockType Inport + Name "In1" + SID "18" + Position [910, 483, 940, 497] + ZOrder -1 + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "In2" + SID "19" + Position [910, 518, 940, 532] + ZOrder -2 + Port "2" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "In3" + SID "20" + Position [910, 553, 940, 567] + ZOrder -3 + Port "3" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "In4" + SID "21" + Position [910, 583, 940, 597] + ZOrder -4 + Port "4" + IconDisplay "Port number" + } + Block { + BlockType Reference + Name "6DoF Wind (Wind Angles)" + SID "1" + Ports [2, 10] + Position [335, 223, 535, 427] + ZOrder -5 + LibraryVersion "1.44" + SourceBlock "aerolibobsolete/6DoF Wind (Wind Angles)" + SourceType "6DoF EoM (Wind Axis)" + ContentPreviewEnabled off + units "Metric (MKS)" + mtype "Fixed" + rep "Wind Angles" + xme_0 "[x y z]" + Vm_0 "[V alpha beta]" + wind_0 "[0 0 0]" + pm_0 "[p q r]" + mass_0 "m" + mass_e "0.5" + mass_f "2.0" + inertia "diag([I_xx I_yy I_zz])" + inertia_e "eye(3)" + inertia_f "2*eye(3)" + } + Block { + BlockType Demux + Name "Demux" + SID "2" + Ports [1, 3] + Position [620, 236, 625, 274] + ZOrder -6 + ShowName off + Outputs "3" + DisplayOption "bar" + } + Block { + BlockType Demux + Name "Demux1" + SID "3" + Ports [1, 3] + Position [665, 256, 670, 294] + ZOrder -7 + ShowName off + Outputs "3" + DisplayOption "bar" + } + Block { + BlockType Demux + Name "Demux2" + SID "4" + Ports [1, 3] + Position [920, 356, 925, 394] + ZOrder -8 + ShowName off + Outputs "3" + DisplayOption "bar" + } + Block { + BlockType Demux + Name "Demux3" + SID "5" + Ports [1, 2] + Position [620, 336, 625, 374] + ZOrder -9 + ShowName off + Outputs "2" + DisplayOption "bar" + } + Block { + BlockType Derivative + Name "Derivative" + SID "6" + Position [905, 410, 935, 440] + ZOrder -10 + } + Block { + BlockType Fcn + Name "Fcn" + SID "7" + Position [675, 310, 735, 340] + ZOrder -11 + Expr "sin(u(1)*exp(2.3*(-u(2))))" + } + Block { + BlockType SubSystem + Name "MATLAB Function" + SID "8" + Ports [13, 2] + Position [975, 223, 1045, 437] + ZOrder -12 + LibraryVersion "1.32" + ErrorFcn "Stateflow.Translate.translate" + PermitHierarchicalResolution "ExplicitOnly" + TreatAsAtomicUnit on + RequestExecContextInheritance off + SFBlockType "MATLAB Function" + System { + Name "MATLAB Function" + Location [227, 345, 838, 789] + Open off + ModelBrowserVisibility off + ModelBrowserWidth 200 + ScreenColor "white" + PaperOrientation "landscape" + PaperPositionMode "auto" + PaperType "A4" + PaperUnits "centimeters" + TiledPaperMargins [1.270000, 1.270000, 1.270000, 1.270000] + TiledPageScale 1 + ShowPageBoundaries off + ZoomFactor "100" + SIDHighWatermark "33" + Block { + BlockType Inport + Name "alpha" + SID "8::1" + Position [20, 101, 40, 119] + ZOrder -1 + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "beta" + SID "8::18" + Position [20, 136, 40, 154] + ZOrder -2 + Port "2" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "gamma" + SID "8::19" + Position [20, 171, 40, 189] + ZOrder -3 + Port "3" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "mu" + SID "8::20" + Position [20, 206, 40, 224] + ZOrder -4 + Port "4" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "p" + SID "8::21" + Position [20, 246, 40, 264] + ZOrder -5 + Port "5" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "q" + SID "8::22" + Position [20, 281, 40, 299] + ZOrder -6 + Port "6" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "r" + SID "8::23" + Position [20, 316, 40, 334] + ZOrder -7 + Port "7" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "V" + SID "8::24" + Position [20, 351, 40, 369] + ZOrder -8 + Port "8" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "alpha_dot" + SID "8::25" + Position [20, 386, 40, 404] + ZOrder -9 + Port "9" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "delta_e" + SID "8::27" + Position [20, 426, 40, 444] + ZOrder -10 + Port "10" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "delta_a" + SID "8::28" + Position [20, 461, 40, 479] + ZOrder -11 + Port "11" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "delta_r" + SID "8::29" + Position [20, 496, 40, 514] + ZOrder -12 + Port "12" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "thrust" + SID "8::30" + Position [20, 531, 40, 549] + ZOrder -13 + Port "13" + IconDisplay "Port number" + } + Block { + BlockType Demux + Name " Demux " + SID "8::32" + Ports [1, 1] + Position [270, 230, 320, 270] + ZOrder 2 + Outputs "1" + } + Block { + BlockType S-Function + Name " SFunction " + SID "8::31" + Tag "Stateflow S-Function Cessna_6DOF_Wind_trim 2" + Ports [13, 3] + Position [180, 90, 230, 370] + ZOrder 1 + FunctionName "sf_sfun" + PortCounts "[13 3]" + EnableBusSupport on + Port { + PortNumber 2 + Name "F" + RTWStorageClass "Auto" + DataLoggingNameMode "SignalName" + } + Port { + PortNumber 3 + Name "M" + RTWStorageClass "Auto" + DataLoggingNameMode "SignalName" + } + } + Block { + BlockType Terminator + Name " Terminator " + SID "8::33" + Position [460, 241, 480, 259] + ZOrder 3 + } + Block { + BlockType Outport + Name "F" + SID "8::5" + Position [460, 101, 480, 119] + ZOrder -17 + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "M" + SID "8::26" + Position [460, 136, 480, 154] + ZOrder -18 + Port "2" + IconDisplay "Port number" + } + Line { + ZOrder 18 + SrcBlock "alpha" + SrcPort 1 + DstBlock " SFunction " + DstPort 1 + } + Line { + ZOrder 19 + SrcBlock "beta" + SrcPort 1 + DstBlock " SFunction " + DstPort 2 + } + Line { + ZOrder 20 + SrcBlock "gamma" + SrcPort 1 + DstBlock " SFunction " + DstPort 3 + } + Line { + ZOrder 21 + SrcBlock "mu" + SrcPort 1 + DstBlock " SFunction " + DstPort 4 + } + Line { + ZOrder 22 + SrcBlock "p" + SrcPort 1 + DstBlock " SFunction " + DstPort 5 + } + Line { + ZOrder 23 + SrcBlock "q" + SrcPort 1 + DstBlock " SFunction " + DstPort 6 + } + Line { + ZOrder 24 + SrcBlock "r" + SrcPort 1 + DstBlock " SFunction " + DstPort 7 + } + Line { + ZOrder 25 + SrcBlock "V" + SrcPort 1 + DstBlock " SFunction " + DstPort 8 + } + Line { + ZOrder 26 + SrcBlock "alpha_dot" + SrcPort 1 + DstBlock " SFunction " + DstPort 9 + } + Line { + ZOrder 27 + SrcBlock "delta_e" + SrcPort 1 + DstBlock " SFunction " + DstPort 10 + } + Line { + ZOrder 28 + SrcBlock "delta_a" + SrcPort 1 + DstBlock " SFunction " + DstPort 11 + } + Line { + ZOrder 29 + SrcBlock "delta_r" + SrcPort 1 + DstBlock " SFunction " + DstPort 12 + } + Line { + ZOrder 30 + SrcBlock "thrust" + SrcPort 1 + DstBlock " SFunction " + DstPort 13 + } + Line { + Name "F" + ZOrder 31 + Labels [0, 0] + SrcBlock " SFunction " + SrcPort 2 + DstBlock "F" + DstPort 1 + } + Line { + Name "M" + ZOrder 32 + Labels [0, 0] + SrcBlock " SFunction " + SrcPort 3 + DstBlock "M" + DstPort 1 + } + Line { + ZOrder 33 + SrcBlock " Demux " + SrcPort 1 + DstBlock " Terminator " + DstPort 1 + } + Line { + ZOrder 34 + SrcBlock " SFunction " + SrcPort 1 + DstBlock " Demux " + DstPort 1 + } + } + } + Block { + BlockType Terminator + Name "Terminator" + SID "13" + Position [565, 225, 585, 245] + ZOrder -13 + } + Block { + BlockType Terminator + Name "Terminator1" + SID "14" + Position [565, 285, 585, 305] + ZOrder -14 + } + Block { + BlockType Terminator + Name "Terminator2" + SID "15" + Position [565, 405, 585, 425] + ZOrder -15 + } + Block { + BlockType Terminator + Name "Terminator3" + SID "16" + Position [610, 385, 630, 405] + ZOrder -16 + } + Block { + BlockType Terminator + Name "Terminator4" + SID "17" + Position [565, 345, 585, 365] + ZOrder -17 + } + Block { + BlockType Outport + Name "Out1" + SID "22" + Position [910, 113, 940, 127] + ZOrder -18 + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "Out2" + SID "23" + Position [910, 143, 940, 157] + ZOrder -19 + Port "2" + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "Out3" + SID "24" + Position [910, 173, 940, 187] + ZOrder -20 + Port "3" + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "Out4" + SID "25" + Position [655, 113, 685, 127] + ZOrder -21 + Port "4" + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "Out5" + SID "26" + Position [655, 143, 685, 157] + ZOrder -22 + Port "5" + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "Out6" + SID "27" + Position [655, 173, 685, 187] + ZOrder -23 + Port "6" + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "Out7" + SID "28" + Position [705, 113, 735, 127] + ZOrder -24 + Port "7" + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "Out8" + SID "29" + Position [705, 143, 735, 157] + ZOrder -25 + Port "8" + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "Out9" + SID "30" + Position [705, 173, 735, 187] + ZOrder -26 + Port "9" + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "Out10" + SID "31" + Position [775, 483, 805, 497] + ZOrder -27 + Port "10" + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "Out11" + SID "32" + Position [775, 513, 805, 527] + ZOrder -28 + Port "11" + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "Out12" + SID "33" + Position [775, 543, 805, 557] + ZOrder -29 + Port "12" + IconDisplay "Port number" + } + Line { + ZOrder 1 + SrcBlock "MATLAB Function" + SrcPort 1 + Points [0, -65; -730, 0] + DstBlock "6DoF Wind (Wind Angles)" + DstPort 1 + } + Line { + ZOrder 2 + SrcBlock "MATLAB Function" + SrcPort 2 + Points [0, 65; -730, 0] + DstBlock "6DoF Wind (Wind Angles)" + DstPort 2 + } + Line { + ZOrder 3 + SrcBlock "6DoF Wind (Wind Angles)" + SrcPort 2 + DstBlock "Demux" + DstPort 1 + } + Line { + ZOrder 4 + SrcBlock "6DoF Wind (Wind Angles)" + SrcPort 1 + DstBlock "Terminator" + DstPort 1 + } + Line { + ZOrder 5 + SrcBlock "6DoF Wind (Wind Angles)" + SrcPort 3 + DstBlock "Demux1" + DstPort 1 + } + Line { + ZOrder 6 + SrcBlock "6DoF Wind (Wind Angles)" + SrcPort 4 + DstBlock "Terminator1" + DstPort 1 + } + Line { + ZOrder 7 + SrcBlock "6DoF Wind (Wind Angles)" + SrcPort 10 + DstBlock "Terminator2" + DstPort 1 + } + Line { + ZOrder 8 + SrcBlock "6DoF Wind (Wind Angles)" + SrcPort 9 + DstBlock "Terminator3" + DstPort 1 + } + Line { + ZOrder 9 + SrcBlock "6DoF Wind (Wind Angles)" + SrcPort 8 + DstBlock "Demux2" + DstPort 1 + } + Line { + ZOrder 10 + SrcBlock "6DoF Wind (Wind Angles)" + SrcPort 7 + DstBlock "Terminator4" + DstPort 1 + } + Line { + ZOrder 11 + SrcBlock "6DoF Wind (Wind Angles)" + SrcPort 6 + Points [65, 0] + DstBlock "Demux3" + DstPort 1 + } + Line { + ZOrder 12 + SrcBlock "Demux3" + SrcPort 1 + Points [165, 0] + Branch { + ZOrder 13 + Points [0, 80] + DstBlock "Derivative" + DstPort 1 + } + Branch { + ZOrder 14 + Points [0, -120] + Branch { + ZOrder 15 + Points [165, 0] + DstBlock "MATLAB Function" + DstPort 1 + } + Branch { + ZOrder 16 + Points [0, -75] + DstBlock "Out2" + DstPort 1 + } + } + } + Line { + ZOrder 17 + SrcBlock "Demux2" + SrcPort 1 + Points [15, 0; 0, -65] + Branch { + ZOrder 18 + DstBlock "MATLAB Function" + DstPort 5 + } + Branch { + ZOrder 19 + Points [-185, 0] + DstBlock "Out10" + DstPort 1 + } + } + Line { + ZOrder 20 + SrcBlock "Demux2" + SrcPort 2 + Points [25, 0; 0, -60] + Branch { + ZOrder 21 + DstBlock "MATLAB Function" + DstPort 6 + } + Branch { + ZOrder 22 + Points [-195, 0] + DstBlock "Out11" + DstPort 1 + } + } + Line { + ZOrder 23 + SrcBlock "Demux2" + SrcPort 3 + Points [30, 0; 0, -55] + Branch { + ZOrder 24 + DstBlock "MATLAB Function" + DstPort 7 + } + Branch { + ZOrder 25 + Points [-200, 0] + DstBlock "Out12" + DstPort 1 + } + } + Line { + ZOrder 26 + SrcBlock "Demux3" + SrcPort 2 + Points [285, 0; 0, -115] + Branch { + ZOrder 27 + Points [45, 0] + DstBlock "MATLAB Function" + DstPort 2 + } + Branch { + ZOrder 28 + Points [-20, 0] + DstBlock "Out3" + DstPort 1 + } + } + Line { + ZOrder 29 + SrcBlock "Demux1" + SrcPort 1 + Points [15, 0] + Branch { + ZOrder 30 + Points [270, 0] + DstBlock "MATLAB Function" + DstPort 4 + } + Branch { + ZOrder 31 + DstBlock "Out7" + DstPort 1 + } + } + Line { + ZOrder 32 + SrcBlock "Demux1" + SrcPort 2 + Points [285, 0] + DstBlock "MATLAB Function" + DstPort 3 + } + Line { + ZOrder 33 + SrcBlock "6DoF Wind (Wind Angles)" + SrcPort 5 + Points [0, 10] + DstBlock "Fcn" + DstPort 1 + } + Line { + ZOrder 34 + SrcBlock "Fcn" + SrcPort 1 + Points [30, 0] + Branch { + ZOrder 35 + Points [115, 0; 0, 20] + DstBlock "MATLAB Function" + DstPort 8 + } + Branch { + ZOrder 36 + Points [0, -205] + DstBlock "Out1" + DstPort 1 + } + } + Line { + ZOrder 37 + SrcBlock "Derivative" + SrcPort 1 + Points [20, 0] + DstBlock "MATLAB Function" + DstPort 9 + } + Line { + ZOrder 38 + SrcBlock "In1" + SrcPort 1 + Points [15, 0] + DstBlock "MATLAB Function" + DstPort 10 + } + Line { + ZOrder 39 + SrcBlock "In2" + SrcPort 1 + Points [15, 0] + DstBlock "MATLAB Function" + DstPort 11 + } + Line { + ZOrder 40 + SrcBlock "In3" + SrcPort 1 + Points [15, 0] + DstBlock "MATLAB Function" + DstPort 12 + } + Line { + ZOrder 41 + SrcBlock "In4" + SrcPort 1 + Points [15, 0] + DstBlock "MATLAB Function" + DstPort 13 + } + Line { + ZOrder 42 + SrcBlock "Demux" + SrcPort 1 + Points [10, 0] + DstBlock "Out4" + DstPort 1 + } + Line { + ZOrder 43 + SrcBlock "Demux" + SrcPort 2 + Points [10, 0] + DstBlock "Out5" + DstPort 1 + } + Line { + ZOrder 44 + SrcBlock "Demux" + SrcPort 3 + Points [10, 0] + DstBlock "Out6" + DstPort 1 + } + Line { + ZOrder 45 + SrcBlock "Demux1" + SrcPort 3 + Points [15, 0; 0, -105] + Branch { + ZOrder 46 + DstBlock "Out9" + DstPort 1 + } + Branch { + ZOrder 47 + DstBlock "Out8" + DstPort 1 + } + } + } +} +#Finite State Machines +# +# Stateflow Version 8.1 (R2014a) dated Feb 8 2014, 02:29:12 +# +# +Stateflow { + machine { + id 1 + name "Cessna_6DOF_Wind_trim" + created "23-Dec-2014 15:02:14" + isLibrary 0 + firstTarget 22 + sfVersion 76014001.002 + } + chart { + id 2 + name "MATLAB Function" + windowPosition [421 52 213 385] + viewLimits [0 156.75 0 153.75] + screen [1 1 1366 768 1.333333333333333] + treeNode [0 3 0 0] + firstTransition 20 + firstJunction 19 + viewObj 2 + visible 1 + machine 1 + subviewS { + } + ssIdHighWaterMark 18 + decomposition CLUSTER_CHART + type EML_CHART + firstData 4 + chartFileNumber 2 + disableImplicitCasting 1 + eml { + name "Force_Cessna" + } + } + state { + id 3 + labelString "eML_blk_kernel()" + position [18 64.5 118 66] + fontSize 12 + chart 2 + treeNode [2 0 0 0] + superState SUBCHART + subviewer 2 + ssIdNumber 1 + type FUNC_STATE + decomposition CLUSTER_STATE + eml { + isEML 1 + script "function [F, M] = Force_Cessna(alpha, beta, gamma, mu, p, q, r, V, alpha_dot, delta_e, delta_a, d" + "elta_r, thrust)\n\ng = 9.8;\nrho = 1.225;\n\nm = 1043.26;\nC_bar = 1.493;\nb = 10.911;\nS_ref = 16.1651;\n\nC_L_" + "0 = 0.25;\nC_L_alpha = 4.47;\nC_L_q = 1.7;\nC_L_delta_e = 0.3476;\n\nC_D_0 = 0.036;\nC_D_alpha = 0.13;\nC_D_beta" + " = 0.17;\nC_D_delta_e = 0.06;\n\nC_Y_beta = -0.31;\nC_Y_p = -0.037;\nC_Y_r = 0.21;\nC_Y_delta_a = 0;\n\nC_l_beta" + " = -0.089;\nC_l_p = -0.47;\nC_l_r = 0.096;\nC_l_delta_a = -0.09;\nC_l_delta_r = 0.0147;\n\nC_M_0 = -0.02;\nC_M_a" + "lpha = -1.8;\nC_M_alpha_dot = -12.4;\nC_M_delta_e = -1.28;\n\nC_N_beta = 0.065;\nC_N_p = -0.03;\nC_N_r = -0.99;\n" + "C_N_delta_a = -0.0053;\nC_N_delta_r = -0.0657;\n\n% delta_e = -0.0304;\n% delta_a = 0;\n% delta_r = 0;\n% thrust" + " = 1397;\n\nC_L = C_L_0 + C_L_alpha*alpha + C_L_q*(q*C_bar/(2*V)) + C_L_delta_e*delta_e;\nC_D = C_D_0 + C_D_alph" + "a*abs(alpha) + C_D_beta*abs(beta) + C_D_delta_e*abs(delta_e);\nC_Y = C_Y_beta*beta + C_Y_p*(p*b/(2*V)) + C_Y_r*(" + "r*b/(2*V)) + C_Y_delta_a*delta_a;\n\nC_l = C_l_beta*beta + C_l_p*(p*b/(2*V)) + C_l_r*(r*b/(2*V)) + C_l_delta_a*d" + "elta_a + C_l_delta_r*delta_r;\nC_M = C_M_0 + C_M_alpha*alpha + C_M_alpha_dot*(alpha_dot*C_bar/(2*V)) + C_M_delta" + "_e*delta_e;\nC_N = C_N_beta*beta + C_N_p*(p*b/(2*V)) + C_N_r*(r*b/(2*V)) + C_N_delta_a*delta_a + C_N_delta_r*del" + "ta_r;\n\nF = zeros(3,1);\nM = zeros(3,1);\n\nq_bar = 0.5*rho*V*V;\n\nF(1,1) = q_bar*S_ref*(-C_D*cos(beta) + C_Y*" + "sin(beta)) - m*g*sin(gamma) + thrust*cos(alpha)*cos(beta);\nF(2,1) = q_bar*S_ref*(C_D*sin(beta) + C_Y*sin(beta))" + " - m*g*cos(gamma)*sin(mu) - thrust*cos(alpha)*sin(beta);\nF(3,1) = q_bar*S_ref*(-C_L) + m*g*cos(gamma)*cos(mu) -" + " thrust*sin(alpha);\n\nM(1,1) = q_bar*S_ref*b*C_l;\nM(2,1) = q_bar*S_ref*C_bar*C_M;\nM(3,1) = q_bar*S_ref*b*C_N;" + editorLayout "100 M4x1[205 227 1382 754]" + } + } + data { + id 4 + ssIdNumber 4 + name "alpha" + linkNode [2 0 5] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + } + complexity SF_COMPLEX_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 5 + ssIdNumber 5 + name "F" + linkNode [2 4 6] + scope OUTPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_NO + } + dataType "Inherit: Same as Simulink" + } + data { + id 6 + ssIdNumber 6 + name "beta" + linkNode [2 5 7] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 7 + ssIdNumber 7 + name "gamma" + linkNode [2 6 8] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 8 + ssIdNumber 8 + name "mu" + linkNode [2 7 9] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 9 + ssIdNumber 9 + name "p" + linkNode [2 8 10] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 10 + ssIdNumber 10 + name "q" + linkNode [2 9 11] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 11 + ssIdNumber 11 + name "r" + linkNode [2 10 12] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 12 + ssIdNumber 12 + name "V" + linkNode [2 11 13] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 13 + ssIdNumber 13 + name "alpha_dot" + linkNode [2 12 14] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 14 + ssIdNumber 14 + name "M" + linkNode [2 13 15] + scope OUTPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_NO + } + dataType "Inherit: Same as Simulink" + } + data { + id 15 + ssIdNumber 15 + name "delta_e" + linkNode [2 14 16] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 16 + ssIdNumber 16 + name "delta_a" + linkNode [2 15 17] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 17 + ssIdNumber 17 + name "delta_r" + linkNode [2 16 18] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + data { + id 18 + ssIdNumber 18 + name "thrust" + linkNode [2 17 0] + scope INPUT_DATA + machine 1 + props { + array { + size "-1" + } + type { + method SF_INHERITED_TYPE + primitive SF_DOUBLE_TYPE + isSigned 1 + wordLength "16" + } + complexity SF_COMPLEX_INHERITED + frame SF_FRAME_INHERITED + } + dataType "Inherit: Same as Simulink" + } + junction { + id 19 + position [23.5747 49.5747 7] + chart 2 + linkNode [2 0 0] + subviewer 2 + ssIdNumber 3 + type CONNECTIVE_JUNCTION + } + transition { + id 20 + labelString "{eML_blk_kernel();}" + labelPosition [36.125 25.875 102.544 14.964] + fontSize 12 + src { + intersection [0 0 1 0 23.5747 14.625 0 0] + } + dst { + id 19 + intersection [1 0 -1 0 23.5747 42.5747 0 0] + } + midPoint [23.5747 24.9468] + chart 2 + linkNode [2 0 0] + dataLimits [21.175 25.975 14.625 42.575] + subviewer 2 + drawStyle SMART + slide { + sticky BOTH_STICK + } + executionOrder 1 + ssIdNumber 2 + } + instance { + id 21 + name "MATLAB Function" + machine 1 + chart 2 + } + target { + id 22 + name "sfun" + description "Default Simulink S-Function Target." + machine 1 + linkNode [1 0 0] + } +} diff --git a/Prof_Arya/Cessna_6DOF_sfun.mexw64 b/Prof_Arya/Cessna_6DOF_sfun.mexw64 new file mode 100644 index 0000000..e69de29 diff --git a/Prof_Arya/Cessna_6DOF_trim_ha.slx b/Prof_Arya/Cessna_6DOF_trim_ha.slx new file mode 100644 index 0000000..77111ea Binary files /dev/null and b/Prof_Arya/Cessna_6DOF_trim_ha.slx differ diff --git a/Prof_Arya/Comp_LinMod.m b/Prof_Arya/Comp_LinMod.m new file mode 100644 index 0000000..861e759 --- /dev/null +++ b/Prof_Arya/Comp_LinMod.m @@ -0,0 +1,32 @@ +[A, B, C, D] = linmod('Cessna_6DOF_trim'); + +A = [A(1,1) A(1,3) A(1,5) A(1,11); + A(3,1) A(3,3) A(3,5) A(3,11); + A(5,1) A(5,3) A(5,5) A(5,11); + A(11,1) A(11,3) A(11,5) A(11,11)]; + +B = [B(1,1) B(1,4); + B(3,1) B(3,4); + B(5,1) B(5,4); + B(11,1) B(11,4)]; + +X(1:4,1) = [u, w, theta, q]; + +for kk = 1:10/0.001 + + X(:,kk+1) = X(:,kk) + (A*(X(:,kk) - X(:,1)) + B*[(U(kk,1) + 0.0303) 0]')*0.001; + +end + +plot(X(1,:)) +hold on +plot(V_arr.*cos(alpha_arr),'--') +legend('Linearized','Nonlinear') +xlabel('u (m/s)') + +figure +plot(X(2,:)) +hold on +plot(alpha_arr*180/pi,'--') +legend('Linearized','Nonlinear') +xlabel('alpha (degree)') \ No newline at end of file diff --git a/Prof_Arya/Initial_Cessna.m b/Prof_Arya/Initial_Cessna.m new file mode 100644 index 0000000..3fd510d --- /dev/null +++ b/Prof_Arya/Initial_Cessna.m @@ -0,0 +1,93 @@ +clear all +close all +clc + +global C_L_0 C_L_alpha C_L_q C_L_delta_e +global C_D_0 C_D_alpha C_D_beta C_D_delta_e k +global C_Y_beta C_Y_p C_Y_r C_Y_delta_a +global C_l_beta C_l_p C_l_r C_l_delta_a C_l_delta_r +global C_M_0 C_M_alpha C_M_alpha_dot C_M_delta_e +global C_N_beta C_N_p C_N_r C_N_delta_a C_N_delta_r + +global m C_bar b S_ref +global I_xx I_yy I_zz I_xy I_yz I_xz + +g = 9.8; +rho = 1.225; + +m = 1043.26; +C_bar = 1.493; +b = 10.911; +S_ref = 16.1651; + +I_xx = 1285.31; +I_yy = 1824.93; +I_zz = 2666.893; +I_xz = 0; +I_yz = 0; +I_xy = 0; + +C_L_0 = 0.25; +C_L_alpha = 4.47; +C_L_q = 1.7; +C_L_delta_e = 0.3476; + +C_D_0 = 0.036; +k = 0.3; +% C_D_alpha = 0.13; +% C_D_beta = 0.17; +% C_D_delta_e = 0.06; + +C_Y_beta = -0.31; +C_Y_p = -0.037; +C_Y_r = 0.21; +C_Y_delta_a = 0; + +C_l_beta = -0.089; +C_l_p = -0.47; +C_l_r = 0.096; +C_l_delta_a = -0.09; +C_l_delta_r = 0.0147; + +C_M_0 = -0.02; +C_M_alpha = -1.8; +C_M_alpha_dot = -12.4; +C_M_delta_e = -1.28; + +C_N_beta = 0.065; +C_N_p = -0.03; +C_N_r = -0.99; +C_N_delta_a = -0.0053; +C_N_delta_r = -0.0657; + +V_trim = 60; +V = 60; + +alpha_delta_e_thrust = fsolve(@Trim_Cessna_Body, [0.035 -0.065 1500]); + +alpha = alpha_delta_e_thrust(1,1); +delta_e = alpha_delta_e_thrust(1,2); +thrust = alpha_delta_e_thrust(1,3); + +x = 0; +y = 0; +z = 0; + +delta_a = 0; +delta_r = 0; +beta = 0; + +u = V_trim*cos(alpha)*cos(beta); +v = V_trim*sin(beta); +w = V_trim*sin(alpha)*cos(beta); + +phi = 0; +theta = alpha; +psi = 0; + +p = 0; +q = 0; +r = 0; + +statenames = getstatenames('Cessna_6DOF_trim_ha'); +display(statenames) \ No newline at end of file diff --git a/Prof_Arya/Linearisation_LinMod.m b/Prof_Arya/Linearisation_LinMod.m new file mode 100644 index 0000000..05123d9 --- /dev/null +++ b/Prof_Arya/Linearisation_LinMod.m @@ -0,0 +1,16 @@ +[A, B, C, D] = linmod('Cessna_6DOF_Wind_trim'); % V gamma q alpha + +A_lon = [A(1,1) A(1,8) A(1,11) A(1,2); + A(8,1) A(8,8) A(8,11) A(8,2); + A(11,1) A(11,8) A(11,11) A(11,2); + A(2,1) A(2,8) A(2,11) A(2,2)]; + +A_phug = [A(1,1) A(1,8); + A(8,1) A(8,8)]; + +A_short = [A(11,11) A(11,2); + A(2,11) A(2,2)]; + +%display(eig(A_lon)) +%display(eig(A_phug)) +%display(eig(A_short)) \ No newline at end of file diff --git a/Prof_Arya/Trim_Cessna_Body.m b/Prof_Arya/Trim_Cessna_Body.m new file mode 100644 index 0000000..79be1d0 --- /dev/null +++ b/Prof_Arya/Trim_Cessna_Body.m @@ -0,0 +1,28 @@ +function F = Trim_Cessna_Body(x) + +m = 1043.26; +S_ref = 16.1651; +d = 1.225; +V = 60; +g = 9.8; + +C_L_0 = 0.25; +C_L_alpha = 4.47; +C_L_delta_e = 0.3476; + +C_D_0 = 0.036; +C_D_alpha = 0.13; +C_D_delta_e = 0.06; + +C_M_0 = -0.02; +C_M_alpha = -1.8; +C_M_delta_e = -1.28; + +C_L = C_L_0 + C_L_alpha*x(1) + C_L_delta_e*x(2); +% C_D = C_D_0 + C_D_alpha*abs(x(1)) + C_D_delta_e*abs(x(2)); +C_D = C_D_0 + 0.3*C_L^2; +C_M = C_M_0 + C_M_alpha*x(1) + C_M_delta_e*x(2); + +F = [C_M; + 0.5*d*V*V*S_ref*(-C_D*cos(x(1)) + C_L*sin(x(1))) - m*g*sin(x(1)) + x(3); + 0.5*d*V*V*S_ref*(-C_D*sin(x(1)) - C_L*cos(x(1))) + m*g*cos(x(1))]; \ No newline at end of file diff --git a/Prof_Arya/Trim_Function_Cessna.m b/Prof_Arya/Trim_Function_Cessna.m new file mode 100644 index 0000000..dea77e3 --- /dev/null +++ b/Prof_Arya/Trim_Function_Cessna.m @@ -0,0 +1,26 @@ + % u v w phi theta psi x y z p q r + % 1 2 3 4 5 6 7 8 9 10 11 12 +X_Guess = [60 0 0 0 0 0 0 0 0 0 0 0]'; + + % e a r thrust + % 1 2 3 4 +U_guess = [0 0 0 1000]'; + + % V alpha beta phi theta psi x y z p q r gamma + % 1 2 3 4 5 6 7 8 9 10 11 12 13 +Y_guess = [60 0 0 0 0 0 0 0 0 0 0 0 0]'; + +Dx_guess = [0 0 0 0 0 0 0 0 0 0 0 0]'; + +Ix = [2 4 6 10 11 12]'; +Iu = [2 3]'; +Iy = [1 3 4 6 10 11 12 13]'; + +Idx = [1 2 3 4 5 6 8 9 10 11 12]'; + +[x1,u1,y1,dx1] = trim('Cessna_6DOF_trim',X_Guess,U_guess,Y_guess,Ix,Iu,Iy,Dx_guess,Idx); + +display(x1) +display(y1) +display(u1) +display(dx1) \ No newline at end of file diff --git a/Prof_Arya/[Content_Types].xml b/Prof_Arya/[Content_Types].xml new file mode 100644 index 0000000..91db7d6 --- /dev/null +++ b/Prof_Arya/[Content_Types].xml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/Prof_Arya/_rels/.rels b/Prof_Arya/_rels/.rels new file mode 100644 index 0000000..2269369 --- /dev/null +++ b/Prof_Arya/_rels/.rels @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/Prof_Arya/getstatenames.m b/Prof_Arya/getstatenames.m new file mode 100644 index 0000000..a98493f --- /dev/null +++ b/Prof_Arya/getstatenames.m @@ -0,0 +1,47 @@ +function [statenames, stateblocks] = getstatenames(mdl) +%% GETSTATENAMES +% +% This function will identify the states of a given simulink model. A mapping +% to blockname will be assumed for this example. It is up to the user to map +% states as they would wish or simply to use Simulink's definition of full block +% path if they would like. +% +% Simulink uses full block path as a manner to assure uniqueness, allow +% for scalability, and always have clear meaning. It is realized that +% long block paths can result from large, highly nested models, +% yet if automated scripting is used for manipulation, then +% this is seen as an effective, consistant, and error resistant approach. +% Especially when combined with a user defined mapping to things that are +% shorter and can comply with company model styleguides and conventions. +% +% This file will additionally remove any new line characters in the +% statename and blockpath. + +% Copyright 2004 - 2010 The MathWorks, Inc. + +%% Extract State Information +% extract the state information (see +% for more info) +% This is one main command that can be leveraged by users in their own +% scripts. If you walk away with anything remember this one, and bookmark +% the above page in your help browsers. +% +% It is important to realize that Simulink uses complete block path +% to identify unique states within a Simulink model. It is the stateblocks +% variable that is returned by the following command the shows what +% Simulink sees as the continuous and discrete states in a model. +[sys,x0,stateblocks]=feval(mdl,[],[],[],0); + +%% Example of State Mapping to Block Name +% Here is one example of user defined state mapping. +% Let's extract the block name from the handle to the block +% This assumes you name the block what you would name the state. Also note +% that this may not be unique (ie blocks with state within libraries will all +% return the same thing for each instance). +statenames = get_param(stateblocks,'Name'); + +%% Remove New Linesn within names +% lets remove the newline characters for ease on the eyes +statenames = regexprep(statenames,'\n',' '); +stateblocks = regexprep(stateblocks,'\n',' '); + diff --git a/Prof_Arya/lineariz.zip b/Prof_Arya/lineariz.zip new file mode 100644 index 0000000..8da4868 Binary files /dev/null and b/Prof_Arya/lineariz.zip differ diff --git a/Prof_Arya/metadata/coreProperties.xml b/Prof_Arya/metadata/coreProperties.xml new file mode 100644 index 0000000..3383789 --- /dev/null +++ b/Prof_Arya/metadata/coreProperties.xml @@ -0,0 +1 @@ +Model2014-12-18T10:03:47ZPranavProf.H.Arya2016-04-20T12:05:18Z1.107R2012b \ No newline at end of file diff --git a/Prof_Arya/metadata/thumbnail.png b/Prof_Arya/metadata/thumbnail.png new file mode 100644 index 0000000..976194d Binary files /dev/null and b/Prof_Arya/metadata/thumbnail.png differ diff --git a/Prof_Arya/simulink/blockdiagram.xml b/Prof_Arya/simulink/blockdiagram.xml new file mode 100644 index 0000000..500a237 --- /dev/null +++ b/Prof_Arya/simulink/blockdiagram.xml @@ -0,0 +1,1840 @@ + + + + +

4

+ +

+

In1

+
+ +

+

In2

+
+ +

+

In3

+
+ +

+

In4

+
+

13

+ +

+

off

+

Out1

+
+ +

+

off

+

Out2

+
+ +

+

off

+

Out3

+
+ +

+

off

+

Out4

+
+ +

+

off

+

Out5

+
+ +

+

off

+

Out6

+
+ +

+

off

+

Out7

+
+ +

+

off

+

Out8

+
+ +

+

off

+

Out9

+
+ +

+

off

+

Out10

+
+ +

+

off

+

Out11

+
+ +

+

off

+

Out12

+
+ +

+

off

+

Out13

+
+

+

1.107

+

0

+

0

+
+

windows-1252

+ + + HDLSubsystem + Cessna_6DOF_trim + + +

on

+

0.035000

+

on

+

off

+

UseLocalSettings

+

AllNumericTypes

+

UseLocalSettings

+

Overwrite

+

Run 1

+

120

+ + +

1

+

[-8.0, -8.0, 1378.0, 754.0]

+ +

0

+

Left

+

50

+

50

+

9

+
+ +

1

+
+ +

1

+

SimulinkTopLevel

+

0

+

[1326.0, 578.0]

+

1.0

+

[0.0, 0.0]

+
+
+
+ +

UpdateHistoryNever

+

%<Auto>

+

%<Auto>

+

383054472

+

1.%<AutoIncrement:107>

+

none

+
+ +

off

+

off

+

none

+

off

+

off

+

off

+

off

+

on

+

off

+

off

+

on

+

on

+

on

+

off

+

off

+

on

+

off

+

off

+

off

+

on

+

on

+

off

+

off

+
+ +

normal

+

none

+

off

+

MATLABWorkspace

+

accel.tlc

+

accel_default_tmf

+

make_rtw

+

off

+ +

Cessna_6DOF_trim_ha

+

[]

+

0.0

+ + Cessna_6DOF_trim_ha + + + [] + +
+
+ +

off

+

/

+

covdata

+

dw

+

off

+

on

+

on

+

on

+

on

+

covCumulativeData

+

off

+

on

+

Off

+

off

+
+ +

off

+

on

+

manual

+

normal

+

1

+

any

+

1000

+

auto

+

0

+

0

+

rising

+

0

+

off

+

off

+

off

+

off

+

off

+

on

+

off

+

on

+

on

+
+ +

on

+
+ +

off

+

off

+
+ + + + + +

0.0

+

1000

+

auto

+

auto

+

auto

+

-1

+

5

+

auto

+

10*128*eps

+

1000

+

4

+

1

+

auto

+

auto

+

1

+

1e-5

+

Auto

+

off

+

off

+

ode45

+

ode45

+

auto

+

DisableAll

+

UseLocalSettings

+

Nonadaptive

+

TrustRegion

+

Fast

+

off

+

off

+

Unconstrained

+

Whenever possible

+
+ +

1

+

[t, u]

+

xFinal

+

xInitial

+

on

+

1000

+

off

+

off

+

off

+

off

+

Array

+

ModelDataLogs

+

on

+

off

+

on

+

on

+

off

+

on

+

off

+

xout

+

tout

+

yout

+

logsout

+

dsmout

+

RefineOutputTimes

+

[]

+

out

+

1

+
+ + + BooleansAsBitfields + PassReuseOutputArgsAs + PassReuseOutputArgsThreshold + ZeroExternalMemoryAtStartup + ZeroInternalMemoryAtStartup + OptimizeModelRefInitCode + NoFixptDivByZeroProtection + UseSpecifiedMinMax + +

on

+

on

+

on

+

off

+

off

+

off

+

off

+

off

+

on

+

on

+

off

+

off

+

on

+

off

+

uint_T

+

on

+

64

+

Structure reference

+

2147483647

+

on

+

on

+

5

+

off

+

off

+

off

+

off

+

on

+

on

+

off

+

off

+

off

+

on

+

off

+

inf

+

Inherit from target

+

on

+

Off

+

off

+

on

+
+ +

error

+

none

+

none

+

none

+

none

+

UseLocalSettings

+

UseLocalSettings

+

UseLocalSettings

+

warning

+

warning

+

warning

+

warning

+

on

+

Classic

+

none

+

off

+

off

+

UseLocalSettings

+

warning

+

warning

+

none

+

error

+

warning

+

warning

+

warning

+

warning

+

warning

+

error

+

error

+

error

+

none

+

warning

+

warning

+

none

+

warning

+

warning

+

error

+

error

+

none

+

warning

+

warning

+

none

+

none

+

none

+

none

+

none

+

none

+

error

+

UseLocalSettings

+

none

+

warning

+

warning

+

warning

+

none

+

warning

+

none

+

warning

+

warning

+

UseLocalSettings

+

off

+

none

+

error

+

none

+

none

+

none

+

warning

+

warning

+

warning

+

error

+

warning

+

warning

+

error

+

warning

+

ErrorLevel1

+

WarnAndRepair

+

none

+

error

+

none

+

warning

+

warning

+

warning

+

warning

+

warning

+

warning

+

warning

+

warning

+
+ +

8

+

16

+

32

+

32

+

32

+

64

+

32

+

Char

+

None

+

Undefined

+

Unspecified

+

32

+

on

+

32-bit Generic

+

8

+

16

+

32

+

32

+

32

+

64

+

32

+

Char

+

None

+

on

+

Undefined

+

Unspecified

+

32

+

0

+

32

+

32

+

Specified

+

off

+

on

+
+ +

IfOutOfDateOrStructuralChange

+

error

+

off

+

on

+

None

+

Multi

+

Infer from blocks in model

+

on

+

off

+

off

+

off

+
+ +

on

+

on

+

on

+

on

+

on

+

on

+

on

+

off

+

on

+

sf_incremental_build

+
+ + + IncludeHyperlinkInReport + GenerateTraceInfo + GenerateTraceReport + GenerateTraceReportSl + GenerateTraceReportSf + GenerateTraceReportEml + GenerateSLWebview + GenerateCodeMetricsReport + +

grt.tlc

+

off

+

make_rtw

+

on

+

off

+

grt_default_tmf

+

off

+

off

+

on

+

off

+

off

+

off

+

off

+

off

+

Default

+

Optimized

+

off

+

off

+

off

+

off

+

off

+

off

+

off

+

None

+

off

+

executionProfile

+

SummaryOnly

+

off

+

C

+

off

+

off

+

off

+

off

+

off

+

off

+

off

+

off

+

off

+

off

+

off

+

Off

+

Off

+

OnUpdate

+ + + + IgnoreCustomStorageClasses + IgnoreTestpoints + InsertBlockDesc + InsertPolySpaceComments + SFDataObjDesc + MATLABFcnDesc + SimulinkDataObjDesc + DefineNamingRule + SignalNamingRule + ParamNamingRule + InlinedPrmAccess + CustomSymbolStr + CustomSymbolStrGlobalVar + CustomSymbolStrType + CustomSymbolStrField + CustomSymbolStrFcn + CustomSymbolStrFcnArg + CustomSymbolStrBlkIO + CustomSymbolStrTmpVar + CustomSymbolStrMacro + ReqsInCode + +

off

+

on

+

on

+

off

+

off

+

31

+

off

+

off

+

off

+

off

+

off

+

off

+

off

+

off

+

off

+

1

+

$R$N$M

+

$N$R$M_T

+

$N$M

+

$R$N$M$F

+

rt$I$N$M

+

rtb_$N$M

+

$N$M

+

$R$N$M

+

None

+

None

+

None

+

off

+

off

+

on

+

off

+

off

+

Shortened

+

Literals

+

off

+

off

+
+ + + GeneratePreprocessorConditionals + IncludeMdlTerminateFcn + CombineOutputUpdateFcns + SuppressErrorStatus + ERTCustomFileBanners + GenerateSampleERTMain + GenerateTestInterfaces + ModelStepFunctionPrototypeControlCompliant + CPPClassGenCompliant + PortableWordSizes + PurelyIntegerCode + SupportComplex + SupportAbsoluteTime + SupportContinuousTime + SupportNonInlinedSFcns + GenerateAllocFcn + +

ansi_tfl_table_tmw.mat

+

+

+

None

+

Auto

+

System defined

+

256

+

2048

+

on

+

off

+

off

+

off

+

on

+

on

+

on

+

on

+

on

+

Disable all

+

off

+

off

+

off

+

off

+

Auto

+

off

+

on

+

rt_

+

on

+

off

+

on

+

on

+

off

+

on

+

on

+

off

+

on

+

Nominal

+

off

+

on

+

off

+

on

+

off

+

off

+

off

+

off

+

1000000

+

0

+

ext_comm

+

Level1

+

off

+

off

+

off

+

off

+

off

+
+
+
+ +

HDL Coder custom configuration component

+

HDL Coder

+ + + +

0

+
+
+

Configuration

+

Solver

+

[ 243, 69, 1123, 699 ]

+
+
+ + +
+ + +

Ensure deterministic transfer (maximum delay)

+

Ensure data integrity only

+

Ensure deterministic transfer (minimum delay)

+

None

+

0

+
+

off

+
+ +

landscape

+

auto

+

A4

+

centimeters

+

[1.270000, 1.270000, 1.270000, 1.270000]

+

1

+

off

+

off

+

200

+

white

+
+ +

black

+

white

+

off

+

normal

+

Helvetica

+

10

+

normal

+

normal

+

on

+

0

+

off

+
+ +

center

+

middle

+

black

+

white

+

off

+

Helvetica

+

10

+

normal

+

normal

+

off

+
+ +

Helvetica

+

9

+

normal

+

normal

+
+ +

off

+

on

+

on

+

off

+

none

+

default

+

autoscale

+
+ +

on

+

on

+

off

+

off

+

off

+

on

+

on

+

on

+
+ + +

4

+

none

+

off

+
+ +

inf

+
+ +

1

+

off

+

[]

+

[]

+

Inherit: auto

+

off

+

off

+

-1

+

Inherit

+

-1

+

auto

+

auto

+

off

+

off

+

on

+
+ +

1

+

[]

+

[]

+

Inherit: auto

+

off

+

off

+

-1

+

Inherit

+

-1

+

auto

+

auto

+

Dialog

+

held

+

[]

+
+ +

system

+

''

+

[]

+

off

+
+ +

FromPortIcon

+

ReadWrite

+

All

+

off

+

off

+

-1

+

Auto

+

Auto

+

Inherit from model

+

Inherit from model

+

Inherit from model

+

Inherit from model

+

Inherit from model

+

off

+

UseLocalSettings

+

AllNumericTypes

+

UseLocalSettings

+

NONE

+

off

+

off

+
+ +

rectangular

+

++

+

All dimensions

+

1

+

on

+

Inherit: Inherit via internal rule

+

[]

+

[]

+

Inherit: Same as first input

+

off

+

Floor

+

on

+

-1

+
+ + +
+ +

[-8, -8, 1370, 746]

+

on

+

100

+

simulink-default.rpt

+

148

+ +

[115, 283, 145, 297]

+

-1

+

Port number

+
+ +

[145, 298, 175, 312]

+

-2

+

2

+

Port number

+
+ +

[115, 313, 145, 327]

+

-3

+

3

+

Port number

+
+ +

[145, 328, 175, 342]

+

-4

+

4

+

Port number

+
+ +

[2, 8]

+

[480, 132, 680, 333]

+

1

+

1.251

+

aerolib6dof2/6DoF (Euler Angles)

+

6DoF EoM (Body Axis)

+

Metric (MKS)

+

Fixed

+

Euler Angles

+

[0 0 0]

+

[u v w]

+

[0 0 0]

+

[0 0 0]

+

m

+

0.5

+

2.0

+

diag([I_xx I_yy I_zz])

+

eye(3)

+

2*eye(3)

+

1.0

+
+ +

[1, 3]

+

[730, 301, 735, 339]

+

-6

+

off

+

3

+

bar

+
+ +

[1, 3]

+

[975, 96, 980, 134]

+

-7

+

off

+

3

+

bar

+
+ +

[1, 3]

+

[1015, 151, 1020, 189]

+

-8

+

off

+

3

+

bar

+
+ +

[885, 215, 915, 245]

+

-9

+
+ +

[1, 3]

+

[765, 220, 825, 270]

+

-10

+

1.127

+

aerolibasang/Incidence, Sideslip, +& Airspeed

+

Incidence,Sideslip,&Airspeed

+
+ +

[12, 2]

+

[310, 145, 420, 360]

+

-11

+

1.32

+

Stateflow.Translate.translate

+

ExplicitOnly

+

on

+

off

+

off

+

Auto

+

off

+

off

+

off

+

off

+

MATLAB Function

+ +

on

+

bgColor = Simulink.Root.ColorString2Rgb(get_param(gcbh, 'BackgroundColor')); image(imread('private/eml_membrane_16.png','png','BackgroundColor',bgColor(1:3)),'center'); disp([10 10 'Force_Cessna']);

+

normalized

+
+ +

[227, 345, 838, 789]

+

off

+

100

+

147

+ +

[20, 101, 40, 119]

+

-1

+

Port number

+
+ +

[20, 136, 40, 154]

+

-2

+

2

+

Port number

+
+ +

[20, 171, 40, 189]

+

-3

+

3

+

Port number

+
+ +

[20, 206, 40, 224]

+

-4

+

4

+

Port number

+
+ +

[20, 246, 40, 264]

+

-5

+

5

+

Port number

+
+ +

[20, 281, 40, 299]

+

-6

+

6

+

Port number

+
+ +

[20, 316, 40, 334]

+

-7

+

7

+

Port number

+
+ +

[20, 351, 40, 369]

+

-8

+

8

+

Port number

+
+ +

[20, 386, 40, 404]

+

-9

+

9

+

Port number

+
+ +

[20, 426, 40, 444]

+

-10

+

10

+

Port number

+
+ +

[20, 461, 40, 479]

+

-11

+

11

+

Port number

+
+ +

[20, 496, 40, 514]

+

-12

+

12

+

Port number

+
+ +

[1, 1]

+

[270, 230, 320, 270]

+

2

+

1

+
+ +

Stateflow S-Function Cessna_6DOF_trim_ha 2

+

[12, 3]

+

[180, 95, 230, 355]

+

1

+

sf_sfun

+

[12 3]

+

on

+ +

2

+

F

+

Auto

+

SignalName

+
+ +

3

+

M

+

Auto

+

SignalName

+
+
+ +

[460, 241, 480, 259]

+

3

+
+ +

[460, 101, 480, 119]

+

-16

+

Port number

+
+ +

[460, 136, 480, 154]

+

-17

+

2

+

Port number

+
+ +

20::1#out:1

+

20::40#in:1

+
+ +

20::18#out:1

+

20::40#in:2

+
+ +

20::19#out:1

+

20::40#in:3

+
+ +

20::20#out:1

+

20::40#in:4

+
+ +

20::21#out:1

+

20::40#in:5

+
+ +

20::24#out:1

+

20::40#in:6

+
+ +

20::22#out:1

+

20::40#in:7

+
+ +

20::27#out:1

+

20::40#in:8

+
+ +

20::36#out:1

+

20::40#in:9

+
+ +

20::37#out:1

+

20::40#in:10

+
+ +

20::38#out:1

+

20::40#in:11

+
+ +

20::39#out:1

+

20::40#in:12

+
+ +

F

+

[0, 0]

+

20::40#out:2

+

20::5#in:1

+
+ +

M

+

[0, 0]

+

20::40#out:3

+

[0, -165]

+

20::26#in:1

+
+ +

20::41#out:1

+

20::42#in:1

+
+ +

20::40#out:1

+

20::41#in:1

+
+
+
+ +

[2, 1]

+

[975, 300, 995, 320]

+

-12

+

off

+

round

+

|+-

+

off

+

Inherit: Inherit via internal rule

+

off

+
+ +

[715, 135, 735, 155]

+

-13

+
+ +

[715, 210, 735, 230]

+

-14

+
+ +

[785, 300, 805, 320]

+

-15

+
+ +

[830, 360, 850, 380]

+

-16

+
+ +

[1000, 198, 1030, 212]

+

-17

+

Port number

+
+ +

[1000, 258, 1030, 272]

+

-18

+

2

+

Port number

+
+ +

[1000, 243, 1030, 257]

+

-19

+

3

+

Port number

+
+ +

[1040, 98, 1070, 112]

+

-20

+

4

+

Port number

+
+ +

[1245, 108, 1275, 122]

+

-21

+

5

+

Port number

+
+ +

[1115, 118, 1145, 132]

+

-22

+

6

+

Port number

+
+ +

[1080, 153, 1110, 167]

+

-23

+

7

+

Port number

+
+ +

[1040, 163, 1070, 177]

+

-24

+

8

+

Port number

+
+ +

[1115, 173, 1145, 187]

+

-25

+

9

+

Port number

+
+ +

[885, 398, 915, 412]

+

-26

+

10

+

Port number

+
+ +

[825, 418, 855, 432]

+

-27

+

11

+

Port number

+
+ +

[780, 433, 810, 447]

+

-28

+

12

+

Port number

+
+ +

[1025, 303, 1055, 317]

+

-29

+

13

+

Port number

+
+ +

148#out:5

+

2#in:1

+
+ +

148#out:6

+

[20, 0; 0, 50]

+

12#in:1

+
+ +

20#out:1

+

[25, 0; 0, -15]

+

148#in:1

+
+ +

2#out:1

+

[0, 0]

+ +

[0, -115; -495, 0; 0, 12; -166, 0; 0, 43]

+

20#in:1

+
+ +

[30, 0]

+ +

25#in:1

+
+ +

[0, 35]

+ +

136#in:1

+
+ +

[0, 70]

+

116#in:2

+
+
+
+
+ +

2#out:2

+

[5, 0]

+ +

[0, -135; -680, 0; 0, 75]

+

20#in:2

+
+ +

[0, 5]

+

137#in:1

+
+
+ +

12#out:1

+

[5, 0; 0, 35; -30, 0; 0, 57]

+ +

[-614, 0; 0, -202]

+

20#in:3

+
+ +

[0, 3]

+

144#in:1

+
+
+ +

12#out:2

+

[10, 0; 0, 105]

+ +

[0, 27; -663, 0; 0, -237]

+

20#in:4

+
+ +

145#in:1

+
+
+ +

12#out:3

+

[0, 87]

+ +

[-632, 0; 0, -187]

+

20#in:5

+
+ +

[0, 23]

+

146#in:1

+
+
+ +

2#out:3

+

[15, 0; 0, -50]

+ +

[0, -115; -683, 0; 0, 165]

+

20#in:7

+
+ +

[135, 0; 0, -5]

+

135#in:1

+
+
+ +

148#out:1

+

43#in:1

+
+ +

148#out:2

+

[7, 0; 0, 12; 293, 0; 0, -12]

+

63#in:1

+
+ +

148#out:4

+

45#in:1

+
+ +

148#out:7

+

[65, 0; 0, 15]

+

46#in:1

+
+ +

148#out:8

+

[13, 0; 0, 50]

+

47#in:1

+
+ +

148#out:3

+

[270, 0; 0, -80]

+

49#in:1

+
+ +

49#out:2

+

[5, 0]

+ +

[0, -25; -55, 0]

+ +

[-585, 0; 0, 376; -277, 0; 0, -221]

+

20#in:6

+
+ +

[0, 220]

+

116#in:1

+
+
+ +

139#in:1

+
+
+ +

49#out:1

+

138#in:1

+
+ +

49#out:3

+

140#in:1

+
+ +

63#out:1

+

141#in:1

+
+ +

63#out:2

+

142#in:1

+
+ +

63#out:3

+

143#in:1

+
+ +

20#out:2

+

[25, 0; 0, -20]

+

148#in:2

+
+ +

25#out:1

+

[10, 0; 0, 160; -836, 0; 0, -115]

+

20#in:8

+
+ +

116#out:1

+

147#in:1

+
+ +

131#out:1

+

20#in:9

+
+ +

132#out:1

+

20#in:10

+
+ +

133#out:1

+

20#in:11

+
+ +

134#out:1

+

20#in:12

+
+
+
+ + +

18-Dec-2014 10:58:31

+

0

+

76014001.001

+ + +

Default Simulink S-Function Target.

+
+ +

MATLAB Function

+

[401 52 213 385]

+

[0 156.75 0 153.75]

+

[1 1 1366 768 1.333333333333333]

+

29

+

1

+ + +

27

+

CLUSTER_CHART

+

EML_CHART

+

2

+

1

+ +

Force_Cessna

+
+ + +

eML_blk_kernel()

+

[18 64.5 118 66]

+

12

+

SUBCHART

+

29

+

FUNC_STATE

+

CLUSTER_STATE

+ +

1

+

function [F, M] = Force_Cessna(alpha, beta, p, q, r, theta, V, alpha_dot, delta_e, delta_a, delta_r, thrust) + +g = 9.8; +rho = 1.225; + +m = 1043.26; +C_bar = 1.493; +b = 10.911; +S_ref = 16.1651; + +C_L_0 = 0.25; +C_L_alpha = 4.47; +C_L_q = 1.7; +C_L_delta_e = 0.3476; + +% Ignore all other C_D derivatives excluding C_D_0 +% Use C_D = C_D_0 + k*C_L^2 + +C_D_0 = 0.036; +k = 0.3; + +C_Y_beta = -0.31; +C_Y_p = -0.037; +C_Y_r = 0.21; +C_Y_delta_a = 0; + +C_l_beta = -0.089; +C_l_p = -0.47; +C_l_r = 0.096; +C_l_delta_a = -0.09; +C_l_delta_r = 0.0147; + +C_M_0 = -0.02; +C_M_alpha = -1.8; +C_M_alpha_dot = -12.4; +C_M_delta_e = -1.28; + +C_N_beta = 0.065; +C_N_p = -0.03; +C_N_r = -0.99; +C_N_delta_a = -0.0053; +C_N_delta_r = -0.0657; + +C_L = C_L_0 + C_L_alpha*alpha + C_L_q*(q*C_bar/(2*V)) + C_L_delta_e*delta_e; +C_D = C_D_0 + k*C_L^2; +C_Y = C_Y_beta*beta + C_Y_p*(p*b/(2*V)) + C_Y_r*(r*b/(2*V)) + C_Y_delta_a*delta_a; + +C_l = C_l_beta*beta + C_l_p*(p*b/(2*V)) + C_l_r*(r*b/(2*V)) + C_l_delta_a*delta_a + C_l_delta_r*delta_r; +C_M = C_M_0 + C_M_alpha*alpha + C_M_alpha_dot*(alpha_dot*C_bar/(2*V)) + C_M_delta_e*delta_e; +C_N = C_N_beta*beta + C_N_p*(p*b/(2*V)) + C_N_r*(r*b/(2*V)) + C_N_delta_a*delta_a + C_N_delta_r*delta_r; + +C_X = -C_D*cos(alpha) + C_L*sin(alpha); +C_Z = -C_D*sin(alpha) - C_L*cos(alpha); + +F = zeros(3,1); +M = zeros(3,1); + +q_bar = 0.5*rho*V*V; + +F(1,1) = q_bar*S_ref*C_X - m*g*sin(theta) + thrust; +F(2,1) = q_bar*S_ref*C_Y; +F(3,1) = q_bar*S_ref*C_Z + m*g*cos(theta); + +M(1,1) = q_bar*b*S_ref*C_l; +M(2,1) = q_bar*C_bar*S_ref*C_M; +M(3,1) = q_bar*b*S_ref*C_N;

+

Matrix(4,1) +[[10.0]; [5.0]; [700.0]; [500.0]]

+
+
+ +

INPUT_DATA

+ + +

-1

+
+ +

SF_INHERITED_TYPE

+

SF_DOUBLE_TYPE

+
+

SF_COMPLEX_INHERITED

+
+

Inherit: Same as Simulink

+
+ +

OUTPUT_DATA

+ + +

-1

+
+ +

SF_INHERITED_TYPE

+

SF_DOUBLE_TYPE

+
+

SF_COMPLEX_INHERITED

+

SF_FRAME_NO

+
+

Inherit: Same as Simulink

+
+ +

INPUT_DATA

+ + +

-1

+
+ +

SF_INHERITED_TYPE

+

SF_DOUBLE_TYPE

+

1

+

16

+
+

SF_COMPLEX_INHERITED

+

SF_FRAME_INHERITED

+
+

Inherit: Same as Simulink

+
+ +

INPUT_DATA

+ + +

-1

+
+ +

SF_INHERITED_TYPE

+

SF_DOUBLE_TYPE

+

1

+

16

+
+

SF_COMPLEX_INHERITED

+

SF_FRAME_INHERITED

+
+

Inherit: Same as Simulink

+
+ +

INPUT_DATA

+ + +

-1

+
+ +

SF_INHERITED_TYPE

+

SF_DOUBLE_TYPE

+

1

+

16

+
+

SF_COMPLEX_INHERITED

+

SF_FRAME_INHERITED

+
+

Inherit: Same as Simulink

+
+ +

INPUT_DATA

+ + +

-1

+
+ +

SF_INHERITED_TYPE

+

SF_DOUBLE_TYPE

+

1

+

16

+
+

SF_COMPLEX_INHERITED

+

SF_FRAME_INHERITED

+
+

Inherit: Same as Simulink

+
+ +

INPUT_DATA

+ + +

-1

+
+ +

SF_INHERITED_TYPE

+

SF_DOUBLE_TYPE

+

1

+

16

+
+

SF_COMPLEX_INHERITED

+

SF_FRAME_INHERITED

+
+

Inherit: Same as Simulink

+
+ +

INPUT_DATA

+ + +

-1

+
+ +

SF_INHERITED_TYPE

+

SF_DOUBLE_TYPE

+

1

+

16

+
+

SF_COMPLEX_INHERITED

+

SF_FRAME_INHERITED

+
+

Inherit: Same as Simulink

+
+ +

OUTPUT_DATA

+ + +

-1

+
+ +

SF_INHERITED_TYPE

+

SF_DOUBLE_TYPE

+

1

+

16

+
+

SF_COMPLEX_INHERITED

+

SF_FRAME_NO

+
+

Inherit: Same as Simulink

+
+ +

INPUT_DATA

+ + +

-1

+
+ +

SF_INHERITED_TYPE

+

SF_DOUBLE_TYPE

+

1

+

16

+
+

SF_COMPLEX_INHERITED

+

SF_FRAME_INHERITED

+
+

Inherit: Same as Simulink

+
+ +

INPUT_DATA

+ + +

-1

+
+ +

SF_INHERITED_TYPE

+

SF_DOUBLE_TYPE

+

1

+

16

+
+

SF_COMPLEX_INHERITED

+

SF_FRAME_INHERITED

+
+

Inherit: Same as Simulink

+
+ +

INPUT_DATA

+ + +

-1

+
+ +

SF_INHERITED_TYPE

+

SF_DOUBLE_TYPE

+

1

+

16

+
+

SF_COMPLEX_INHERITED

+

SF_FRAME_INHERITED

+
+

Inherit: Same as Simulink

+
+ +

INPUT_DATA

+ + +

-1

+
+ +

SF_INHERITED_TYPE

+

SF_DOUBLE_TYPE

+

1

+

16

+
+

SF_COMPLEX_INHERITED

+

SF_FRAME_INHERITED

+
+

Inherit: Same as Simulink

+
+ +

INPUT_DATA

+ + +

-1

+
+ +

SF_INHERITED_TYPE

+

SF_DOUBLE_TYPE

+

1

+

16

+
+

SF_COMPLEX_INHERITED

+

SF_FRAME_INHERITED

+
+

Inherit: Same as Simulink

+
+ +

{eML_blk_kernel();}

+

[36.125 25.875 102.544 14.964]

+

12

+ +

[0 0 1 0 23.5747 14.625 0 0]

+
+ +

3

+

[1 0 -1 0 23.5747 42.5747 0 0]

+
+

[23.5747 24.9468]

+

[21.175 25.975 14.625 42.575]

+

29

+

SMART

+ +

BOTH_STICK

+
+

1

+
+ +

[23.5747 49.5747 7]

+

29

+

CONNECTIVE_JUNCTION

+
+
+
+
+
+ +

MATLAB Function

+

28

+

29

+
+
+
diff --git a/Prof_Arya/slprj/_jitprj/jitEngineAccessInfo.mat b/Prof_Arya/slprj/_jitprj/jitEngineAccessInfo.mat new file mode 100644 index 0000000..2e6b0d8 Binary files /dev/null and b/Prof_Arya/slprj/_jitprj/jitEngineAccessInfo.mat differ diff --git a/Prof_Arya/slprj/_jitprj/sEI9p49izcHUxn63CWpG2IC.l b/Prof_Arya/slprj/_jitprj/sEI9p49izcHUxn63CWpG2IC.l new file mode 100644 index 0000000..a912364 Binary files /dev/null and b/Prof_Arya/slprj/_jitprj/sEI9p49izcHUxn63CWpG2IC.l differ diff --git a/Prof_Arya/slprj/_jitprj/sEI9p49izcHUxn63CWpG2IC.mat b/Prof_Arya/slprj/_jitprj/sEI9p49izcHUxn63CWpG2IC.mat new file mode 100644 index 0000000..72066f3 Binary files /dev/null and b/Prof_Arya/slprj/_jitprj/sEI9p49izcHUxn63CWpG2IC.mat differ diff --git a/Prof_Arya/slprj/_jitprj/sjLZixcOZskMJeeDfIb93hH.l b/Prof_Arya/slprj/_jitprj/sjLZixcOZskMJeeDfIb93hH.l new file mode 100644 index 0000000..27def57 Binary files /dev/null and b/Prof_Arya/slprj/_jitprj/sjLZixcOZskMJeeDfIb93hH.l differ diff --git a/Prof_Arya/slprj/_jitprj/sjLZixcOZskMJeeDfIb93hH.mat b/Prof_Arya/slprj/_jitprj/sjLZixcOZskMJeeDfIb93hH.mat new file mode 100644 index 0000000..a01f6bf Binary files /dev/null and b/Prof_Arya/slprj/_jitprj/sjLZixcOZskMJeeDfIb93hH.mat differ diff --git a/Prof_Arya/slprj/_jitprj/sywZUtpLbJvZ7sNRSY4m9bG.l b/Prof_Arya/slprj/_jitprj/sywZUtpLbJvZ7sNRSY4m9bG.l new file mode 100644 index 0000000..27def57 Binary files /dev/null and b/Prof_Arya/slprj/_jitprj/sywZUtpLbJvZ7sNRSY4m9bG.l differ diff --git a/Prof_Arya/slprj/_jitprj/sywZUtpLbJvZ7sNRSY4m9bG.mat b/Prof_Arya/slprj/_jitprj/sywZUtpLbJvZ7sNRSY4m9bG.mat new file mode 100644 index 0000000..14499df Binary files /dev/null and b/Prof_Arya/slprj/_jitprj/sywZUtpLbJvZ7sNRSY4m9bG.mat differ diff --git a/Prof_Arya/slprj/_sfprj/Cessna_6DOF/_self/sfun/info/binfo.mat b/Prof_Arya/slprj/_sfprj/Cessna_6DOF/_self/sfun/info/binfo.mat new file mode 100644 index 0000000..8c3d4c4 Binary files /dev/null and b/Prof_Arya/slprj/_sfprj/Cessna_6DOF/_self/sfun/info/binfo.mat differ diff --git a/Prof_Arya/slprj/_sfprj/Cessna_6DOF/_self/sfun/info/chart1_61lDY9MbzCSyk6tMTxmxsG.mat b/Prof_Arya/slprj/_sfprj/Cessna_6DOF/_self/sfun/info/chart1_61lDY9MbzCSyk6tMTxmxsG.mat new file mode 100644 index 0000000..96112df Binary files /dev/null and b/Prof_Arya/slprj/_sfprj/Cessna_6DOF/_self/sfun/info/chart1_61lDY9MbzCSyk6tMTxmxsG.mat differ diff --git a/Prof_Arya/slprj/_sfprj/Cessna_6DOF/_self/sfun/info/chart1_jFM61yZv4AZtAtyV4ewisH.mat b/Prof_Arya/slprj/_sfprj/Cessna_6DOF/_self/sfun/info/chart1_jFM61yZv4AZtAtyV4ewisH.mat new file mode 100644 index 0000000..3e61301 Binary files /dev/null and b/Prof_Arya/slprj/_sfprj/Cessna_6DOF/_self/sfun/info/chart1_jFM61yZv4AZtAtyV4ewisH.mat differ diff --git a/Prof_Arya/slprj/_sfprj/Cessna_6DOF/_self/sfun/info/chart1_v045JFXizl4FQXSha8a34C.mat b/Prof_Arya/slprj/_sfprj/Cessna_6DOF/_self/sfun/info/chart1_v045JFXizl4FQXSha8a34C.mat new file mode 100644 index 0000000..cd926a4 Binary files /dev/null and b/Prof_Arya/slprj/_sfprj/Cessna_6DOF/_self/sfun/info/chart1_v045JFXizl4FQXSha8a34C.mat differ diff --git a/Prof_Arya/slprj/_sfprj/Cessna_6DOF/_self/sfun/src/c1_Cessna_6DOF.c b/Prof_Arya/slprj/_sfprj/Cessna_6DOF/_self/sfun/src/c1_Cessna_6DOF.c new file mode 100644 index 0000000..cbd0534 --- /dev/null +++ b/Prof_Arya/slprj/_sfprj/Cessna_6DOF/_self/sfun/src/c1_Cessna_6DOF.c @@ -0,0 +1,2330 @@ +/* Include files */ + +#include +#include "blas.h" +#include "Cessna_6DOF_sfun.h" +#include "c1_Cessna_6DOF.h" +#include "mwmathutil.h" +#define CHARTINSTANCE_CHARTNUMBER (chartInstance->chartNumber) +#define CHARTINSTANCE_INSTANCENUMBER (chartInstance->instanceNumber) +#include "Cessna_6DOF_sfun_debug_macros.h" +#define _SF_MEX_LISTEN_FOR_CTRL_C(S) sf_mex_listen_for_ctrl_c(sfGlobalDebugInstanceStruct,S); + +/* Type Definitions */ + +/* Named Constants */ +#define CALL_EVENT (-1) + +/* Variable Declarations */ + +/* Variable Definitions */ +static real_T _sfTime_; +static const char * c1_debug_family_names[55] = { "g", "rho", "m", "C_bar", "b", + "S_ref", "C_L_0", "C_L_alpha", "C_L_q", "C_L_delta_e", "C_D_0", "k", + "C_Y_beta", "C_Y_p", "C_Y_r", "C_Y_delta_a", "C_l_beta", "C_l_p", "C_l_r", + "C_l_delta_a", "C_l_delta_r", "C_M_0", "C_M_alpha", "C_M_alpha_dot", + "C_M_delta_e", "C_N_beta", "C_N_p", "C_N_r", "C_N_delta_a", "C_N_delta_r", + "delta_e", "delta_a", "delta_r", "thrust", "C_L", "C_D", "C_Y", "C_l", "C_M", + "C_N", "C_X", "C_Z", "q_bar", "nargin", "nargout", "V", "alpha", "alpha_dot", + "beta", "p", "q", "r", "theta", "F", "M" }; + +/* Function Declarations */ +static void initialize_c1_Cessna_6DOF(SFc1_Cessna_6DOFInstanceStruct + *chartInstance); +static void initialize_params_c1_Cessna_6DOF(SFc1_Cessna_6DOFInstanceStruct + *chartInstance); +static void enable_c1_Cessna_6DOF(SFc1_Cessna_6DOFInstanceStruct *chartInstance); +static void disable_c1_Cessna_6DOF(SFc1_Cessna_6DOFInstanceStruct *chartInstance); +static void c1_update_debugger_state_c1_Cessna_6DOF + (SFc1_Cessna_6DOFInstanceStruct *chartInstance); +static const mxArray *get_sim_state_c1_Cessna_6DOF + (SFc1_Cessna_6DOFInstanceStruct *chartInstance); +static void set_sim_state_c1_Cessna_6DOF(SFc1_Cessna_6DOFInstanceStruct + *chartInstance, const mxArray *c1_st); +static void finalize_c1_Cessna_6DOF(SFc1_Cessna_6DOFInstanceStruct + *chartInstance); +static void sf_gateway_c1_Cessna_6DOF(SFc1_Cessna_6DOFInstanceStruct + *chartInstance); +static void c1_chartstep_c1_Cessna_6DOF(SFc1_Cessna_6DOFInstanceStruct + *chartInstance); +static void initSimStructsc1_Cessna_6DOF(SFc1_Cessna_6DOFInstanceStruct + *chartInstance); +static void init_script_number_translation(uint32_T c1_machineNumber, uint32_T + c1_chartNumber, uint32_T c1_instanceNumber); +static const mxArray *c1_sf_marshallOut(void *chartInstanceVoid, void *c1_inData); +static void c1_emlrt_marshallIn(SFc1_Cessna_6DOFInstanceStruct *chartInstance, + const mxArray *c1_M, const char_T *c1_identifier, real_T c1_y[3]); +static void c1_b_emlrt_marshallIn(SFc1_Cessna_6DOFInstanceStruct *chartInstance, + const mxArray *c1_u, const emlrtMsgIdentifier *c1_parentId, real_T c1_y[3]); +static void c1_sf_marshallIn(void *chartInstanceVoid, const mxArray + *c1_mxArrayInData, const char_T *c1_varName, void *c1_outData); +static const mxArray *c1_b_sf_marshallOut(void *chartInstanceVoid, void + *c1_inData); +static real_T c1_c_emlrt_marshallIn(SFc1_Cessna_6DOFInstanceStruct + *chartInstance, const mxArray *c1_u, const emlrtMsgIdentifier *c1_parentId); +static void c1_b_sf_marshallIn(void *chartInstanceVoid, const mxArray + *c1_mxArrayInData, const char_T *c1_varName, void *c1_outData); +static void c1_info_helper(const mxArray **c1_info); +static const mxArray *c1_emlrt_marshallOut(const char * c1_u); +static const mxArray *c1_b_emlrt_marshallOut(const uint32_T c1_u); +static real_T c1_mpower(SFc1_Cessna_6DOFInstanceStruct *chartInstance, real_T + c1_a); +static void c1_eml_scalar_eg(SFc1_Cessna_6DOFInstanceStruct *chartInstance); +static const mxArray *c1_c_sf_marshallOut(void *chartInstanceVoid, void + *c1_inData); +static int32_T c1_d_emlrt_marshallIn(SFc1_Cessna_6DOFInstanceStruct + *chartInstance, const mxArray *c1_u, const emlrtMsgIdentifier *c1_parentId); +static void c1_c_sf_marshallIn(void *chartInstanceVoid, const mxArray + *c1_mxArrayInData, const char_T *c1_varName, void *c1_outData); +static uint8_T c1_e_emlrt_marshallIn(SFc1_Cessna_6DOFInstanceStruct + *chartInstance, const mxArray *c1_b_is_active_c1_Cessna_6DOF, const char_T + *c1_identifier); +static uint8_T c1_f_emlrt_marshallIn(SFc1_Cessna_6DOFInstanceStruct + *chartInstance, const mxArray *c1_u, const emlrtMsgIdentifier *c1_parentId); +static void init_dsm_address_info(SFc1_Cessna_6DOFInstanceStruct *chartInstance); + +/* Function Definitions */ +static void initialize_c1_Cessna_6DOF(SFc1_Cessna_6DOFInstanceStruct + *chartInstance) +{ + chartInstance->c1_sfEvent = CALL_EVENT; + _sfTime_ = sf_get_time(chartInstance->S); + chartInstance->c1_is_active_c1_Cessna_6DOF = 0U; +} + +static void initialize_params_c1_Cessna_6DOF(SFc1_Cessna_6DOFInstanceStruct + *chartInstance) +{ + (void)chartInstance; +} + +static void enable_c1_Cessna_6DOF(SFc1_Cessna_6DOFInstanceStruct *chartInstance) +{ + _sfTime_ = sf_get_time(chartInstance->S); +} + +static void disable_c1_Cessna_6DOF(SFc1_Cessna_6DOFInstanceStruct *chartInstance) +{ + _sfTime_ = sf_get_time(chartInstance->S); +} + +static void c1_update_debugger_state_c1_Cessna_6DOF + (SFc1_Cessna_6DOFInstanceStruct *chartInstance) +{ + (void)chartInstance; +} + +static const mxArray *get_sim_state_c1_Cessna_6DOF + (SFc1_Cessna_6DOFInstanceStruct *chartInstance) +{ + const mxArray *c1_st; + const mxArray *c1_y = NULL; + int32_T c1_i0; + real_T c1_u[3]; + const mxArray *c1_b_y = NULL; + int32_T c1_i1; + real_T c1_b_u[3]; + const mxArray *c1_c_y = NULL; + uint8_T c1_hoistedGlobal; + uint8_T c1_c_u; + const mxArray *c1_d_y = NULL; + real_T (*c1_M)[3]; + real_T (*c1_F)[3]; + c1_M = (real_T (*)[3])ssGetOutputPortSignal(chartInstance->S, 2); + c1_F = (real_T (*)[3])ssGetOutputPortSignal(chartInstance->S, 1); + c1_st = NULL; + c1_st = NULL; + c1_y = NULL; + sf_mex_assign(&c1_y, sf_mex_createcellmatrix(3, 1), false); + for (c1_i0 = 0; c1_i0 < 3; c1_i0++) { + c1_u[c1_i0] = (*c1_F)[c1_i0]; + } + + c1_b_y = NULL; + sf_mex_assign(&c1_b_y, sf_mex_create("y", c1_u, 0, 0U, 1U, 0U, 1, 3), false); + sf_mex_setcell(c1_y, 0, c1_b_y); + for (c1_i1 = 0; c1_i1 < 3; c1_i1++) { + c1_b_u[c1_i1] = (*c1_M)[c1_i1]; + } + + c1_c_y = NULL; + sf_mex_assign(&c1_c_y, sf_mex_create("y", c1_b_u, 0, 0U, 1U, 0U, 1, 3), false); + sf_mex_setcell(c1_y, 1, c1_c_y); + c1_hoistedGlobal = chartInstance->c1_is_active_c1_Cessna_6DOF; + c1_c_u = c1_hoistedGlobal; + c1_d_y = NULL; + sf_mex_assign(&c1_d_y, sf_mex_create("y", &c1_c_u, 3, 0U, 0U, 0U, 0), false); + sf_mex_setcell(c1_y, 2, c1_d_y); + sf_mex_assign(&c1_st, c1_y, false); + return c1_st; +} + +static void set_sim_state_c1_Cessna_6DOF(SFc1_Cessna_6DOFInstanceStruct + *chartInstance, const mxArray *c1_st) +{ + const mxArray *c1_u; + real_T c1_dv0[3]; + int32_T c1_i2; + real_T c1_dv1[3]; + int32_T c1_i3; + real_T (*c1_F)[3]; + real_T (*c1_M)[3]; + c1_M = (real_T (*)[3])ssGetOutputPortSignal(chartInstance->S, 2); + c1_F = (real_T (*)[3])ssGetOutputPortSignal(chartInstance->S, 1); + chartInstance->c1_doneDoubleBufferReInit = true; + c1_u = sf_mex_dup(c1_st); + c1_emlrt_marshallIn(chartInstance, sf_mex_dup(sf_mex_getcell(c1_u, 0)), "F", + c1_dv0); + for (c1_i2 = 0; c1_i2 < 3; c1_i2++) { + (*c1_F)[c1_i2] = c1_dv0[c1_i2]; + } + + c1_emlrt_marshallIn(chartInstance, sf_mex_dup(sf_mex_getcell(c1_u, 1)), "M", + c1_dv1); + for (c1_i3 = 0; c1_i3 < 3; c1_i3++) { + (*c1_M)[c1_i3] = c1_dv1[c1_i3]; + } + + chartInstance->c1_is_active_c1_Cessna_6DOF = c1_e_emlrt_marshallIn + (chartInstance, sf_mex_dup(sf_mex_getcell(c1_u, 2)), + "is_active_c1_Cessna_6DOF"); + sf_mex_destroy(&c1_u); + c1_update_debugger_state_c1_Cessna_6DOF(chartInstance); + sf_mex_destroy(&c1_st); +} + +static void finalize_c1_Cessna_6DOF(SFc1_Cessna_6DOFInstanceStruct + *chartInstance) +{ + (void)chartInstance; +} + +static void sf_gateway_c1_Cessna_6DOF(SFc1_Cessna_6DOFInstanceStruct + *chartInstance) +{ + int32_T c1_i4; + int32_T c1_i5; + real_T *c1_V; + real_T *c1_alpha; + real_T *c1_alpha_dot; + real_T *c1_beta; + real_T *c1_p; + real_T *c1_q; + real_T *c1_r; + real_T *c1_theta; + real_T (*c1_M)[3]; + real_T (*c1_F)[3]; + c1_M = (real_T (*)[3])ssGetOutputPortSignal(chartInstance->S, 2); + c1_theta = (real_T *)ssGetInputPortSignal(chartInstance->S, 7); + c1_r = (real_T *)ssGetInputPortSignal(chartInstance->S, 6); + c1_q = (real_T *)ssGetInputPortSignal(chartInstance->S, 5); + c1_p = (real_T *)ssGetInputPortSignal(chartInstance->S, 4); + c1_beta = (real_T *)ssGetInputPortSignal(chartInstance->S, 3); + c1_alpha_dot = (real_T *)ssGetInputPortSignal(chartInstance->S, 2); + c1_alpha = (real_T *)ssGetInputPortSignal(chartInstance->S, 1); + c1_F = (real_T (*)[3])ssGetOutputPortSignal(chartInstance->S, 1); + c1_V = (real_T *)ssGetInputPortSignal(chartInstance->S, 0); + _SFD_SYMBOL_SCOPE_PUSH(0U, 0U); + _sfTime_ = sf_get_time(chartInstance->S); + _SFD_CC_CALL(CHART_ENTER_SFUNCTION_TAG, 0U, chartInstance->c1_sfEvent); + _SFD_DATA_RANGE_CHECK(*c1_V, 0U); + chartInstance->c1_sfEvent = CALL_EVENT; + c1_chartstep_c1_Cessna_6DOF(chartInstance); + _SFD_SYMBOL_SCOPE_POP(); + _SFD_CHECK_FOR_STATE_INCONSISTENCY(_Cessna_6DOFMachineNumber_, + chartInstance->chartNumber, chartInstance->instanceNumber); + for (c1_i4 = 0; c1_i4 < 3; c1_i4++) { + _SFD_DATA_RANGE_CHECK((*c1_F)[c1_i4], 1U); + } + + _SFD_DATA_RANGE_CHECK(*c1_alpha, 2U); + _SFD_DATA_RANGE_CHECK(*c1_alpha_dot, 3U); + _SFD_DATA_RANGE_CHECK(*c1_beta, 4U); + _SFD_DATA_RANGE_CHECK(*c1_p, 5U); + _SFD_DATA_RANGE_CHECK(*c1_q, 6U); + _SFD_DATA_RANGE_CHECK(*c1_r, 7U); + _SFD_DATA_RANGE_CHECK(*c1_theta, 8U); + for (c1_i5 = 0; c1_i5 < 3; c1_i5++) { + _SFD_DATA_RANGE_CHECK((*c1_M)[c1_i5], 9U); + } +} + +static void c1_chartstep_c1_Cessna_6DOF(SFc1_Cessna_6DOFInstanceStruct + *chartInstance) +{ + real_T c1_hoistedGlobal; + real_T c1_b_hoistedGlobal; + real_T c1_c_hoistedGlobal; + real_T c1_d_hoistedGlobal; + real_T c1_e_hoistedGlobal; + real_T c1_f_hoistedGlobal; + real_T c1_g_hoistedGlobal; + real_T c1_h_hoistedGlobal; + real_T c1_V; + real_T c1_alpha; + real_T c1_alpha_dot; + real_T c1_beta; + real_T c1_p; + real_T c1_q; + real_T c1_r; + real_T c1_theta; + uint32_T c1_debug_family_var_map[55]; + real_T c1_g; + real_T c1_rho; + real_T c1_m; + real_T c1_C_bar; + real_T c1_b; + real_T c1_S_ref; + real_T c1_C_L_0; + real_T c1_C_L_alpha; + real_T c1_C_L_q; + real_T c1_C_L_delta_e; + real_T c1_C_D_0; + real_T c1_k; + real_T c1_C_Y_beta; + real_T c1_C_Y_p; + real_T c1_C_Y_r; + real_T c1_C_Y_delta_a; + real_T c1_C_l_beta; + real_T c1_C_l_p; + real_T c1_C_l_r; + real_T c1_C_l_delta_a; + real_T c1_C_l_delta_r; + real_T c1_C_M_0; + real_T c1_C_M_alpha; + real_T c1_C_M_alpha_dot; + real_T c1_C_M_delta_e; + real_T c1_C_N_beta; + real_T c1_C_N_p; + real_T c1_C_N_r; + real_T c1_C_N_delta_a; + real_T c1_C_N_delta_r; + real_T c1_delta_e; + real_T c1_delta_a; + real_T c1_delta_r; + real_T c1_thrust; + real_T c1_C_L; + real_T c1_C_D; + real_T c1_C_Y; + real_T c1_C_l; + real_T c1_C_M; + real_T c1_C_N; + real_T c1_C_X; + real_T c1_C_Z; + real_T c1_q_bar; + real_T c1_nargin = 8.0; + real_T c1_nargout = 2.0; + real_T c1_F[3]; + real_T c1_M[3]; + real_T c1_A; + real_T c1_B; + real_T c1_x; + real_T c1_y; + real_T c1_b_x; + real_T c1_b_y; + real_T c1_c_x; + real_T c1_c_y; + real_T c1_d_y; + real_T c1_b_A; + real_T c1_b_B; + real_T c1_d_x; + real_T c1_e_y; + real_T c1_e_x; + real_T c1_f_y; + real_T c1_f_x; + real_T c1_g_y; + real_T c1_h_y; + real_T c1_c_A; + real_T c1_c_B; + real_T c1_g_x; + real_T c1_i_y; + real_T c1_h_x; + real_T c1_j_y; + real_T c1_i_x; + real_T c1_k_y; + real_T c1_l_y; + real_T c1_d_A; + real_T c1_d_B; + real_T c1_j_x; + real_T c1_m_y; + real_T c1_k_x; + real_T c1_n_y; + real_T c1_l_x; + real_T c1_o_y; + real_T c1_p_y; + real_T c1_e_A; + real_T c1_e_B; + real_T c1_m_x; + real_T c1_q_y; + real_T c1_n_x; + real_T c1_r_y; + real_T c1_o_x; + real_T c1_s_y; + real_T c1_t_y; + real_T c1_f_A; + real_T c1_f_B; + real_T c1_p_x; + real_T c1_u_y; + real_T c1_q_x; + real_T c1_v_y; + real_T c1_r_x; + real_T c1_w_y; + real_T c1_x_y; + real_T c1_g_A; + real_T c1_g_B; + real_T c1_s_x; + real_T c1_y_y; + real_T c1_t_x; + real_T c1_ab_y; + real_T c1_u_x; + real_T c1_bb_y; + real_T c1_cb_y; + real_T c1_h_A; + real_T c1_h_B; + real_T c1_v_x; + real_T c1_db_y; + real_T c1_w_x; + real_T c1_eb_y; + real_T c1_x_x; + real_T c1_fb_y; + real_T c1_gb_y; + real_T c1_y_x; + real_T c1_ab_x; + real_T c1_bb_x; + real_T c1_cb_x; + real_T c1_db_x; + real_T c1_eb_x; + real_T c1_fb_x; + real_T c1_gb_x; + int32_T c1_i6; + int32_T c1_i7; + real_T c1_hb_x; + real_T c1_ib_x; + real_T c1_jb_x; + real_T c1_kb_x; + int32_T c1_i8; + int32_T c1_i9; + real_T *c1_b_theta; + real_T *c1_b_r; + real_T *c1_b_q; + real_T *c1_b_p; + real_T *c1_b_beta; + real_T *c1_b_alpha_dot; + real_T *c1_b_alpha; + real_T *c1_b_V; + real_T (*c1_b_F)[3]; + real_T (*c1_b_M)[3]; + c1_b_M = (real_T (*)[3])ssGetOutputPortSignal(chartInstance->S, 2); + c1_b_theta = (real_T *)ssGetInputPortSignal(chartInstance->S, 7); + c1_b_r = (real_T *)ssGetInputPortSignal(chartInstance->S, 6); + c1_b_q = (real_T *)ssGetInputPortSignal(chartInstance->S, 5); + c1_b_p = (real_T *)ssGetInputPortSignal(chartInstance->S, 4); + c1_b_beta = (real_T *)ssGetInputPortSignal(chartInstance->S, 3); + c1_b_alpha_dot = (real_T *)ssGetInputPortSignal(chartInstance->S, 2); + c1_b_alpha = (real_T *)ssGetInputPortSignal(chartInstance->S, 1); + c1_b_F = (real_T (*)[3])ssGetOutputPortSignal(chartInstance->S, 1); + c1_b_V = (real_T *)ssGetInputPortSignal(chartInstance->S, 0); + _SFD_CC_CALL(CHART_ENTER_DURING_FUNCTION_TAG, 0U, chartInstance->c1_sfEvent); + c1_hoistedGlobal = *c1_b_V; + c1_b_hoistedGlobal = *c1_b_alpha; + c1_c_hoistedGlobal = *c1_b_alpha_dot; + c1_d_hoistedGlobal = *c1_b_beta; + c1_e_hoistedGlobal = *c1_b_p; + c1_f_hoistedGlobal = *c1_b_q; + c1_g_hoistedGlobal = *c1_b_r; + c1_h_hoistedGlobal = *c1_b_theta; + c1_V = c1_hoistedGlobal; + c1_alpha = c1_b_hoistedGlobal; + c1_alpha_dot = c1_c_hoistedGlobal; + c1_beta = c1_d_hoistedGlobal; + c1_p = c1_e_hoistedGlobal; + c1_q = c1_f_hoistedGlobal; + c1_r = c1_g_hoistedGlobal; + c1_theta = c1_h_hoistedGlobal; + _SFD_SYMBOL_SCOPE_PUSH_EML(0U, 55U, 55U, c1_debug_family_names, + c1_debug_family_var_map); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_g, 0U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_rho, 1U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_m, 2U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_C_bar, 3U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_b, 4U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_S_ref, 5U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c1_C_L_0, 6U, c1_b_sf_marshallOut, + c1_b_sf_marshallIn); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_C_L_alpha, 7U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_C_L_q, 8U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_C_L_delta_e, 9U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c1_C_D_0, 10U, c1_b_sf_marshallOut, + c1_b_sf_marshallIn); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_k, 11U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_C_Y_beta, 12U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_C_Y_p, 13U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_C_Y_r, 14U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_C_Y_delta_a, 15U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_C_l_beta, 16U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_C_l_p, 17U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_C_l_r, 18U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_C_l_delta_a, 19U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_C_l_delta_r, 20U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c1_C_M_0, 21U, c1_b_sf_marshallOut, + c1_b_sf_marshallIn); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_C_M_alpha, 22U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_C_M_alpha_dot, 23U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_C_M_delta_e, 24U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_C_N_beta, 25U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_C_N_p, 26U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_C_N_r, 27U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_C_N_delta_a, 28U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_C_N_delta_r, 29U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_delta_e, 30U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_delta_a, 31U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_delta_r, 32U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c1_thrust, 33U, c1_b_sf_marshallOut, + c1_b_sf_marshallIn); + _SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c1_C_L, 34U, c1_b_sf_marshallOut, + c1_b_sf_marshallIn); + _SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c1_C_D, 35U, c1_b_sf_marshallOut, + c1_b_sf_marshallIn); + _SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c1_C_Y, 36U, c1_b_sf_marshallOut, + c1_b_sf_marshallIn); + _SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c1_C_l, 37U, c1_b_sf_marshallOut, + c1_b_sf_marshallIn); + _SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c1_C_M, 38U, c1_b_sf_marshallOut, + c1_b_sf_marshallIn); + _SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c1_C_N, 39U, c1_b_sf_marshallOut, + c1_b_sf_marshallIn); + _SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c1_C_X, 40U, c1_b_sf_marshallOut, + c1_b_sf_marshallIn); + _SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c1_C_Z, 41U, c1_b_sf_marshallOut, + c1_b_sf_marshallIn); + _SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c1_q_bar, 42U, c1_b_sf_marshallOut, + c1_b_sf_marshallIn); + _SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c1_nargin, 43U, c1_b_sf_marshallOut, + c1_b_sf_marshallIn); + _SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(&c1_nargout, 44U, c1_b_sf_marshallOut, + c1_b_sf_marshallIn); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_V, 45U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_alpha, 46U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_alpha_dot, 47U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_beta, 48U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_p, 49U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_q, 50U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_r, 51U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML(&c1_theta, 52U, c1_b_sf_marshallOut); + _SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(c1_F, 53U, c1_sf_marshallOut, + c1_sf_marshallIn); + _SFD_SYMBOL_SCOPE_ADD_EML_IMPORTABLE(c1_M, 54U, c1_sf_marshallOut, + c1_sf_marshallIn); + CV_EML_FCN(0, 0); + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 3); + c1_g = 9.8; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 4); + c1_rho = 1.225; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 6); + c1_m = 1043.26; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 7); + c1_C_bar = 1.493; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 8); + c1_b = 10.911; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 9); + c1_S_ref = 16.1651; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 11); + c1_C_L_0 = 0.25; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 12); + c1_C_L_alpha = 4.47; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 13); + c1_C_L_q = 1.7; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 14); + c1_C_L_delta_e = 0.3476; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 19); + c1_C_D_0 = 0.036; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 20); + c1_k = 0.3; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 22); + c1_C_Y_beta = -0.31; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 23); + c1_C_Y_p = -0.037; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 24); + c1_C_Y_r = 0.21; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 25); + c1_C_Y_delta_a = 0.0; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 27); + c1_C_l_beta = -0.089; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 28); + c1_C_l_p = -0.47; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 29); + c1_C_l_r = 0.096; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 30); + c1_C_l_delta_a = -0.09; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 31); + c1_C_l_delta_r = 0.0147; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 33); + c1_C_M_0 = -0.02; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 34); + c1_C_M_alpha = -1.8; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 35); + c1_C_M_alpha_dot = -12.4; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 36); + c1_C_M_delta_e = -1.28; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 38); + c1_C_N_beta = 0.065; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 39); + c1_C_N_p = -0.03; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 40); + c1_C_N_r = -0.99; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 41); + c1_C_N_delta_a = -0.0053; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 42); + c1_C_N_delta_r = -0.0657; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 46); + c1_delta_e = 0.0338; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 47); + c1_delta_a = 0.0; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 48); + c1_delta_r = 0.0; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 49); + c1_thrust = 4219.6; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 51); + c1_A = c1_q * 1.493; + c1_B = 2.0 * c1_V; + c1_x = c1_A; + c1_y = c1_B; + c1_b_x = c1_x; + c1_b_y = c1_y; + c1_c_x = c1_b_x; + c1_c_y = c1_b_y; + c1_d_y = c1_c_x / c1_c_y; + c1_C_L = ((c1_C_L_0 + 4.47 * c1_alpha) + 1.7 * c1_d_y) + 0.01174888; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 52); + c1_C_D = c1_C_D_0 + 0.3 * c1_mpower(chartInstance, c1_C_L); + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 53); + c1_b_A = c1_p * 10.911; + c1_b_B = 2.0 * c1_V; + c1_d_x = c1_b_A; + c1_e_y = c1_b_B; + c1_e_x = c1_d_x; + c1_f_y = c1_e_y; + c1_f_x = c1_e_x; + c1_g_y = c1_f_y; + c1_h_y = c1_f_x / c1_g_y; + c1_c_A = c1_r * 10.911; + c1_c_B = 2.0 * c1_V; + c1_g_x = c1_c_A; + c1_i_y = c1_c_B; + c1_h_x = c1_g_x; + c1_j_y = c1_i_y; + c1_i_x = c1_h_x; + c1_k_y = c1_j_y; + c1_l_y = c1_i_x / c1_k_y; + c1_C_Y = (-0.31 * c1_beta + -0.037 * c1_h_y) + 0.21 * c1_l_y; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 55); + c1_d_A = c1_p * 10.911; + c1_d_B = 2.0 * c1_V; + c1_j_x = c1_d_A; + c1_m_y = c1_d_B; + c1_k_x = c1_j_x; + c1_n_y = c1_m_y; + c1_l_x = c1_k_x; + c1_o_y = c1_n_y; + c1_p_y = c1_l_x / c1_o_y; + c1_e_A = c1_r * 10.911; + c1_e_B = 2.0 * c1_V; + c1_m_x = c1_e_A; + c1_q_y = c1_e_B; + c1_n_x = c1_m_x; + c1_r_y = c1_q_y; + c1_o_x = c1_n_x; + c1_s_y = c1_r_y; + c1_t_y = c1_o_x / c1_s_y; + c1_C_l = (-0.089 * c1_beta + -0.47 * c1_p_y) + 0.096 * c1_t_y; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 56); + c1_f_A = c1_alpha_dot * 1.493; + c1_f_B = 2.0 * c1_V; + c1_p_x = c1_f_A; + c1_u_y = c1_f_B; + c1_q_x = c1_p_x; + c1_v_y = c1_u_y; + c1_r_x = c1_q_x; + c1_w_y = c1_v_y; + c1_x_y = c1_r_x / c1_w_y; + c1_C_M = ((c1_C_M_0 + -1.8 * c1_alpha) + -12.4 * c1_x_y) + -0.043264; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 57); + c1_g_A = c1_p * 10.911; + c1_g_B = 2.0 * c1_V; + c1_s_x = c1_g_A; + c1_y_y = c1_g_B; + c1_t_x = c1_s_x; + c1_ab_y = c1_y_y; + c1_u_x = c1_t_x; + c1_bb_y = c1_ab_y; + c1_cb_y = c1_u_x / c1_bb_y; + c1_h_A = c1_r * 10.911; + c1_h_B = 2.0 * c1_V; + c1_v_x = c1_h_A; + c1_db_y = c1_h_B; + c1_w_x = c1_v_x; + c1_eb_y = c1_db_y; + c1_x_x = c1_w_x; + c1_fb_y = c1_eb_y; + c1_gb_y = c1_x_x / c1_fb_y; + c1_C_N = (0.065 * c1_beta + -0.03 * c1_cb_y) + -0.99 * c1_gb_y; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 59); + c1_y_x = c1_alpha; + c1_ab_x = c1_y_x; + c1_ab_x = muDoubleScalarCos(c1_ab_x); + c1_bb_x = c1_alpha; + c1_cb_x = c1_bb_x; + c1_cb_x = muDoubleScalarSin(c1_cb_x); + c1_C_X = -c1_C_D * c1_ab_x + c1_C_L * c1_cb_x; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 60); + c1_db_x = c1_alpha; + c1_eb_x = c1_db_x; + c1_eb_x = muDoubleScalarSin(c1_eb_x); + c1_fb_x = c1_alpha; + c1_gb_x = c1_fb_x; + c1_gb_x = muDoubleScalarCos(c1_gb_x); + c1_C_Z = -c1_C_D * c1_eb_x - c1_C_L * c1_gb_x; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 62); + for (c1_i6 = 0; c1_i6 < 3; c1_i6++) { + c1_F[c1_i6] = 0.0; + } + + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 63); + for (c1_i7 = 0; c1_i7 < 3; c1_i7++) { + c1_M[c1_i7] = 0.0; + } + + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 65); + c1_q_bar = 0.6125 * c1_V * c1_V; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 67); + c1_hb_x = c1_theta; + c1_ib_x = c1_hb_x; + c1_ib_x = muDoubleScalarSin(c1_ib_x); + c1_F[0] = (c1_q_bar * 16.1651 * c1_C_X - 10223.948 * c1_ib_x) + c1_thrust; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 68); + c1_F[1] = c1_q_bar * 16.1651 * c1_C_Y; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 69); + c1_jb_x = c1_theta; + c1_kb_x = c1_jb_x; + c1_kb_x = muDoubleScalarCos(c1_kb_x); + c1_F[2] = c1_q_bar * 16.1651 * c1_C_Z + 10223.948 * c1_kb_x; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 71); + c1_M[0] = c1_q_bar * 10.911 * 16.1651 * c1_C_l; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 72); + c1_M[1] = c1_q_bar * 1.493 * 16.1651 * c1_C_M; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, 73); + c1_M[2] = c1_q_bar * 10.911 * 16.1651 * c1_C_N; + _SFD_EML_CALL(0U, chartInstance->c1_sfEvent, -73); + _SFD_SYMBOL_SCOPE_POP(); + for (c1_i8 = 0; c1_i8 < 3; c1_i8++) { + (*c1_b_F)[c1_i8] = c1_F[c1_i8]; + } + + for (c1_i9 = 0; c1_i9 < 3; c1_i9++) { + (*c1_b_M)[c1_i9] = c1_M[c1_i9]; + } + + _SFD_CC_CALL(EXIT_OUT_OF_FUNCTION_TAG, 0U, chartInstance->c1_sfEvent); +} + +static void initSimStructsc1_Cessna_6DOF(SFc1_Cessna_6DOFInstanceStruct + *chartInstance) +{ + (void)chartInstance; +} + +static void init_script_number_translation(uint32_T c1_machineNumber, uint32_T + c1_chartNumber, uint32_T c1_instanceNumber) +{ + (void)c1_machineNumber; + (void)c1_chartNumber; + (void)c1_instanceNumber; +} + +static const mxArray *c1_sf_marshallOut(void *chartInstanceVoid, void *c1_inData) +{ + const mxArray *c1_mxArrayOutData = NULL; + int32_T c1_i10; + real_T c1_b_inData[3]; + int32_T c1_i11; + real_T c1_u[3]; + const mxArray *c1_y = NULL; + SFc1_Cessna_6DOFInstanceStruct *chartInstance; + chartInstance = (SFc1_Cessna_6DOFInstanceStruct *)chartInstanceVoid; + c1_mxArrayOutData = NULL; + for (c1_i10 = 0; c1_i10 < 3; c1_i10++) { + c1_b_inData[c1_i10] = (*(real_T (*)[3])c1_inData)[c1_i10]; + } + + for (c1_i11 = 0; c1_i11 < 3; c1_i11++) { + c1_u[c1_i11] = c1_b_inData[c1_i11]; + } + + c1_y = NULL; + sf_mex_assign(&c1_y, sf_mex_create("y", c1_u, 0, 0U, 1U, 0U, 1, 3), false); + sf_mex_assign(&c1_mxArrayOutData, c1_y, false); + return c1_mxArrayOutData; +} + +static void c1_emlrt_marshallIn(SFc1_Cessna_6DOFInstanceStruct *chartInstance, + const mxArray *c1_M, const char_T *c1_identifier, real_T c1_y[3]) +{ + emlrtMsgIdentifier c1_thisId; + c1_thisId.fIdentifier = c1_identifier; + c1_thisId.fParent = NULL; + c1_b_emlrt_marshallIn(chartInstance, sf_mex_dup(c1_M), &c1_thisId, c1_y); + sf_mex_destroy(&c1_M); +} + +static void c1_b_emlrt_marshallIn(SFc1_Cessna_6DOFInstanceStruct *chartInstance, + const mxArray *c1_u, const emlrtMsgIdentifier *c1_parentId, real_T c1_y[3]) +{ + real_T c1_dv2[3]; + int32_T c1_i12; + (void)chartInstance; + sf_mex_import(c1_parentId, sf_mex_dup(c1_u), c1_dv2, 1, 0, 0U, 1, 0U, 1, 3); + for (c1_i12 = 0; c1_i12 < 3; c1_i12++) { + c1_y[c1_i12] = c1_dv2[c1_i12]; + } + + sf_mex_destroy(&c1_u); +} + +static void c1_sf_marshallIn(void *chartInstanceVoid, const mxArray + *c1_mxArrayInData, const char_T *c1_varName, void *c1_outData) +{ + const mxArray *c1_M; + const char_T *c1_identifier; + emlrtMsgIdentifier c1_thisId; + real_T c1_y[3]; + int32_T c1_i13; + SFc1_Cessna_6DOFInstanceStruct *chartInstance; + chartInstance = (SFc1_Cessna_6DOFInstanceStruct *)chartInstanceVoid; + c1_M = sf_mex_dup(c1_mxArrayInData); + c1_identifier = c1_varName; + c1_thisId.fIdentifier = c1_identifier; + c1_thisId.fParent = NULL; + c1_b_emlrt_marshallIn(chartInstance, sf_mex_dup(c1_M), &c1_thisId, c1_y); + sf_mex_destroy(&c1_M); + for (c1_i13 = 0; c1_i13 < 3; c1_i13++) { + (*(real_T (*)[3])c1_outData)[c1_i13] = c1_y[c1_i13]; + } + + sf_mex_destroy(&c1_mxArrayInData); +} + +static const mxArray *c1_b_sf_marshallOut(void *chartInstanceVoid, void + *c1_inData) +{ + const mxArray *c1_mxArrayOutData = NULL; + real_T c1_u; + const mxArray *c1_y = NULL; + SFc1_Cessna_6DOFInstanceStruct *chartInstance; + chartInstance = (SFc1_Cessna_6DOFInstanceStruct *)chartInstanceVoid; + c1_mxArrayOutData = NULL; + c1_u = *(real_T *)c1_inData; + c1_y = NULL; + sf_mex_assign(&c1_y, sf_mex_create("y", &c1_u, 0, 0U, 0U, 0U, 0), false); + sf_mex_assign(&c1_mxArrayOutData, c1_y, false); + return c1_mxArrayOutData; +} + +static real_T c1_c_emlrt_marshallIn(SFc1_Cessna_6DOFInstanceStruct + *chartInstance, const mxArray *c1_u, const emlrtMsgIdentifier *c1_parentId) +{ + real_T c1_y; + real_T c1_d0; + (void)chartInstance; + sf_mex_import(c1_parentId, sf_mex_dup(c1_u), &c1_d0, 1, 0, 0U, 0, 0U, 0); + c1_y = c1_d0; + sf_mex_destroy(&c1_u); + return c1_y; +} + +static void c1_b_sf_marshallIn(void *chartInstanceVoid, const mxArray + *c1_mxArrayInData, const char_T *c1_varName, void *c1_outData) +{ + const mxArray *c1_nargout; + const char_T *c1_identifier; + emlrtMsgIdentifier c1_thisId; + real_T c1_y; + SFc1_Cessna_6DOFInstanceStruct *chartInstance; + chartInstance = (SFc1_Cessna_6DOFInstanceStruct *)chartInstanceVoid; + c1_nargout = sf_mex_dup(c1_mxArrayInData); + c1_identifier = c1_varName; + c1_thisId.fIdentifier = c1_identifier; + c1_thisId.fParent = NULL; + c1_y = c1_c_emlrt_marshallIn(chartInstance, sf_mex_dup(c1_nargout), &c1_thisId); + sf_mex_destroy(&c1_nargout); + *(real_T *)c1_outData = c1_y; + sf_mex_destroy(&c1_mxArrayInData); +} + +const mxArray *sf_c1_Cessna_6DOF_get_eml_resolved_functions_info(void) +{ + const mxArray *c1_nameCaptureInfo = NULL; + c1_nameCaptureInfo = NULL; + sf_mex_assign(&c1_nameCaptureInfo, sf_mex_createstruct("structure", 2, 24, 1), + false); + c1_info_helper(&c1_nameCaptureInfo); + sf_mex_emlrtNameCapturePostProcessR2012a(&c1_nameCaptureInfo); + return c1_nameCaptureInfo; +} + +static void c1_info_helper(const mxArray **c1_info) +{ + const mxArray *c1_rhs0 = NULL; + const mxArray *c1_lhs0 = NULL; + const mxArray *c1_rhs1 = NULL; + const mxArray *c1_lhs1 = NULL; + const mxArray *c1_rhs2 = NULL; + const mxArray *c1_lhs2 = NULL; + const mxArray *c1_rhs3 = NULL; + const mxArray *c1_lhs3 = NULL; + const mxArray *c1_rhs4 = NULL; + const mxArray *c1_lhs4 = NULL; + const mxArray *c1_rhs5 = NULL; + const mxArray *c1_lhs5 = NULL; + const mxArray *c1_rhs6 = NULL; + const mxArray *c1_lhs6 = NULL; + const mxArray *c1_rhs7 = NULL; + const mxArray *c1_lhs7 = NULL; + const mxArray *c1_rhs8 = NULL; + const mxArray *c1_lhs8 = NULL; + const mxArray *c1_rhs9 = NULL; + const mxArray *c1_lhs9 = NULL; + const mxArray *c1_rhs10 = NULL; + const mxArray *c1_lhs10 = NULL; + const mxArray *c1_rhs11 = NULL; + const mxArray *c1_lhs11 = NULL; + const mxArray *c1_rhs12 = NULL; + const mxArray *c1_lhs12 = NULL; + const mxArray *c1_rhs13 = NULL; + const mxArray *c1_lhs13 = NULL; + const mxArray *c1_rhs14 = NULL; + const mxArray *c1_lhs14 = NULL; + const mxArray *c1_rhs15 = NULL; + const mxArray *c1_lhs15 = NULL; + const mxArray *c1_rhs16 = NULL; + const mxArray *c1_lhs16 = NULL; + const mxArray *c1_rhs17 = NULL; + const mxArray *c1_lhs17 = NULL; + const mxArray *c1_rhs18 = NULL; + const mxArray *c1_lhs18 = NULL; + const mxArray *c1_rhs19 = NULL; + const mxArray *c1_lhs19 = NULL; + const mxArray *c1_rhs20 = NULL; + const mxArray *c1_lhs20 = NULL; + const mxArray *c1_rhs21 = NULL; + const mxArray *c1_lhs21 = NULL; + const mxArray *c1_rhs22 = NULL; + const mxArray *c1_lhs22 = NULL; + const mxArray *c1_rhs23 = NULL; + const mxArray *c1_lhs23 = NULL; + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut(""), "context", "context", 0); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("mrdivide"), "name", "name", 0); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("double"), "dominantType", + "dominantType", 0); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/ops/mrdivide.p"), "resolved", + "resolved", 0); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(1388463696U), "fileTimeLo", + "fileTimeLo", 0); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "fileTimeHi", + "fileTimeHi", 0); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(1370017086U), "mFileTimeLo", + "mFileTimeLo", 0); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeHi", + "mFileTimeHi", 0); + sf_mex_assign(&c1_rhs0, sf_mex_createcellmatrix(0, 1), false); + sf_mex_assign(&c1_lhs0, sf_mex_createcellmatrix(0, 1), false); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_rhs0), "rhs", "rhs", 0); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_lhs0), "lhs", "lhs", 0); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/ops/mrdivide.p"), "context", + "context", 1); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("coder.internal.assert"), + "name", "name", 1); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("char"), "dominantType", + "dominantType", 1); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[IXE]$matlabroot$/toolbox/shared/coder/coder/+coder/+internal/assert.m"), + "resolved", "resolved", 1); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(1363718156U), "fileTimeLo", + "fileTimeLo", 1); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "fileTimeHi", + "fileTimeHi", 1); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeLo", + "mFileTimeLo", 1); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeHi", + "mFileTimeHi", 1); + sf_mex_assign(&c1_rhs1, sf_mex_createcellmatrix(0, 1), false); + sf_mex_assign(&c1_lhs1, sf_mex_createcellmatrix(0, 1), false); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_rhs1), "rhs", "rhs", 1); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_lhs1), "lhs", "lhs", 1); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/ops/mrdivide.p"), "context", + "context", 2); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("rdivide"), "name", "name", 2); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("double"), "dominantType", + "dominantType", 2); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/ops/rdivide.m"), "resolved", + "resolved", 2); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(1363717480U), "fileTimeLo", + "fileTimeLo", 2); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "fileTimeHi", + "fileTimeHi", 2); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeLo", + "mFileTimeLo", 2); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeHi", + "mFileTimeHi", 2); + sf_mex_assign(&c1_rhs2, sf_mex_createcellmatrix(0, 1), false); + sf_mex_assign(&c1_lhs2, sf_mex_createcellmatrix(0, 1), false); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_rhs2), "rhs", "rhs", 2); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_lhs2), "lhs", "lhs", 2); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/ops/rdivide.m"), "context", + "context", 3); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "coder.internal.isBuiltInNumeric"), "name", "name", 3); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("double"), "dominantType", + "dominantType", 3); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[IXE]$matlabroot$/toolbox/shared/coder/coder/+coder/+internal/isBuiltInNumeric.m"), + "resolved", "resolved", 3); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(1363718156U), "fileTimeLo", + "fileTimeLo", 3); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "fileTimeHi", + "fileTimeHi", 3); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeLo", + "mFileTimeLo", 3); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeHi", + "mFileTimeHi", 3); + sf_mex_assign(&c1_rhs3, sf_mex_createcellmatrix(0, 1), false); + sf_mex_assign(&c1_lhs3, sf_mex_createcellmatrix(0, 1), false); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_rhs3), "rhs", "rhs", 3); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_lhs3), "lhs", "lhs", 3); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/ops/rdivide.m"), "context", + "context", 4); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("eml_scalexp_compatible"), + "name", "name", 4); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("double"), "dominantType", + "dominantType", 4); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/eml/eml_scalexp_compatible.m"), + "resolved", "resolved", 4); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(1286825996U), "fileTimeLo", + "fileTimeLo", 4); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "fileTimeHi", + "fileTimeHi", 4); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeLo", + "mFileTimeLo", 4); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeHi", + "mFileTimeHi", 4); + sf_mex_assign(&c1_rhs4, sf_mex_createcellmatrix(0, 1), false); + sf_mex_assign(&c1_lhs4, sf_mex_createcellmatrix(0, 1), false); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_rhs4), "rhs", "rhs", 4); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_lhs4), "lhs", "lhs", 4); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/ops/rdivide.m"), "context", + "context", 5); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("eml_div"), "name", "name", 5); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("double"), "dominantType", + "dominantType", 5); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/eml/eml_div.m"), "resolved", + "resolved", 5); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(1375987888U), "fileTimeLo", + "fileTimeLo", 5); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "fileTimeHi", + "fileTimeHi", 5); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeLo", + "mFileTimeLo", 5); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeHi", + "mFileTimeHi", 5); + sf_mex_assign(&c1_rhs5, sf_mex_createcellmatrix(0, 1), false); + sf_mex_assign(&c1_lhs5, sf_mex_createcellmatrix(0, 1), false); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_rhs5), "rhs", "rhs", 5); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_lhs5), "lhs", "lhs", 5); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/eml/eml_div.m"), "context", + "context", 6); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("coder.internal.div"), "name", + "name", 6); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("double"), "dominantType", + "dominantType", 6); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[IXE]$matlabroot$/toolbox/coder/coder/+coder/+internal/div.p"), "resolved", + "resolved", 6); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(1389311520U), "fileTimeLo", + "fileTimeLo", 6); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "fileTimeHi", + "fileTimeHi", 6); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeLo", + "mFileTimeLo", 6); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeHi", + "mFileTimeHi", 6); + sf_mex_assign(&c1_rhs6, sf_mex_createcellmatrix(0, 1), false); + sf_mex_assign(&c1_lhs6, sf_mex_createcellmatrix(0, 1), false); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_rhs6), "rhs", "rhs", 6); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_lhs6), "lhs", "lhs", 6); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut(""), "context", "context", 7); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("mpower"), "name", "name", 7); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("double"), "dominantType", + "dominantType", 7); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/ops/mpower.m"), "resolved", + "resolved", 7); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(1363717478U), "fileTimeLo", + "fileTimeLo", 7); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "fileTimeHi", + "fileTimeHi", 7); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeLo", + "mFileTimeLo", 7); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeHi", + "mFileTimeHi", 7); + sf_mex_assign(&c1_rhs7, sf_mex_createcellmatrix(0, 1), false); + sf_mex_assign(&c1_lhs7, sf_mex_createcellmatrix(0, 1), false); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_rhs7), "rhs", "rhs", 7); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_lhs7), "lhs", "lhs", 7); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/ops/mpower.m"), "context", + "context", 8); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "coder.internal.isBuiltInNumeric"), "name", "name", 8); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("double"), "dominantType", + "dominantType", 8); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[IXE]$matlabroot$/toolbox/shared/coder/coder/+coder/+internal/isBuiltInNumeric.m"), + "resolved", "resolved", 8); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(1363718156U), "fileTimeLo", + "fileTimeLo", 8); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "fileTimeHi", + "fileTimeHi", 8); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeLo", + "mFileTimeLo", 8); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeHi", + "mFileTimeHi", 8); + sf_mex_assign(&c1_rhs8, sf_mex_createcellmatrix(0, 1), false); + sf_mex_assign(&c1_lhs8, sf_mex_createcellmatrix(0, 1), false); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_rhs8), "rhs", "rhs", 8); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_lhs8), "lhs", "lhs", 8); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/ops/mpower.m"), "context", + "context", 9); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("ismatrix"), "name", "name", 9); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("double"), "dominantType", + "dominantType", 9); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/elmat/ismatrix.m"), "resolved", + "resolved", 9); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(1331308458U), "fileTimeLo", + "fileTimeLo", 9); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "fileTimeHi", + "fileTimeHi", 9); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeLo", + "mFileTimeLo", 9); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeHi", + "mFileTimeHi", 9); + sf_mex_assign(&c1_rhs9, sf_mex_createcellmatrix(0, 1), false); + sf_mex_assign(&c1_lhs9, sf_mex_createcellmatrix(0, 1), false); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_rhs9), "rhs", "rhs", 9); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_lhs9), "lhs", "lhs", 9); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/ops/mpower.m"), "context", + "context", 10); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("power"), "name", "name", 10); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("double"), "dominantType", + "dominantType", 10); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/ops/power.m"), "resolved", + "resolved", 10); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(1363717480U), "fileTimeLo", + "fileTimeLo", 10); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "fileTimeHi", + "fileTimeHi", 10); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeLo", + "mFileTimeLo", 10); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeHi", + "mFileTimeHi", 10); + sf_mex_assign(&c1_rhs10, sf_mex_createcellmatrix(0, 1), false); + sf_mex_assign(&c1_lhs10, sf_mex_createcellmatrix(0, 1), false); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_rhs10), "rhs", "rhs", + 10); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_lhs10), "lhs", "lhs", + 10); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/ops/power.m"), "context", + "context", 11); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "coder.internal.isBuiltInNumeric"), "name", "name", 11); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("double"), "dominantType", + "dominantType", 11); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[IXE]$matlabroot$/toolbox/shared/coder/coder/+coder/+internal/isBuiltInNumeric.m"), + "resolved", "resolved", 11); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(1363718156U), "fileTimeLo", + "fileTimeLo", 11); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "fileTimeHi", + "fileTimeHi", 11); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeLo", + "mFileTimeLo", 11); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeHi", + "mFileTimeHi", 11); + sf_mex_assign(&c1_rhs11, sf_mex_createcellmatrix(0, 1), false); + sf_mex_assign(&c1_lhs11, sf_mex_createcellmatrix(0, 1), false); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_rhs11), "rhs", "rhs", + 11); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_lhs11), "lhs", "lhs", + 11); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/ops/power.m!fltpower"), "context", + "context", 12); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("eml_scalar_eg"), "name", + "name", 12); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("double"), "dominantType", + "dominantType", 12); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/eml/eml_scalar_eg.m"), "resolved", + "resolved", 12); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(1375987888U), "fileTimeLo", + "fileTimeLo", 12); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "fileTimeHi", + "fileTimeHi", 12); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeLo", + "mFileTimeLo", 12); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeHi", + "mFileTimeHi", 12); + sf_mex_assign(&c1_rhs12, sf_mex_createcellmatrix(0, 1), false); + sf_mex_assign(&c1_lhs12, sf_mex_createcellmatrix(0, 1), false); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_rhs12), "rhs", "rhs", + 12); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_lhs12), "lhs", "lhs", + 12); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/eml/eml_scalar_eg.m"), "context", + "context", 13); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("coder.internal.scalarEg"), + "name", "name", 13); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("double"), "dominantType", + "dominantType", 13); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[IXE]$matlabroot$/toolbox/coder/coder/+coder/+internal/scalarEg.p"), + "resolved", "resolved", 13); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(1389311520U), "fileTimeLo", + "fileTimeLo", 13); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "fileTimeHi", + "fileTimeHi", 13); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeLo", + "mFileTimeLo", 13); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeHi", + "mFileTimeHi", 13); + sf_mex_assign(&c1_rhs13, sf_mex_createcellmatrix(0, 1), false); + sf_mex_assign(&c1_lhs13, sf_mex_createcellmatrix(0, 1), false); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_rhs13), "rhs", "rhs", + 13); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_lhs13), "lhs", "lhs", + 13); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/ops/power.m!fltpower"), "context", + "context", 14); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("eml_scalexp_alloc"), "name", + "name", 14); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("double"), "dominantType", + "dominantType", 14); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/eml/eml_scalexp_alloc.m"), + "resolved", "resolved", 14); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(1375987888U), "fileTimeLo", + "fileTimeLo", 14); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "fileTimeHi", + "fileTimeHi", 14); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeLo", + "mFileTimeLo", 14); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeHi", + "mFileTimeHi", 14); + sf_mex_assign(&c1_rhs14, sf_mex_createcellmatrix(0, 1), false); + sf_mex_assign(&c1_lhs14, sf_mex_createcellmatrix(0, 1), false); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_rhs14), "rhs", "rhs", + 14); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_lhs14), "lhs", "lhs", + 14); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/eml/eml_scalexp_alloc.m"), + "context", "context", 15); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("coder.internal.scalexpAlloc"), + "name", "name", 15); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("double"), "dominantType", + "dominantType", 15); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[IXE]$matlabroot$/toolbox/coder/coder/+coder/+internal/scalexpAlloc.p"), + "resolved", "resolved", 15); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(1389311520U), "fileTimeLo", + "fileTimeLo", 15); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "fileTimeHi", + "fileTimeHi", 15); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeLo", + "mFileTimeLo", 15); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeHi", + "mFileTimeHi", 15); + sf_mex_assign(&c1_rhs15, sf_mex_createcellmatrix(0, 1), false); + sf_mex_assign(&c1_lhs15, sf_mex_createcellmatrix(0, 1), false); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_rhs15), "rhs", "rhs", + 15); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_lhs15), "lhs", "lhs", + 15); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/ops/power.m!fltpower"), "context", + "context", 16); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("floor"), "name", "name", 16); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("double"), "dominantType", + "dominantType", 16); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/elfun/floor.m"), "resolved", + "resolved", 16); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(1363717454U), "fileTimeLo", + "fileTimeLo", 16); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "fileTimeHi", + "fileTimeHi", 16); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeLo", + "mFileTimeLo", 16); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeHi", + "mFileTimeHi", 16); + sf_mex_assign(&c1_rhs16, sf_mex_createcellmatrix(0, 1), false); + sf_mex_assign(&c1_lhs16, sf_mex_createcellmatrix(0, 1), false); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_rhs16), "rhs", "rhs", + 16); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_lhs16), "lhs", "lhs", + 16); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/elfun/floor.m"), "context", + "context", 17); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "coder.internal.isBuiltInNumeric"), "name", "name", 17); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("double"), "dominantType", + "dominantType", 17); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[IXE]$matlabroot$/toolbox/shared/coder/coder/+coder/+internal/isBuiltInNumeric.m"), + "resolved", "resolved", 17); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(1363718156U), "fileTimeLo", + "fileTimeLo", 17); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "fileTimeHi", + "fileTimeHi", 17); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeLo", + "mFileTimeLo", 17); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeHi", + "mFileTimeHi", 17); + sf_mex_assign(&c1_rhs17, sf_mex_createcellmatrix(0, 1), false); + sf_mex_assign(&c1_lhs17, sf_mex_createcellmatrix(0, 1), false); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_rhs17), "rhs", "rhs", + 17); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_lhs17), "lhs", "lhs", + 17); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/elfun/floor.m"), "context", + "context", 18); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("eml_scalar_floor"), "name", + "name", 18); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("double"), "dominantType", + "dominantType", 18); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/elfun/eml_scalar_floor.m"), + "resolved", "resolved", 18); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(1286825926U), "fileTimeLo", + "fileTimeLo", 18); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "fileTimeHi", + "fileTimeHi", 18); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeLo", + "mFileTimeLo", 18); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeHi", + "mFileTimeHi", 18); + sf_mex_assign(&c1_rhs18, sf_mex_createcellmatrix(0, 1), false); + sf_mex_assign(&c1_lhs18, sf_mex_createcellmatrix(0, 1), false); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_rhs18), "rhs", "rhs", + 18); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_lhs18), "lhs", "lhs", + 18); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/ops/power.m!scalar_float_power"), + "context", "context", 19); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("eml_scalar_eg"), "name", + "name", 19); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("double"), "dominantType", + "dominantType", 19); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/eml/eml_scalar_eg.m"), "resolved", + "resolved", 19); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(1375987888U), "fileTimeLo", + "fileTimeLo", 19); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "fileTimeHi", + "fileTimeHi", 19); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeLo", + "mFileTimeLo", 19); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeHi", + "mFileTimeHi", 19); + sf_mex_assign(&c1_rhs19, sf_mex_createcellmatrix(0, 1), false); + sf_mex_assign(&c1_lhs19, sf_mex_createcellmatrix(0, 1), false); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_rhs19), "rhs", "rhs", + 19); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_lhs19), "lhs", "lhs", + 19); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut(""), "context", "context", 20); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("cos"), "name", "name", 20); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("double"), "dominantType", + "dominantType", 20); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/elfun/cos.m"), "resolved", + "resolved", 20); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(1343837572U), "fileTimeLo", + "fileTimeLo", 20); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "fileTimeHi", + "fileTimeHi", 20); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeLo", + "mFileTimeLo", 20); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeHi", + "mFileTimeHi", 20); + sf_mex_assign(&c1_rhs20, sf_mex_createcellmatrix(0, 1), false); + sf_mex_assign(&c1_lhs20, sf_mex_createcellmatrix(0, 1), false); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_rhs20), "rhs", "rhs", + 20); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_lhs20), "lhs", "lhs", + 20); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/elfun/cos.m"), "context", + "context", 21); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("eml_scalar_cos"), "name", + "name", 21); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("double"), "dominantType", + "dominantType", 21); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/elfun/eml_scalar_cos.m"), + "resolved", "resolved", 21); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(1286825922U), "fileTimeLo", + "fileTimeLo", 21); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "fileTimeHi", + "fileTimeHi", 21); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeLo", + "mFileTimeLo", 21); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeHi", + "mFileTimeHi", 21); + sf_mex_assign(&c1_rhs21, sf_mex_createcellmatrix(0, 1), false); + sf_mex_assign(&c1_lhs21, sf_mex_createcellmatrix(0, 1), false); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_rhs21), "rhs", "rhs", + 21); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_lhs21), "lhs", "lhs", + 21); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut(""), "context", "context", 22); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("sin"), "name", "name", 22); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("double"), "dominantType", + "dominantType", 22); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/elfun/sin.m"), "resolved", + "resolved", 22); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(1343837586U), "fileTimeLo", + "fileTimeLo", 22); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "fileTimeHi", + "fileTimeHi", 22); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeLo", + "mFileTimeLo", 22); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeHi", + "mFileTimeHi", 22); + sf_mex_assign(&c1_rhs22, sf_mex_createcellmatrix(0, 1), false); + sf_mex_assign(&c1_lhs22, sf_mex_createcellmatrix(0, 1), false); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_rhs22), "rhs", "rhs", + 22); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_lhs22), "lhs", "lhs", + 22); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/elfun/sin.m"), "context", + "context", 23); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("eml_scalar_sin"), "name", + "name", 23); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut("double"), "dominantType", + "dominantType", 23); + sf_mex_addfield(*c1_info, c1_emlrt_marshallOut( + "[ILXE]$matlabroot$/toolbox/eml/lib/matlab/elfun/eml_scalar_sin.m"), + "resolved", "resolved", 23); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(1286825936U), "fileTimeLo", + "fileTimeLo", 23); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "fileTimeHi", + "fileTimeHi", 23); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeLo", + "mFileTimeLo", 23); + sf_mex_addfield(*c1_info, c1_b_emlrt_marshallOut(0U), "mFileTimeHi", + "mFileTimeHi", 23); + sf_mex_assign(&c1_rhs23, sf_mex_createcellmatrix(0, 1), false); + sf_mex_assign(&c1_lhs23, sf_mex_createcellmatrix(0, 1), false); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_rhs23), "rhs", "rhs", + 23); + sf_mex_addfield(*c1_info, sf_mex_duplicatearraysafe(&c1_lhs23), "lhs", "lhs", + 23); + sf_mex_destroy(&c1_rhs0); + sf_mex_destroy(&c1_lhs0); + sf_mex_destroy(&c1_rhs1); + sf_mex_destroy(&c1_lhs1); + sf_mex_destroy(&c1_rhs2); + sf_mex_destroy(&c1_lhs2); + sf_mex_destroy(&c1_rhs3); + sf_mex_destroy(&c1_lhs3); + sf_mex_destroy(&c1_rhs4); + sf_mex_destroy(&c1_lhs4); + sf_mex_destroy(&c1_rhs5); + sf_mex_destroy(&c1_lhs5); + sf_mex_destroy(&c1_rhs6); + sf_mex_destroy(&c1_lhs6); + sf_mex_destroy(&c1_rhs7); + sf_mex_destroy(&c1_lhs7); + sf_mex_destroy(&c1_rhs8); + sf_mex_destroy(&c1_lhs8); + sf_mex_destroy(&c1_rhs9); + sf_mex_destroy(&c1_lhs9); + sf_mex_destroy(&c1_rhs10); + sf_mex_destroy(&c1_lhs10); + sf_mex_destroy(&c1_rhs11); + sf_mex_destroy(&c1_lhs11); + sf_mex_destroy(&c1_rhs12); + sf_mex_destroy(&c1_lhs12); + sf_mex_destroy(&c1_rhs13); + sf_mex_destroy(&c1_lhs13); + sf_mex_destroy(&c1_rhs14); + sf_mex_destroy(&c1_lhs14); + sf_mex_destroy(&c1_rhs15); + sf_mex_destroy(&c1_lhs15); + sf_mex_destroy(&c1_rhs16); + sf_mex_destroy(&c1_lhs16); + sf_mex_destroy(&c1_rhs17); + sf_mex_destroy(&c1_lhs17); + sf_mex_destroy(&c1_rhs18); + sf_mex_destroy(&c1_lhs18); + sf_mex_destroy(&c1_rhs19); + sf_mex_destroy(&c1_lhs19); + sf_mex_destroy(&c1_rhs20); + sf_mex_destroy(&c1_lhs20); + sf_mex_destroy(&c1_rhs21); + sf_mex_destroy(&c1_lhs21); + sf_mex_destroy(&c1_rhs22); + sf_mex_destroy(&c1_lhs22); + sf_mex_destroy(&c1_rhs23); + sf_mex_destroy(&c1_lhs23); +} + +static const mxArray *c1_emlrt_marshallOut(const char * c1_u) +{ + const mxArray *c1_y = NULL; + c1_y = NULL; + sf_mex_assign(&c1_y, sf_mex_create("y", c1_u, 15, 0U, 0U, 0U, 2, 1, strlen + (c1_u)), false); + return c1_y; +} + +static const mxArray *c1_b_emlrt_marshallOut(const uint32_T c1_u) +{ + const mxArray *c1_y = NULL; + c1_y = NULL; + sf_mex_assign(&c1_y, sf_mex_create("y", &c1_u, 7, 0U, 0U, 0U, 0), false); + return c1_y; +} + +static real_T c1_mpower(SFc1_Cessna_6DOFInstanceStruct *chartInstance, real_T + c1_a) +{ + real_T c1_b_a; + real_T c1_c_a; + real_T c1_ak; + real_T c1_d_a; + c1_b_a = c1_a; + c1_c_a = c1_b_a; + c1_eml_scalar_eg(chartInstance); + c1_ak = c1_c_a; + c1_d_a = c1_ak; + c1_eml_scalar_eg(chartInstance); + return c1_d_a * c1_d_a; +} + +static void c1_eml_scalar_eg(SFc1_Cessna_6DOFInstanceStruct *chartInstance) +{ + (void)chartInstance; +} + +static const mxArray *c1_c_sf_marshallOut(void *chartInstanceVoid, void + *c1_inData) +{ + const mxArray *c1_mxArrayOutData = NULL; + int32_T c1_u; + const mxArray *c1_y = NULL; + SFc1_Cessna_6DOFInstanceStruct *chartInstance; + chartInstance = (SFc1_Cessna_6DOFInstanceStruct *)chartInstanceVoid; + c1_mxArrayOutData = NULL; + c1_u = *(int32_T *)c1_inData; + c1_y = NULL; + sf_mex_assign(&c1_y, sf_mex_create("y", &c1_u, 6, 0U, 0U, 0U, 0), false); + sf_mex_assign(&c1_mxArrayOutData, c1_y, false); + return c1_mxArrayOutData; +} + +static int32_T c1_d_emlrt_marshallIn(SFc1_Cessna_6DOFInstanceStruct + *chartInstance, const mxArray *c1_u, const emlrtMsgIdentifier *c1_parentId) +{ + int32_T c1_y; + int32_T c1_i14; + (void)chartInstance; + sf_mex_import(c1_parentId, sf_mex_dup(c1_u), &c1_i14, 1, 6, 0U, 0, 0U, 0); + c1_y = c1_i14; + sf_mex_destroy(&c1_u); + return c1_y; +} + +static void c1_c_sf_marshallIn(void *chartInstanceVoid, const mxArray + *c1_mxArrayInData, const char_T *c1_varName, void *c1_outData) +{ + const mxArray *c1_b_sfEvent; + const char_T *c1_identifier; + emlrtMsgIdentifier c1_thisId; + int32_T c1_y; + SFc1_Cessna_6DOFInstanceStruct *chartInstance; + chartInstance = (SFc1_Cessna_6DOFInstanceStruct *)chartInstanceVoid; + c1_b_sfEvent = sf_mex_dup(c1_mxArrayInData); + c1_identifier = c1_varName; + c1_thisId.fIdentifier = c1_identifier; + c1_thisId.fParent = NULL; + c1_y = c1_d_emlrt_marshallIn(chartInstance, sf_mex_dup(c1_b_sfEvent), + &c1_thisId); + sf_mex_destroy(&c1_b_sfEvent); + *(int32_T *)c1_outData = c1_y; + sf_mex_destroy(&c1_mxArrayInData); +} + +static uint8_T c1_e_emlrt_marshallIn(SFc1_Cessna_6DOFInstanceStruct + *chartInstance, const mxArray *c1_b_is_active_c1_Cessna_6DOF, const char_T + *c1_identifier) +{ + uint8_T c1_y; + emlrtMsgIdentifier c1_thisId; + c1_thisId.fIdentifier = c1_identifier; + c1_thisId.fParent = NULL; + c1_y = c1_f_emlrt_marshallIn(chartInstance, sf_mex_dup + (c1_b_is_active_c1_Cessna_6DOF), &c1_thisId); + sf_mex_destroy(&c1_b_is_active_c1_Cessna_6DOF); + return c1_y; +} + +static uint8_T c1_f_emlrt_marshallIn(SFc1_Cessna_6DOFInstanceStruct + *chartInstance, const mxArray *c1_u, const emlrtMsgIdentifier *c1_parentId) +{ + uint8_T c1_y; + uint8_T c1_u0; + (void)chartInstance; + sf_mex_import(c1_parentId, sf_mex_dup(c1_u), &c1_u0, 1, 3, 0U, 0, 0U, 0); + c1_y = c1_u0; + sf_mex_destroy(&c1_u); + return c1_y; +} + +static void init_dsm_address_info(SFc1_Cessna_6DOFInstanceStruct *chartInstance) +{ + (void)chartInstance; +} + +/* SFunction Glue Code */ +#ifdef utFree +#undef utFree +#endif + +#ifdef utMalloc +#undef utMalloc +#endif + +#ifdef __cplusplus + +extern "C" void *utMalloc(size_t size); +extern "C" void utFree(void*); + +#else + +extern void *utMalloc(size_t size); +extern void utFree(void*); + +#endif + +void sf_c1_Cessna_6DOF_get_check_sum(mxArray *plhs[]) +{ + ((real_T *)mxGetPr((plhs[0])))[0] = (real_T)(2441411494U); + ((real_T *)mxGetPr((plhs[0])))[1] = (real_T)(3799077463U); + ((real_T *)mxGetPr((plhs[0])))[2] = (real_T)(3332296302U); + ((real_T *)mxGetPr((plhs[0])))[3] = (real_T)(1856172960U); +} + +mxArray *sf_c1_Cessna_6DOF_get_autoinheritance_info(void) +{ + const char *autoinheritanceFields[] = { "checksum", "inputs", "parameters", + "outputs", "locals" }; + + mxArray *mxAutoinheritanceInfo = mxCreateStructMatrix(1,1,5, + autoinheritanceFields); + + { + mxArray *mxChecksum = mxCreateString("B6ShapczQeOvAhTG9KtlQC"); + mxSetField(mxAutoinheritanceInfo,0,"checksum",mxChecksum); + } + + { + const char *dataFields[] = { "size", "type", "complexity" }; + + mxArray *mxData = mxCreateStructMatrix(1,8,3,dataFields); + + { + mxArray *mxSize = mxCreateDoubleMatrix(1,2,mxREAL); + double *pr = mxGetPr(mxSize); + pr[0] = (double)(1); + pr[1] = (double)(1); + mxSetField(mxData,0,"size",mxSize); + } + + { + const char *typeFields[] = { "base", "fixpt" }; + + mxArray *mxType = mxCreateStructMatrix(1,1,2,typeFields); + mxSetField(mxType,0,"base",mxCreateDoubleScalar(10)); + mxSetField(mxType,0,"fixpt",mxCreateDoubleMatrix(0,0,mxREAL)); + mxSetField(mxData,0,"type",mxType); + } + + mxSetField(mxData,0,"complexity",mxCreateDoubleScalar(0)); + + { + mxArray *mxSize = mxCreateDoubleMatrix(1,2,mxREAL); + double *pr = mxGetPr(mxSize); + pr[0] = (double)(1); + pr[1] = (double)(1); + mxSetField(mxData,1,"size",mxSize); + } + + { + const char *typeFields[] = { "base", "fixpt" }; + + mxArray *mxType = mxCreateStructMatrix(1,1,2,typeFields); + mxSetField(mxType,0,"base",mxCreateDoubleScalar(10)); + mxSetField(mxType,0,"fixpt",mxCreateDoubleMatrix(0,0,mxREAL)); + mxSetField(mxData,1,"type",mxType); + } + + mxSetField(mxData,1,"complexity",mxCreateDoubleScalar(0)); + + { + mxArray *mxSize = mxCreateDoubleMatrix(1,2,mxREAL); + double *pr = mxGetPr(mxSize); + pr[0] = (double)(1); + pr[1] = (double)(1); + mxSetField(mxData,2,"size",mxSize); + } + + { + const char *typeFields[] = { "base", "fixpt" }; + + mxArray *mxType = mxCreateStructMatrix(1,1,2,typeFields); + mxSetField(mxType,0,"base",mxCreateDoubleScalar(10)); + mxSetField(mxType,0,"fixpt",mxCreateDoubleMatrix(0,0,mxREAL)); + mxSetField(mxData,2,"type",mxType); + } + + mxSetField(mxData,2,"complexity",mxCreateDoubleScalar(0)); + + { + mxArray *mxSize = mxCreateDoubleMatrix(1,2,mxREAL); + double *pr = mxGetPr(mxSize); + pr[0] = (double)(1); + pr[1] = (double)(1); + mxSetField(mxData,3,"size",mxSize); + } + + { + const char *typeFields[] = { "base", "fixpt" }; + + mxArray *mxType = mxCreateStructMatrix(1,1,2,typeFields); + mxSetField(mxType,0,"base",mxCreateDoubleScalar(10)); + mxSetField(mxType,0,"fixpt",mxCreateDoubleMatrix(0,0,mxREAL)); + mxSetField(mxData,3,"type",mxType); + } + + mxSetField(mxData,3,"complexity",mxCreateDoubleScalar(0)); + + { + mxArray *mxSize = mxCreateDoubleMatrix(1,2,mxREAL); + double *pr = mxGetPr(mxSize); + pr[0] = (double)(1); + pr[1] = (double)(1); + mxSetField(mxData,4,"size",mxSize); + } + + { + const char *typeFields[] = { "base", "fixpt" }; + + mxArray *mxType = mxCreateStructMatrix(1,1,2,typeFields); + mxSetField(mxType,0,"base",mxCreateDoubleScalar(10)); + mxSetField(mxType,0,"fixpt",mxCreateDoubleMatrix(0,0,mxREAL)); + mxSetField(mxData,4,"type",mxType); + } + + mxSetField(mxData,4,"complexity",mxCreateDoubleScalar(0)); + + { + mxArray *mxSize = mxCreateDoubleMatrix(1,2,mxREAL); + double *pr = mxGetPr(mxSize); + pr[0] = (double)(1); + pr[1] = (double)(1); + mxSetField(mxData,5,"size",mxSize); + } + + { + const char *typeFields[] = { "base", "fixpt" }; + + mxArray *mxType = mxCreateStructMatrix(1,1,2,typeFields); + mxSetField(mxType,0,"base",mxCreateDoubleScalar(10)); + mxSetField(mxType,0,"fixpt",mxCreateDoubleMatrix(0,0,mxREAL)); + mxSetField(mxData,5,"type",mxType); + } + + mxSetField(mxData,5,"complexity",mxCreateDoubleScalar(0)); + + { + mxArray *mxSize = mxCreateDoubleMatrix(1,2,mxREAL); + double *pr = mxGetPr(mxSize); + pr[0] = (double)(1); + pr[1] = (double)(1); + mxSetField(mxData,6,"size",mxSize); + } + + { + const char *typeFields[] = { "base", "fixpt" }; + + mxArray *mxType = mxCreateStructMatrix(1,1,2,typeFields); + mxSetField(mxType,0,"base",mxCreateDoubleScalar(10)); + mxSetField(mxType,0,"fixpt",mxCreateDoubleMatrix(0,0,mxREAL)); + mxSetField(mxData,6,"type",mxType); + } + + mxSetField(mxData,6,"complexity",mxCreateDoubleScalar(0)); + + { + mxArray *mxSize = mxCreateDoubleMatrix(1,2,mxREAL); + double *pr = mxGetPr(mxSize); + pr[0] = (double)(1); + pr[1] = (double)(1); + mxSetField(mxData,7,"size",mxSize); + } + + { + const char *typeFields[] = { "base", "fixpt" }; + + mxArray *mxType = mxCreateStructMatrix(1,1,2,typeFields); + mxSetField(mxType,0,"base",mxCreateDoubleScalar(10)); + mxSetField(mxType,0,"fixpt",mxCreateDoubleMatrix(0,0,mxREAL)); + mxSetField(mxData,7,"type",mxType); + } + + mxSetField(mxData,7,"complexity",mxCreateDoubleScalar(0)); + mxSetField(mxAutoinheritanceInfo,0,"inputs",mxData); + } + + { + mxSetField(mxAutoinheritanceInfo,0,"parameters",mxCreateDoubleMatrix(0,0, + mxREAL)); + } + + { + const char *dataFields[] = { "size", "type", "complexity" }; + + mxArray *mxData = mxCreateStructMatrix(1,2,3,dataFields); + + { + mxArray *mxSize = mxCreateDoubleMatrix(1,2,mxREAL); + double *pr = mxGetPr(mxSize); + pr[0] = (double)(3); + pr[1] = (double)(1); + mxSetField(mxData,0,"size",mxSize); + } + + { + const char *typeFields[] = { "base", "fixpt" }; + + mxArray *mxType = mxCreateStructMatrix(1,1,2,typeFields); + mxSetField(mxType,0,"base",mxCreateDoubleScalar(10)); + mxSetField(mxType,0,"fixpt",mxCreateDoubleMatrix(0,0,mxREAL)); + mxSetField(mxData,0,"type",mxType); + } + + mxSetField(mxData,0,"complexity",mxCreateDoubleScalar(0)); + + { + mxArray *mxSize = mxCreateDoubleMatrix(1,2,mxREAL); + double *pr = mxGetPr(mxSize); + pr[0] = (double)(3); + pr[1] = (double)(1); + mxSetField(mxData,1,"size",mxSize); + } + + { + const char *typeFields[] = { "base", "fixpt" }; + + mxArray *mxType = mxCreateStructMatrix(1,1,2,typeFields); + mxSetField(mxType,0,"base",mxCreateDoubleScalar(10)); + mxSetField(mxType,0,"fixpt",mxCreateDoubleMatrix(0,0,mxREAL)); + mxSetField(mxData,1,"type",mxType); + } + + mxSetField(mxData,1,"complexity",mxCreateDoubleScalar(0)); + mxSetField(mxAutoinheritanceInfo,0,"outputs",mxData); + } + + { + mxSetField(mxAutoinheritanceInfo,0,"locals",mxCreateDoubleMatrix(0,0,mxREAL)); + } + + return(mxAutoinheritanceInfo); +} + +mxArray *sf_c1_Cessna_6DOF_third_party_uses_info(void) +{ + mxArray * mxcell3p = mxCreateCellMatrix(1,0); + return(mxcell3p); +} + +mxArray *sf_c1_Cessna_6DOF_updateBuildInfo_args_info(void) +{ + mxArray *mxBIArgs = mxCreateCellMatrix(1,0); + return mxBIArgs; +} + +static const mxArray *sf_get_sim_state_info_c1_Cessna_6DOF(void) +{ + const char *infoFields[] = { "chartChecksum", "varInfo" }; + + mxArray *mxInfo = mxCreateStructMatrix(1, 1, 2, infoFields); + const char *infoEncStr[] = { + "100 S1x3'type','srcId','name','auxInfo'{{M[1],M[5],T\"F\",},{M[1],M[12],T\"M\",},{M[8],M[0],T\"is_active_c1_Cessna_6DOF\",}}" + }; + + mxArray *mxVarInfo = sf_mex_decode_encoded_mx_struct_array(infoEncStr, 3, 10); + mxArray *mxChecksum = mxCreateDoubleMatrix(1, 4, mxREAL); + sf_c1_Cessna_6DOF_get_check_sum(&mxChecksum); + mxSetField(mxInfo, 0, infoFields[0], mxChecksum); + mxSetField(mxInfo, 0, infoFields[1], mxVarInfo); + return mxInfo; +} + +static void chart_debug_initialization(SimStruct *S, unsigned int + fullDebuggerInitialization) +{ + if (!sim_mode_is_rtw_gen(S)) { + SFc1_Cessna_6DOFInstanceStruct *chartInstance; + ChartRunTimeInfo * crtInfo = (ChartRunTimeInfo *)(ssGetUserData(S)); + ChartInfoStruct * chartInfo = (ChartInfoStruct *)(crtInfo->instanceInfo); + chartInstance = (SFc1_Cessna_6DOFInstanceStruct *) chartInfo->chartInstance; + if (ssIsFirstInitCond(S) && fullDebuggerInitialization==1) { + /* do this only if simulation is starting */ + { + unsigned int chartAlreadyPresent; + chartAlreadyPresent = sf_debug_initialize_chart + (sfGlobalDebugInstanceStruct, + _Cessna_6DOFMachineNumber_, + 1, + 1, + 1, + 0, + 10, + 0, + 0, + 0, + 0, + 0, + &(chartInstance->chartNumber), + &(chartInstance->instanceNumber), + (void *)S); + + /* Each instance must initialize ist own list of scripts */ + init_script_number_translation(_Cessna_6DOFMachineNumber_, + chartInstance->chartNumber,chartInstance->instanceNumber); + if (chartAlreadyPresent==0) { + /* this is the first instance */ + sf_debug_set_chart_disable_implicit_casting + (sfGlobalDebugInstanceStruct,_Cessna_6DOFMachineNumber_, + chartInstance->chartNumber,1); + sf_debug_set_chart_event_thresholds(sfGlobalDebugInstanceStruct, + _Cessna_6DOFMachineNumber_, + chartInstance->chartNumber, + 0, + 0, + 0); + _SFD_SET_DATA_PROPS(0,1,1,0,"V"); + _SFD_SET_DATA_PROPS(1,2,0,1,"F"); + _SFD_SET_DATA_PROPS(2,1,1,0,"alpha"); + _SFD_SET_DATA_PROPS(3,1,1,0,"alpha_dot"); + _SFD_SET_DATA_PROPS(4,1,1,0,"beta"); + _SFD_SET_DATA_PROPS(5,1,1,0,"p"); + _SFD_SET_DATA_PROPS(6,1,1,0,"q"); + _SFD_SET_DATA_PROPS(7,1,1,0,"r"); + _SFD_SET_DATA_PROPS(8,1,1,0,"theta"); + _SFD_SET_DATA_PROPS(9,2,0,1,"M"); + _SFD_STATE_INFO(0,0,2); + _SFD_CH_SUBSTATE_COUNT(0); + _SFD_CH_SUBSTATE_DECOMP(0); + } + + _SFD_CV_INIT_CHART(0,0,0,0); + + { + _SFD_CV_INIT_STATE(0,0,0,0,0,0,NULL,NULL); + } + + _SFD_CV_INIT_TRANS(0,0,NULL,NULL,0,NULL); + + /* Initialization of MATLAB Function Model Coverage */ + _SFD_CV_INIT_EML(0,1,1,0,0,0,0,0,0,0,0); + _SFD_CV_INIT_EML_FCN(0,0,"eML_blk_kernel",0,-1,1623); + _SFD_SET_DATA_COMPILED_PROPS(0,SF_DOUBLE,0,NULL,0,0,0,0.0,1.0,0,0, + (MexFcnForType)c1_b_sf_marshallOut,(MexInFcnForType)NULL); + + { + unsigned int dimVector[1]; + dimVector[0]= 3; + _SFD_SET_DATA_COMPILED_PROPS(1,SF_DOUBLE,1,&(dimVector[0]),0,0,0,0.0, + 1.0,0,0,(MexFcnForType)c1_sf_marshallOut,(MexInFcnForType) + c1_sf_marshallIn); + } + + _SFD_SET_DATA_COMPILED_PROPS(2,SF_DOUBLE,0,NULL,0,0,0,0.0,1.0,0,0, + (MexFcnForType)c1_b_sf_marshallOut,(MexInFcnForType)NULL); + _SFD_SET_DATA_COMPILED_PROPS(3,SF_DOUBLE,0,NULL,0,0,0,0.0,1.0,0,0, + (MexFcnForType)c1_b_sf_marshallOut,(MexInFcnForType)NULL); + _SFD_SET_DATA_COMPILED_PROPS(4,SF_DOUBLE,0,NULL,0,0,0,0.0,1.0,0,0, + (MexFcnForType)c1_b_sf_marshallOut,(MexInFcnForType)NULL); + _SFD_SET_DATA_COMPILED_PROPS(5,SF_DOUBLE,0,NULL,0,0,0,0.0,1.0,0,0, + (MexFcnForType)c1_b_sf_marshallOut,(MexInFcnForType)NULL); + _SFD_SET_DATA_COMPILED_PROPS(6,SF_DOUBLE,0,NULL,0,0,0,0.0,1.0,0,0, + (MexFcnForType)c1_b_sf_marshallOut,(MexInFcnForType)NULL); + _SFD_SET_DATA_COMPILED_PROPS(7,SF_DOUBLE,0,NULL,0,0,0,0.0,1.0,0,0, + (MexFcnForType)c1_b_sf_marshallOut,(MexInFcnForType)NULL); + _SFD_SET_DATA_COMPILED_PROPS(8,SF_DOUBLE,0,NULL,0,0,0,0.0,1.0,0,0, + (MexFcnForType)c1_b_sf_marshallOut,(MexInFcnForType)NULL); + + { + unsigned int dimVector[1]; + dimVector[0]= 3; + _SFD_SET_DATA_COMPILED_PROPS(9,SF_DOUBLE,1,&(dimVector[0]),0,0,0,0.0, + 1.0,0,0,(MexFcnForType)c1_sf_marshallOut,(MexInFcnForType) + c1_sf_marshallIn); + } + + { + real_T *c1_V; + real_T *c1_alpha; + real_T *c1_alpha_dot; + real_T *c1_beta; + real_T *c1_p; + real_T *c1_q; + real_T *c1_r; + real_T *c1_theta; + real_T (*c1_F)[3]; + real_T (*c1_M)[3]; + c1_M = (real_T (*)[3])ssGetOutputPortSignal(chartInstance->S, 2); + c1_theta = (real_T *)ssGetInputPortSignal(chartInstance->S, 7); + c1_r = (real_T *)ssGetInputPortSignal(chartInstance->S, 6); + c1_q = (real_T *)ssGetInputPortSignal(chartInstance->S, 5); + c1_p = (real_T *)ssGetInputPortSignal(chartInstance->S, 4); + c1_beta = (real_T *)ssGetInputPortSignal(chartInstance->S, 3); + c1_alpha_dot = (real_T *)ssGetInputPortSignal(chartInstance->S, 2); + c1_alpha = (real_T *)ssGetInputPortSignal(chartInstance->S, 1); + c1_F = (real_T (*)[3])ssGetOutputPortSignal(chartInstance->S, 1); + c1_V = (real_T *)ssGetInputPortSignal(chartInstance->S, 0); + _SFD_SET_DATA_VALUE_PTR(0U, c1_V); + _SFD_SET_DATA_VALUE_PTR(1U, *c1_F); + _SFD_SET_DATA_VALUE_PTR(2U, c1_alpha); + _SFD_SET_DATA_VALUE_PTR(3U, c1_alpha_dot); + _SFD_SET_DATA_VALUE_PTR(4U, c1_beta); + _SFD_SET_DATA_VALUE_PTR(5U, c1_p); + _SFD_SET_DATA_VALUE_PTR(6U, c1_q); + _SFD_SET_DATA_VALUE_PTR(7U, c1_r); + _SFD_SET_DATA_VALUE_PTR(8U, c1_theta); + _SFD_SET_DATA_VALUE_PTR(9U, *c1_M); + } + } + } else { + sf_debug_reset_current_state_configuration(sfGlobalDebugInstanceStruct, + _Cessna_6DOFMachineNumber_,chartInstance->chartNumber, + chartInstance->instanceNumber); + } + } +} + +static const char* sf_get_instance_specialization(void) +{ + return "v045JFXizl4FQXSha8a34C"; +} + +static void sf_opaque_initialize_c1_Cessna_6DOF(void *chartInstanceVar) +{ + chart_debug_initialization(((SFc1_Cessna_6DOFInstanceStruct*) chartInstanceVar) + ->S,0); + initialize_params_c1_Cessna_6DOF((SFc1_Cessna_6DOFInstanceStruct*) + chartInstanceVar); + initialize_c1_Cessna_6DOF((SFc1_Cessna_6DOFInstanceStruct*) chartInstanceVar); +} + +static void sf_opaque_enable_c1_Cessna_6DOF(void *chartInstanceVar) +{ + enable_c1_Cessna_6DOF((SFc1_Cessna_6DOFInstanceStruct*) chartInstanceVar); +} + +static void sf_opaque_disable_c1_Cessna_6DOF(void *chartInstanceVar) +{ + disable_c1_Cessna_6DOF((SFc1_Cessna_6DOFInstanceStruct*) chartInstanceVar); +} + +static void sf_opaque_gateway_c1_Cessna_6DOF(void *chartInstanceVar) +{ + sf_gateway_c1_Cessna_6DOF((SFc1_Cessna_6DOFInstanceStruct*) chartInstanceVar); +} + +extern const mxArray* sf_internal_get_sim_state_c1_Cessna_6DOF(SimStruct* S) +{ + ChartRunTimeInfo * crtInfo = (ChartRunTimeInfo *)(ssGetUserData(S)); + ChartInfoStruct * chartInfo = (ChartInfoStruct *)(crtInfo->instanceInfo); + mxArray *plhs[1] = { NULL }; + + mxArray *prhs[4]; + int mxError = 0; + prhs[0] = mxCreateString("chart_simctx_raw2high"); + prhs[1] = mxCreateDoubleScalar(ssGetSFuncBlockHandle(S)); + prhs[2] = (mxArray*) get_sim_state_c1_Cessna_6DOF + ((SFc1_Cessna_6DOFInstanceStruct*)chartInfo->chartInstance);/* raw sim ctx */ + prhs[3] = (mxArray*) sf_get_sim_state_info_c1_Cessna_6DOF();/* state var info */ + mxError = sf_mex_call_matlab(1, plhs, 4, prhs, "sfprivate"); + mxDestroyArray(prhs[0]); + mxDestroyArray(prhs[1]); + mxDestroyArray(prhs[2]); + mxDestroyArray(prhs[3]); + if (mxError || plhs[0] == NULL) { + sf_mex_error_message("Stateflow Internal Error: \nError calling 'chart_simctx_raw2high'.\n"); + } + + return plhs[0]; +} + +extern void sf_internal_set_sim_state_c1_Cessna_6DOF(SimStruct* S, const mxArray + *st) +{ + ChartRunTimeInfo * crtInfo = (ChartRunTimeInfo *)(ssGetUserData(S)); + ChartInfoStruct * chartInfo = (ChartInfoStruct *)(crtInfo->instanceInfo); + mxArray *plhs[1] = { NULL }; + + mxArray *prhs[3]; + int mxError = 0; + prhs[0] = mxCreateString("chart_simctx_high2raw"); + prhs[1] = mxDuplicateArray(st); /* high level simctx */ + prhs[2] = (mxArray*) sf_get_sim_state_info_c1_Cessna_6DOF();/* state var info */ + mxError = sf_mex_call_matlab(1, plhs, 3, prhs, "sfprivate"); + mxDestroyArray(prhs[0]); + mxDestroyArray(prhs[1]); + mxDestroyArray(prhs[2]); + if (mxError || plhs[0] == NULL) { + sf_mex_error_message("Stateflow Internal Error: \nError calling 'chart_simctx_high2raw'.\n"); + } + + set_sim_state_c1_Cessna_6DOF((SFc1_Cessna_6DOFInstanceStruct*) + chartInfo->chartInstance, mxDuplicateArray(plhs[0])); + mxDestroyArray(plhs[0]); +} + +static const mxArray* sf_opaque_get_sim_state_c1_Cessna_6DOF(SimStruct* S) +{ + return sf_internal_get_sim_state_c1_Cessna_6DOF(S); +} + +static void sf_opaque_set_sim_state_c1_Cessna_6DOF(SimStruct* S, const mxArray + *st) +{ + sf_internal_set_sim_state_c1_Cessna_6DOF(S, st); +} + +static void sf_opaque_terminate_c1_Cessna_6DOF(void *chartInstanceVar) +{ + if (chartInstanceVar!=NULL) { + SimStruct *S = ((SFc1_Cessna_6DOFInstanceStruct*) chartInstanceVar)->S; + ChartRunTimeInfo * crtInfo = (ChartRunTimeInfo *)(ssGetUserData(S)); + if (sim_mode_is_rtw_gen(S) || sim_mode_is_external(S)) { + sf_clear_rtw_identifier(S); + unload_Cessna_6DOF_optimization_info(); + } + + finalize_c1_Cessna_6DOF((SFc1_Cessna_6DOFInstanceStruct*) chartInstanceVar); + utFree((void *)chartInstanceVar); + if (crtInfo != NULL) { + utFree((void *)crtInfo); + } + + ssSetUserData(S,NULL); + } +} + +static void sf_opaque_init_subchart_simstructs(void *chartInstanceVar) +{ + initSimStructsc1_Cessna_6DOF((SFc1_Cessna_6DOFInstanceStruct*) + chartInstanceVar); +} + +extern unsigned int sf_machine_global_initializer_called(void); +static void mdlProcessParameters_c1_Cessna_6DOF(SimStruct *S) +{ + int i; + for (i=0;iinstanceInfo); + initialize_params_c1_Cessna_6DOF((SFc1_Cessna_6DOFInstanceStruct*) + (chartInfo->chartInstance)); + } +} + +static void mdlSetWorkWidths_c1_Cessna_6DOF(SimStruct *S) +{ + if (sim_mode_is_rtw_gen(S) || sim_mode_is_external(S)) { + mxArray *infoStruct = load_Cessna_6DOF_optimization_info(); + int_T chartIsInlinable = + (int_T)sf_is_chart_inlinable(sf_get_instance_specialization(),infoStruct,1); + ssSetStateflowIsInlinable(S,chartIsInlinable); + ssSetRTWCG(S,sf_rtw_info_uint_prop(sf_get_instance_specialization(), + infoStruct,1,"RTWCG")); + ssSetEnableFcnIsTrivial(S,1); + ssSetDisableFcnIsTrivial(S,1); + ssSetNotMultipleInlinable(S,sf_rtw_info_uint_prop + (sf_get_instance_specialization(),infoStruct,1, + "gatewayCannotBeInlinedMultipleTimes")); + sf_update_buildInfo(sf_get_instance_specialization(),infoStruct,1); + if (chartIsInlinable) { + ssSetInputPortOptimOpts(S, 0, SS_REUSABLE_AND_LOCAL); + ssSetInputPortOptimOpts(S, 1, SS_REUSABLE_AND_LOCAL); + ssSetInputPortOptimOpts(S, 2, SS_REUSABLE_AND_LOCAL); + ssSetInputPortOptimOpts(S, 3, SS_REUSABLE_AND_LOCAL); + ssSetInputPortOptimOpts(S, 4, SS_REUSABLE_AND_LOCAL); + ssSetInputPortOptimOpts(S, 5, SS_REUSABLE_AND_LOCAL); + ssSetInputPortOptimOpts(S, 6, SS_REUSABLE_AND_LOCAL); + ssSetInputPortOptimOpts(S, 7, SS_REUSABLE_AND_LOCAL); + sf_mark_chart_expressionable_inputs(S,sf_get_instance_specialization(), + infoStruct,1,8); + sf_mark_chart_reusable_outputs(S,sf_get_instance_specialization(), + infoStruct,1,2); + } + + { + unsigned int outPortIdx; + for (outPortIdx=1; outPortIdx<=2; ++outPortIdx) { + ssSetOutputPortOptimizeInIR(S, outPortIdx, 1U); + } + } + + { + unsigned int inPortIdx; + for (inPortIdx=0; inPortIdx < 8; ++inPortIdx) { + ssSetInputPortOptimizeInIR(S, inPortIdx, 1U); + } + } + + sf_set_rtw_dwork_info(S,sf_get_instance_specialization(),infoStruct,1); + ssSetHasSubFunctions(S,!(chartIsInlinable)); + } else { + } + + ssSetOptions(S,ssGetOptions(S)|SS_OPTION_WORKS_WITH_CODE_REUSE); + ssSetChecksum0(S,(1256833735U)); + ssSetChecksum1(S,(1696076141U)); + ssSetChecksum2(S,(3784906244U)); + ssSetChecksum3(S,(1371581968U)); + ssSetmdlDerivatives(S, NULL); + ssSetExplicitFCSSCtrl(S,1); + ssSupportsMultipleExecInstances(S,1); +} + +static void mdlRTW_c1_Cessna_6DOF(SimStruct *S) +{ + if (sim_mode_is_rtw_gen(S)) { + ssWriteRTWStrParam(S, "StateflowChartType", "Embedded MATLAB"); + } +} + +static void mdlStart_c1_Cessna_6DOF(SimStruct *S) +{ + SFc1_Cessna_6DOFInstanceStruct *chartInstance; + ChartRunTimeInfo * crtInfo = (ChartRunTimeInfo *)utMalloc(sizeof + (ChartRunTimeInfo)); + chartInstance = (SFc1_Cessna_6DOFInstanceStruct *)utMalloc(sizeof + (SFc1_Cessna_6DOFInstanceStruct)); + memset(chartInstance, 0, sizeof(SFc1_Cessna_6DOFInstanceStruct)); + if (chartInstance==NULL) { + sf_mex_error_message("Could not allocate memory for chart instance."); + } + + chartInstance->chartInfo.chartInstance = chartInstance; + chartInstance->chartInfo.isEMLChart = 1; + chartInstance->chartInfo.chartInitialized = 0; + chartInstance->chartInfo.sFunctionGateway = sf_opaque_gateway_c1_Cessna_6DOF; + chartInstance->chartInfo.initializeChart = sf_opaque_initialize_c1_Cessna_6DOF; + chartInstance->chartInfo.terminateChart = sf_opaque_terminate_c1_Cessna_6DOF; + chartInstance->chartInfo.enableChart = sf_opaque_enable_c1_Cessna_6DOF; + chartInstance->chartInfo.disableChart = sf_opaque_disable_c1_Cessna_6DOF; + chartInstance->chartInfo.getSimState = sf_opaque_get_sim_state_c1_Cessna_6DOF; + chartInstance->chartInfo.setSimState = sf_opaque_set_sim_state_c1_Cessna_6DOF; + chartInstance->chartInfo.getSimStateInfo = + sf_get_sim_state_info_c1_Cessna_6DOF; + chartInstance->chartInfo.zeroCrossings = NULL; + chartInstance->chartInfo.outputs = NULL; + chartInstance->chartInfo.derivatives = NULL; + chartInstance->chartInfo.mdlRTW = mdlRTW_c1_Cessna_6DOF; + chartInstance->chartInfo.mdlStart = mdlStart_c1_Cessna_6DOF; + chartInstance->chartInfo.mdlSetWorkWidths = mdlSetWorkWidths_c1_Cessna_6DOF; + chartInstance->chartInfo.extModeExec = NULL; + chartInstance->chartInfo.restoreLastMajorStepConfiguration = NULL; + chartInstance->chartInfo.restoreBeforeLastMajorStepConfiguration = NULL; + chartInstance->chartInfo.storeCurrentConfiguration = NULL; + chartInstance->chartInfo.debugInstance = sfGlobalDebugInstanceStruct; + chartInstance->S = S; + crtInfo->instanceInfo = (&(chartInstance->chartInfo)); + crtInfo->isJITEnabled = false; + ssSetUserData(S,(void *)(crtInfo)); /* register the chart instance with simstruct */ + init_dsm_address_info(chartInstance); + if (!sim_mode_is_rtw_gen(S)) { + } + + sf_opaque_init_subchart_simstructs(chartInstance->chartInfo.chartInstance); + chart_debug_initialization(S,1); +} + +void c1_Cessna_6DOF_method_dispatcher(SimStruct *S, int_T method, void *data) +{ + switch (method) { + case SS_CALL_MDL_START: + mdlStart_c1_Cessna_6DOF(S); + break; + + case SS_CALL_MDL_SET_WORK_WIDTHS: + mdlSetWorkWidths_c1_Cessna_6DOF(S); + break; + + case SS_CALL_MDL_PROCESS_PARAMETERS: + mdlProcessParameters_c1_Cessna_6DOF(S); + break; + + default: + /* Unhandled method */ + sf_mex_error_message("Stateflow Internal Error:\n" + "Error calling c1_Cessna_6DOF_method_dispatcher.\n" + "Can't handle method %d.\n", method); + break; + } +} diff --git a/Prof_Arya/slprj/_sfprj/Cessna_6DOF/_self/sfun/src/c1_Cessna_6DOF.h b/Prof_Arya/slprj/_sfprj/Cessna_6DOF/_self/sfun/src/c1_Cessna_6DOF.h new file mode 100644 index 0000000..99a7210 --- /dev/null +++ b/Prof_Arya/slprj/_sfprj/Cessna_6DOF/_self/sfun/src/c1_Cessna_6DOF.h @@ -0,0 +1,41 @@ +#ifndef __c1_Cessna_6DOF_h__ +#define __c1_Cessna_6DOF_h__ + +/* Include files */ +#include "sf_runtime/sfc_sf.h" +#include "sf_runtime/sfc_mex.h" +#include "rtwtypes.h" +#include "multiword_types.h" + +/* Type Definitions */ +#ifndef typedef_SFc1_Cessna_6DOFInstanceStruct +#define typedef_SFc1_Cessna_6DOFInstanceStruct + +typedef struct { + SimStruct *S; + ChartInfoStruct chartInfo; + uint32_T chartNumber; + uint32_T instanceNumber; + int32_T c1_sfEvent; + boolean_T c1_isStable; + boolean_T c1_doneDoubleBufferReInit; + uint8_T c1_is_active_c1_Cessna_6DOF; +} SFc1_Cessna_6DOFInstanceStruct; + +#endif /*typedef_SFc1_Cessna_6DOFInstanceStruct*/ + +/* Named Constants */ + +/* Variable Declarations */ + +/* Variable Definitions */ + +/* Function Declarations */ +extern const mxArray *sf_c1_Cessna_6DOF_get_eml_resolved_functions_info(void); + +/* Function Definitions */ +extern void sf_c1_Cessna_6DOF_get_check_sum(mxArray *plhs[]); +extern void c1_Cessna_6DOF_method_dispatcher(SimStruct *S, int_T method, void + *data); + +#endif diff --git a/Prof_Arya/slprj/_sfprj/Cessna_6DOF/_self/sfun/src/c1_cessna_6dof.obj b/Prof_Arya/slprj/_sfprj/Cessna_6DOF/_self/sfun/src/c1_cessna_6dof.obj new file mode 100644 index 0000000..e69de29 diff --git a/Prof_Arya/slprj/_sfprj/Cessna_6DOF_Wind_trim/_self/sfun/info/binfo.mat b/Prof_Arya/slprj/_sfprj/Cessna_6DOF_Wind_trim/_self/sfun/info/binfo.mat new file mode 100644 index 0000000..02848c4 Binary files /dev/null and b/Prof_Arya/slprj/_sfprj/Cessna_6DOF_Wind_trim/_self/sfun/info/binfo.mat differ diff --git a/Prof_Arya/slprj/_sfprj/Cessna_6DOF_trim_ha/_self/sfun/info/binfo.mat b/Prof_Arya/slprj/_sfprj/Cessna_6DOF_trim_ha/_self/sfun/info/binfo.mat new file mode 100644 index 0000000..2ca213f Binary files /dev/null and b/Prof_Arya/slprj/_sfprj/Cessna_6DOF_trim_ha/_self/sfun/info/binfo.mat differ diff --git a/Prof_Arya/slprj/_sfprj/EMLReport/emlReportAccessInfo.mat b/Prof_Arya/slprj/_sfprj/EMLReport/emlReportAccessInfo.mat new file mode 100644 index 0000000..c5a1037 Binary files /dev/null and b/Prof_Arya/slprj/_sfprj/EMLReport/emlReportAccessInfo.mat differ diff --git a/Prof_Arya/slprj/_sfprj/EMLReport/sEI9p49izcHUxn63CWpG2IC.mat b/Prof_Arya/slprj/_sfprj/EMLReport/sEI9p49izcHUxn63CWpG2IC.mat new file mode 100644 index 0000000..9d4d18d Binary files /dev/null and b/Prof_Arya/slprj/_sfprj/EMLReport/sEI9p49izcHUxn63CWpG2IC.mat differ diff --git a/Prof_Arya/slprj/_sfprj/EMLReport/sjLZixcOZskMJeeDfIb93hH.mat b/Prof_Arya/slprj/_sfprj/EMLReport/sjLZixcOZskMJeeDfIb93hH.mat new file mode 100644 index 0000000..6d7d58c Binary files /dev/null and b/Prof_Arya/slprj/_sfprj/EMLReport/sjLZixcOZskMJeeDfIb93hH.mat differ diff --git a/Prof_Arya/slprj/_sfprj/precompile/9awVvODnlASRfvLpAy51pB.mat b/Prof_Arya/slprj/_sfprj/precompile/9awVvODnlASRfvLpAy51pB.mat new file mode 100644 index 0000000..d67a604 Binary files /dev/null and b/Prof_Arya/slprj/_sfprj/precompile/9awVvODnlASRfvLpAy51pB.mat differ diff --git a/Prof_Arya/slprj/_sfprj/precompile/CHfRUMKLp7zBZlxChVZlPD.mat b/Prof_Arya/slprj/_sfprj/precompile/CHfRUMKLp7zBZlxChVZlPD.mat new file mode 100644 index 0000000..364d8a5 Binary files /dev/null and b/Prof_Arya/slprj/_sfprj/precompile/CHfRUMKLp7zBZlxChVZlPD.mat differ diff --git a/Prof_Arya/slprj/_sfprj/precompile/VPBs6CX5Fj2d3KwfGqQPeF.mat b/Prof_Arya/slprj/_sfprj/precompile/VPBs6CX5Fj2d3KwfGqQPeF.mat new file mode 100644 index 0000000..a413dc1 Binary files /dev/null and b/Prof_Arya/slprj/_sfprj/precompile/VPBs6CX5Fj2d3KwfGqQPeF.mat differ diff --git a/Prof_Arya/slprj/_sfprj/precompile/autoInferAccessInfo.mat b/Prof_Arya/slprj/_sfprj/precompile/autoInferAccessInfo.mat new file mode 100644 index 0000000..bcafa3e Binary files /dev/null and b/Prof_Arya/slprj/_sfprj/precompile/autoInferAccessInfo.mat differ diff --git a/Prof_Arya/slprj/_sfprj/precompile/pFxf9FCl6UH0ED177v1E9B.mat b/Prof_Arya/slprj/_sfprj/precompile/pFxf9FCl6UH0ED177v1E9B.mat new file mode 100644 index 0000000..5fd3c97 Binary files /dev/null and b/Prof_Arya/slprj/_sfprj/precompile/pFxf9FCl6UH0ED177v1E9B.mat differ -- cgit