diff --git a/424-Systeme_Non_Lineaires/TP2/Grue_L.mdl b/424-Systeme_Non_Lineaires/TP2/Grue_L.mdl new file mode 100644 index 0000000..b6df6ef --- /dev/null +++ b/424-Systeme_Non_Lineaires/TP2/Grue_L.mdl @@ -0,0 +1,1715 @@ +Model { + Name "Grue_L" + Version 9.2 + SavedCharacterEncoding "UTF-8" + GraphicalInterface { + NumRootInports 0 + NumRootOutports 0 + ParameterArgumentNames "" + ComputedModelVersion "1.73" + NumModelReferences 0 + NumTestPointedSignals 0 + NumProvidedFunctions 0 + NumRequiredFunctions 0 + NumResetEvents 0 + HasInitializeEvent 0 + HasTerminateEvent 0 + PreCompExecutionDomainType "Unset" + IsExportFunctionModel 0 + NumParameterArguments 0 + NumExternalFileReferences 0 + OrderedModelArguments 1 + } + LogicAnalyzerPlugin "on" + DiagnosticSuppressor "on" + WebScopes_FoundationPlugin "on" + NotesPlugin "on" + SLCCPlugin "on" + ScopeRefreshTime 0.035000 + OverrideScopeRefreshTime on + DisableAllScopes off + DataTypeOverride "UseLocalSettings" + DataTypeOverrideAppliesTo "AllNumericTypes" + MinMaxOverflowLogging "UseLocalSettings" + MinMaxOverflowArchiveMode "Overwrite" + FPTRunName "Run 1" + MaxMDLFileLineLength 120 + LastSavedArchitecture "glnxa64" + Object { + $PropName "BdWindowsInfo" + $ObjectID 1 + $ClassName "Simulink.BDWindowsInfo" + Object { + $PropName "WindowsInfo" + $ObjectID 2 + $ClassName "Simulink.WindowInfo" + IsActive [1] + Location [0.0, 27.0, 1366.0, 741.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 [1328.0, 565.0] + ZoomFactor [1.2197183097371729] + Offset [-386.47806004733729, -44.732942065261852] + } + Object { + $PropName "DockComponentsInfo" + $ObjectID 6 + $ClassName "Simulink.DockComponentInfo" + Type "GLUE2:PropertyInspector" + ID "Property Inspector" + Visible [0] + CreateCallback "" + UserData "" + Floating [0] + DockPosition "Right" + Width [640] + Height [480] + } + WindowState "AAAA/wAAAAD9AAAAAgAAAAAAAAC9AAAB+PwCAAAAA/sAAAAWAEQAbwBjAGsAVwBpAGQAZwBlAHQAMwEAAAAxAAAB+AAAA" + "AAAAAAA+wAAABYARABvAGMAawBXAGkAZABnAGUAdAA0AAAAAAD/////AAAAAAAAAAD7AAAAUgBHAEwAVQBFADIAIAB0AHIAZQBlACAAYwBvAG0Ac" + "ABvAG4AZQBuAHQALwBHAEwAVQBFADIAIAB0AHIAZQBlACAAYwBvAG0AcABvAG4AZQBuAHQAAAAAAP////8AAABiAP///wAAAAEAAAAAAAAAAPwCA" + "AAAAfsAAABUAEcATABVAEUAMgA6AFAAcgBvAHAAZQByAHQAeQBJAG4AcwBwAGUAYwB0AG8AcgAvAFAAcgBvAHAAZQByAHQAeQAgAEkAbgBzAHAAZ" + "QBjAHQAbwByAAAAAAD/////AAAAOQD///8AAAVWAAACdAAAAAEAAAACAAAAAQAAAAL8AAAAAQAAAAIAAAAP/////wAAAAAA/////wAAAAAAAAAA/" + "////wEAAAAA/////wAAAAAAAAAA/////wAAAAAA/////wAAAAAAAAAA/////wAAAAAA/////wAAAAAAAAAA/////wAAAAAA/////wAAAAAAAAAA/" + "////wEAAACA/////wAAAAAAAAAA/////wEAAADo/////wAAAAAAAAAA/////wAAAAAA/////wAAAAAAAAAA/////wEAAAFo/////wAAAAAAAAAA/" + "////wAAAAAA/////wAAAAAAAAAA/////wAAAAAA/////wAAAAAAAAAA/////wAAAAAA/////wAAAAAAAAAA/////wEAAANR/////wAAAAAAAAAA/" + "////wAAAAAA/////wAAAAAAAAAA/////wAAAAAA/////wAAAAAAAAAA" + } + } + HideAutomaticNames on + Created "Fri Mar 23 18:37:01 2012" + Creator "abbasturki" + UpdateHistory "UpdateHistoryNever" + ModifiedByFormat "%" + LastModifiedBy "pac" + ModifiedDateFormat "%" + LastModifiedDate "Tue Apr 23 16:24:58 2019" + RTWModifiedTimeStamp 477935607 + ModelVersionFormat "1.%" + SampleTimeColors off + SampleTimeAnnotations off + LibraryLinkDisplay "none" + WideLines off + ShowLineDimensions off + ShowPortDataTypes off + ShowAllPropagatedSignalLabels off + PortDataTypeDisplayFormat "AliasTypeOnly" + ShowEditTimeErrors on + ShowEditTimeWarnings on + ShowEditTimeAdvisorChecks off + ShowPortUnits off + ShowDesignRanges off + ShowLoopsOnError on + IgnoreBidirectionalLines off + ShowStorageClass off + ShowTestPointIcons on + ShowSignalResolutionIcons on + ShowViewerIcons on + SortedOrder off + VariantCondition off + ShowSubsystemDomainSpec off + ExecutionContextIcon off + ShowLinearizationAnnotations on + ShowVisualizeInsertedRTB on + ShowMarkup on + BlockNameDataTip off + BlockParametersDataTip off + BlockDescriptionStringDataTip off + BlockVariantConditionDataTip off + ToolBar on + StatusBar on + BrowserShowLibraryLinks off + FunctionConnectors off + BrowserLookUnderMasks off + MultiThreadCoSim on + SimulationMode "normal" + VisualizeLoggedSignalsWhenLoggingToFile off + PauseTimes "5" + NumberOfSteps 1 + SnapshotBufferSize 10 + SnapshotInterval 10 + NumberOfLastSnapshots 0 + EnablePacing off + PacingRate 1 + LinearizationMsg "none" + Profile off + ParamWorkspaceSource "MATLABWorkspace" + AccelSystemTargetFile "accel.tlc" + AccelTemplateMakefile "accel_default_tmf" + AccelMakeCommand "make_rtw" + TryForcingSFcnDF off + Object { + $PropName "DataLoggingOverride" + $ObjectID 7 + $ClassName "Simulink.SimulationData.ModelLoggingInfo" + model_ "Grue_L" + Array { + Type "Cell" + Dimension 1 + Cell "Grue_L" + 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 + OrderedModelArguments on + Array { + Type "Handle" + Dimension 1 + Simulink.ConfigSet { + $ObjectID 8 + Version "1.18.1" + DisabledProps [] + Description "" + Array { + Type "Handle" + Dimension 9 + Simulink.SolverCC { + $ObjectID 9 + Version "1.18.1" + DisabledProps [] + Description "" + StartTime "0.0" + StopTime "20" + AbsTol "auto" + AutoScaleAbsTol on + FixedStep "1e-3" + InitialStep "auto" + MaxOrder 5 + ZcThreshold "auto" + ConsecutiveZCsStepRelTol "10*128*eps" + MaxConsecutiveZCs "1000" + ExtrapolationOrder 4 + NumberNewtonIterations 1 + MaxStep "auto" + MinStep "auto" + MaxConsecutiveMinStep "1" + RelTol "1e-3" + EnableMultiTasking on + ConcurrentTasks off + Solver "ode4" + SolverName "ode4" + SolverJacobianMethodControl "auto" + ShapePreserveControl "DisableAll" + ZeroCrossControl "UseLocalSettings" + ZeroCrossAlgorithm "Nonadaptive" + AlgebraicLoopSolver "TrustRegion" + SolverInfoToggleStatus on + IsAutoAppliedInSIP off + SolverResetMethod "Fast" + PositivePriorityOrder off + AutoInsertRateTranBlk off + SampleTimeConstraint "Unconstrained" + InsertRTBMode "Whenever possible" + SampleTimeProperty [] + DecoupledContinuousIntegration off + MinimalZcImpactIntegration off + } + Simulink.DataIOCC { + $ObjectID 10 + Version "1.18.1" + DisabledProps [] + Description "" + 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" + LoggingToFile off + DatasetSignalFormat "timeseries" + LoggingFileName "out.mat" + LoggingIntervals "[-inf, inf]" + } + Simulink.OptimizationCC { + $ObjectID 11 + Version "1.18.1" + Array { + Type "Cell" + Dimension 8 + Cell "BooleansAsBitfields" + Cell "PassReuseOutputArgsAs" + Cell "PassReuseOutputArgsThreshold" + Cell "ZeroExternalMemoryAtStartup" + Cell "ZeroInternalMemoryAtStartup" + Cell "OptimizeModelRefInitCode" + Cell "NoFixptDivByZeroProtection" + Cell "UseSpecifiedMinMax" + PropName "DisabledProps" + } + Description "" + 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 + AdvancedOptControl "" + 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 + LifeSpan "inf" + MaxStackSize "Inherit from target" + BufferReusableBoundary on + SimCompilerOptimization "off" + AccelVerboseBuild off + OptimizeBlockOrder "off" + OptimizeDataStoreBuffers on + BusAssignmentInplaceUpdate on + DifferentSizesBufferReuse off + OptimizationLevel "level2" + OptimizationPriority "Balanced" + OptimizationCustomize on + UseRowMajorAlgorithm off + LabelGuidedReuse off + } + Simulink.DebuggingCC { + $ObjectID 12 + Version "1.18.1" + Array { + Type "Cell" + Dimension 1 + Cell "UseOnlyExistingSharedCode" + PropName "DisabledProps" + } + Description "" + RTPrefix "error" + ConsistencyChecking "none" + ArrayBoundsChecking "none" + SignalInfNanChecking "none" + StringTruncationChecking "error" + 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" + ExportedTasksRateTransMsg "none" + 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 "warning" + SignalLabelMismatchMsg "none" + UnconnectedInputMsg "warning" + UnconnectedOutputMsg "warning" + UnconnectedLineMsg "warning" + UseOnlyExistingSharedCode "error" + SFcnCompatibilityMsg "none" + FrameProcessingCompatibilityMsg "error" + UniqueDataStoreMsg "none" + BusObjectLabelMismatch "warning" + RootOutportRequireBusObject "warning" + AssertControl "UseLocalSettings" + AllowSymbolicDim on + RowMajorDimensionSupport off + ModelReferenceIOMsg "none" + ModelReferenceMultiInstanceNormalModeStructChecksumCheck "error" + ModelReferenceVersionMismatchMessage "none" + ModelReferenceIOMismatchMessage "none" + UnknownTsInhSupMsg "warning" + ModelReferenceDataLoggingMessage "warning" + ModelReferenceSymbolNameMessage "warning" + ModelReferenceExtraNoncontSigs "error" + StateNameClashWarn "warning" + SimStateInterfaceChecksumMismatchMsg "warning" + SimStateOlderReleaseMsg "error" + ChecksumConsistencyForSSReuse "none" + LibraryContextMissingDiagnostic "warning" + MatchCodeGenerationContextForUpdateDiagram "none" + InitInArrayFormatMsg "warning" + StrictBusMsg "ErrorLevel1" + BusNameAdapt "WarnAndRepair" + NonBusSignalsTreatedAsBus "none" + SymbolicDimMinMaxWarning "warning" + LossOfSymbolicDimsSimulationWarning "warning" + LossOfSymbolicDimsCodeGenerationWarning "error" + SymbolicDimsDataTypeCodeGenerationDiagnostic "error" + BlockIODiagnostic "none" + SFUnusedDataAndEventsDiag "warning" + SFUnexpectedBacktrackingDiag "warning" + SFInvalidInputDataAccessInChartInitDiag "warning" + SFNoUnconditionalDefaultTransitionDiag "warning" + SFTransitionOutsideNaturalParentDiag "warning" + SFUnreachableExecutionPathDiag "warning" + SFUndirectedBroadcastEventsDiag "warning" + SFTransitionActionBeforeConditionDiag "warning" + SFOutputUsedAsStateInMooreChartDiag "error" + SFTemporalDelaySmallerThanSampleTimeDiag "warning" + SFSelfTransitionDiag "warning" + SFExecutionAtInitializationDiag "none" + SFMachineParentedDataDiag "warning" + IntegerSaturationMsg "warning" + AllowedUnitSystems "all" + UnitsInconsistencyMsg "warning" + AllowAutomaticUnitConversions on + RCSCRenamedMsg "warning" + RCSCObservableMsg "warning" + ForceCombineOutputUpdateInSim off + UnitDatabase "" + UnderSpecifiedDimensionMsg "none" + } + Simulink.HardwareCC { + $ObjectID 13 + Version "1.18.1" + DisabledProps [] + Description "" + ProdBitPerChar 8 + ProdBitPerShort 16 + ProdBitPerInt 32 + ProdBitPerLong 32 + ProdBitPerLongLong 64 + ProdBitPerFloat 32 + ProdBitPerDouble 64 + ProdBitPerPointer 32 + ProdBitPerSizeT 32 + ProdBitPerPtrDiffT 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 + TargetBitPerSizeT 32 + TargetBitPerPtrDiffT 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 + UseEmbeddedCoderFeatures on + UseSimulinkCoderFeatures on + } + Simulink.ModelReferenceCC { + $ObjectID 14 + Version "1.18.1" + DisabledProps [] + Description "" + UpdateModelReferenceTargets "IfOutOfDateOrStructuralChange" + EnableRefExpFcnMdlSchedulingChecks on + CheckModelReferenceTargetMessage "error" + EnableParallelModelReferenceBuilds off + ParallelModelReferenceErrorOnInvalidPool on + ParallelModelReferenceMATLABWorkerInit "None" + ModelReferenceNumInstancesAllowed "Multi" + PropagateVarSize "Infer from blocks in model" + ModelDependencies "" + ModelReferencePassRootInputsByReference on + ModelReferenceMinAlgLoopOccurrences off + PropagateSignalLabelsOutOfModel off + SupportModelReferenceSimTargetCustomCode off + } + Simulink.SFSimCC { + $ObjectID 15 + Version "1.18.1" + DisabledProps [] + Description "" + SimCustomSourceCode "" + SimCustomHeaderCode "" + SimCustomInitializer "" + SimCustomTerminator "" + SimReservedNameArray [] + SimUserSources "" + SimUserIncludeDirs "" + SimUserLibraries "" + SimUserDefines "" + SimCustomCompilerFlags "" + SimCustomLinkerFlags "" + SFSimEcho on + SimCtrlC on + SimIntegrity on + SimUseLocalCustomCode off + SimParseCustomCode on + SimAnalyzeCustomCode off + SimBuildMode "sf_incremental_build" + SimGenImportedTypeDefs off + ModelFunctionsGlobalVisibility "on" + CompileTimeRecursionLimit 50 + EnableRuntimeRecursion on + MATLABDynamicMemAlloc on + MATLABDynamicMemAllocThreshold 65536 + CustomCodeFunctionArrayLayout [] + DefaultCustomCodeFunctionArrayLayout "NotSpecified" + } + Simulink.RTWCC { + $BackupClass "Simulink.RTWCC" + $ObjectID 16 + Version "1.18.1" + Array { + Type "Cell" + Dimension 16 + Cell "IncludeHyperlinkInReport" + Cell "GenerateTraceInfo" + Cell "GenerateTraceReport" + Cell "GenerateTraceReportSl" + Cell "GenerateTraceReportSf" + Cell "GenerateTraceReportEml" + Cell "PortableWordSizes" + Cell "GenerateWebview" + Cell "GenerateCodeMetricsReport" + Cell "GenerateCodeReplacementReport" + Cell "GenerateMissedCodeReplacementReport" + Cell "GenerateErtSFunction" + Cell "CreateSILPILBlock" + Cell "CodeExecutionProfiling" + Cell "CodeProfilingSaveOptions" + Cell "CodeProfilingInstrumentation" + PropName "DisabledProps" + } + SystemTargetFile "grt.tlc" + HardwareBoard "None" + TLCOptions "" + GenCodeOnly off + MakeCommand "make_rtw" + GenerateMakefile on + PackageGeneratedCodeAndArtifacts off + PackageName "" + TemplateMakefile "grt_default_tmf" + PostCodeGenCommand "" + Description "" + GenerateReport off + RTWVerbose on + RetainRTWFile off + RTWBuildHooks [] + ProfileTLC off + TLCDebug off + TLCCoverage off + TLCAssert off + RTWUseLocalCustomCode off + RTWUseSimCustomCode off + CustomSourceCode "" + CustomHeaderCode "" + CustomInclude "" + CustomSource "" + CustomLibrary "" + CustomDefine "" + CustomBLASCallback "" + CustomLAPACKCallback "" + CustomFFTCallback "" + CustomInitializer "" + CustomTerminator "" + Toolchain "Automatically locate an installed toolchain" + BuildConfiguration "Faster Builds" + CustomToolchainOptions [] + 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" + ObjectivePriorities [] + RTWCustomCompilerOptimizations "" + CheckMdlBeforeBuild "Off" + SharedConstantsCachingThreshold 1024 + Array { + Type "Handle" + Dimension 2 + Simulink.CodeAppCC { + $ObjectID 17 + Version "1.18.1" + Array { + Type "Cell" + Dimension 28 + Cell "IgnoreCustomStorageClasses" + Cell "IgnoreTestpoints" + Cell "InsertBlockDesc" + Cell "SFDataObjDesc" + 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" + Cell "BlockCommentType" + Cell "InsertPolySpaceComments" + Cell "MATLABFcnDesc" + Cell "InternalIdentifier" + Cell "CustomSymbolStrModelFcn" + Cell "CustomSymbolStrUtil" + Cell "CustomSymbolStrEmxType" + Cell "CustomSymbolStrEmxFcn" + Cell "CustomUserTokenString" + PropName "DisabledProps" + } + Description "" + Comment "" + ForceParamTrailComments off + GenerateComments on + CommentStyle "Auto" + IgnoreCustomStorageClasses on + IgnoreTestpoints off + MaxIdLength 31 + PreserveName off + PreserveNameWithParent off + ShowEliminatedStatement off + OperatorAnnotations off + SimulinkDataObjDesc off + SFDataObjDesc off + MATLABFcnDesc off + MangleLength 1 + SharedChecksumLength 8 + CustomSymbolStrGlobalVar "$R$N$M" + CustomSymbolStrType "$N$R$M_T" + CustomSymbolStrField "$N$M" + CustomSymbolStrFcn "$R$N$M$F" + CustomSymbolStrModelFcn "$R$N" + CustomSymbolStrFcnArg "rt$I$N$M" + CustomSymbolStrBlkIO "rtb_$N$M" + CustomSymbolStrTmpVar "$N$M" + CustomSymbolStrMacro "$R$N$M" + CustomSymbolStrUtil "$N$C" + CustomSymbolStrEmxType "emxArray_$M$N" + CustomSymbolStrEmxFcn "emx$M$N" + CustomUserTokenString "" + CustomCommentsFcn "" + DefineNamingRule "None" + DefineNamingFcn "" + ParamNamingRule "None" + ParamNamingFcn "" + SignalNamingRule "None" + SignalNamingFcn "" + InsertBlockDesc off + InsertPolySpaceComments off + SimulinkBlockComments on + BlockCommentType "BlockPathComment" + StateflowObjectComments on + MATLABSourceComments off + EnableCustomComments off + InternalIdentifierFile "" + InternalIdentifier "Shortened" + InlinedPrmAccess "Literals" + ReqsInCode off + UseSimReservedNames off + ReservedNameArray [] + } + Simulink.GRTTargetCC { + $BackupClass "Simulink.TargetCC" + $ObjectID 18 + Version "1.18.1" + Array { + Type "Cell" + Dimension 19 + Cell "GeneratePreprocessorConditionals" + Cell "IncludeMdlTerminateFcn" + Cell "RemoveResetFunc" + Cell "SuppressErrorStatus" + Cell "ERTCustomFileBanners" + Cell "GenerateSampleERTMain" + Cell "GenerateTestInterfaces" + Cell "ModelStepFunctionPrototypeControlCompliant" + Cell "CPPClassGenCompliant" + Cell "PortableWordSizes" + Cell "PurelyIntegerCode" + Cell "PreserveStateflowLocalDataDimensions" + Cell "SupportComplex" + Cell "SupportAbsoluteTime" + Cell "SupportContinuousTime" + Cell "SupportNonInlinedSFcns" + Cell "GenerateAllocFcn" + Cell "ExistingSharedCode" + Cell "RemoveDisableFunc" + PropName "DisabledProps" + } + Description "" + TargetFcnLib "ansi_tfl_table_tmw.mat" + TargetLibSuffix "" + TargetPreCompLibLocation "" + GenFloatMathFcnCalls "NOT IN USE" + TargetLangStandard "C89/C90 (ANSI)" + CodeReplacementLibrary "None" + UtilityFuncGeneration "Auto" + MultiwordTypeDef "System defined" + MultiwordLength 2048 + DynamicStringBufferSize 256 + GenerateFullHeader on + InferredTypesCompatibility off + ExistingSharedCode "" + GenerateSampleERTMain off + GenerateTestInterfaces off + ModelReferenceCompliant on + ParMdlRefBuildCompliant on + CompOptLevelCompliant on + ConcurrentExecutionCompliant on + IncludeMdlTerminateFcn on + GeneratePreprocessorConditionals "Disable all" + CombineOutputUpdateFcns off + CombineSignalStateStructs off + GroupInternalDataByFunction off + SuppressErrorStatus off + IncludeFileDelimiter "Auto" + ERTCustomFileBanners off + SupportAbsoluteTime on + LogVarNameModifier "rt_" + MatFileLogging on + MultiInstanceERTCode off + CodeInterfacePackaging "Nonreusable function" + PurelyIntegerCode off + SupportNonFinite on + SupportComplex on + SupportContinuousTime on + SupportNonInlinedSFcns on + RemoveDisableFunc off + RemoveResetFunc off + SupportVariableSizeSignals off + ParenthesesLevel "Nominal" + CastingMode "Nominal" + PreserveStateflowLocalDataDimensions off + MATLABClassNameForMDSCustomization "Simulink.SoftwareTarget.GRTCustomization" + ModelStepFunctionPrototypeControlCompliant off + CPPClassGenCompliant on + AutosarCompliant off + MDXCompliant off + GRTInterface on + GenerateAllocFcn off + UseToolchainInfoCompliant on + GenerateSharedConstants on + CoderGroups [] + AccessMethods [] + LookupTableObjectStructAxisOrder "1,2,3,4,..." + LUTObjectStructOrderExplicitValues "Size,Breakpoints,Table" + LUTObjectStructOrderEvenSpacing "Size,Breakpoints,Table" + ArrayLayout "Column-major" + UnsupportedSFcnMsg "error" + ERTHeaderFileRootName "$R$E" + ERTSourceFileRootName "$R$E" + ERTDataFileRootName "$R_data" + UseMalloc off + ExtMode off + ExtModeStaticAlloc off + ExtModeTesting off + ExtModeStaticAllocSize 1000000 + ExtModeTransport 0 + ExtModeMexFile "ext_comm" + ExtModeMexArgs "" + ExtModeIntrfLevel "Level1" + RTWCAPISignals off + RTWCAPIParams off + RTWCAPIStates off + RTWCAPIRootIO off + GenerateASAP2 off + MultiInstanceErrorCode "Error" + } + PropName "Components" + } + } + SlCovCC.ConfigComp { + $ObjectID 19 + Version "1.18.1" + DisabledProps [] + Description "Simulink Coverage Configuration Component" + Name "Simulink Coverage" + CovEnable off + CovScope "EntireSystem" + CovIncludeTopModel on + RecordCoverage off + CovPath "/" + CovSaveName "covdata" + CovCompData "" + CovMetricSettings "dw" + CovFilter "" + CovHTMLOptions "" + CovNameIncrementing off + CovHtmlReporting on + CovForceBlockReductionOff on + CovEnableCumulative on + CovSaveCumulativeToWorkspaceVar on + CovSaveSingleToWorkspaceVar on + CovCumulativeVarName "covCumulativeData" + CovCumulativeReport off + CovSaveOutputData on + CovOutputDir "slcov_output/$ModelName$" + CovDataFileName "$ModelName$_cvdata" + CovShowResultsExplorer on + CovReportOnPause on + CovModelRefEnable "off" + CovModelRefExcluded "" + CovExternalEMLEnable off + CovSFcnEnable on + CovBoundaryAbsTol 1e-05 + CovBoundaryRelTol 0.01 + CovUseTimeInterval off + CovStartTime 0 + CovStopTime 0 + CovMcdcMode "Masking" + } + PropName "Components" + } + Name "Configuration" + ExtraOptions "" + CurrentDlgPage "Solver" + ConfigPrmDlgPosition [ 71, 46, 951, 674 ] + } + PropName "ConfigurationSets" + } + Simulink.ConfigSet { + $PropName "ActiveConfigurationSet" + $ObjectID 8 + } + 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 + HideAutomaticName on + BlockRotation 0 + BlockMirror off + } + AnnotationDefaults { + HorizontalAlignment "center" + VerticalAlignment "middle" + ForegroundColor "black" + BackgroundColor "white" + DropShadow off + FontName "Helvetica" + FontSize 10 + FontWeight "normal" + FontAngle "normal" + MarkupType "model" + UseDisplayTextAsClickCallback off + AnnotationType "note_annotation" + FixedHeight off + FixedWidth off + Interpreter "off" + } + LineDefaults { + FontName "Helvetica" + FontSize 9 + FontWeight "normal" + FontAngle "normal" + } + MaskDefaults { + SelfModifiable "off" + IconFrame "on" + IconOpaque "opaque" + RunInitForIconRedraw "analyze" + 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 Constant + Value "1" + VectorParams1D on + SamplingMode "Sample based" + OutMin "[]" + OutMax "[]" + OutDataTypeStr "Inherit: Inherit from 'Constant value'" + LockScale off + SampleTime "inf" + FramePeriod "inf" + PreserveConstantTs off + } + Block { + BlockType Demux + Outputs "4" + DisplayOption "none" + BusSelectionMode off + } + 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 + Unit "inherit" + PortDimensions "-1" + VarSizeSig "Inherit" + SampleTime "-1" + SignalType "auto" + SamplingMode "auto" + LatchByDelayingOutsideSignal off + LatchInputForFeedbackSignals off + Interpolate on + } + Block { + BlockType Integrator + ExternalReset "none" + InitialConditionSource "internal" + InitialCondition "0" + LimitOutput off + UpperSaturationLimit "inf" + LowerSaturationLimit "-inf" + WrapState off + WrappedStateUpperValue "pi" + WrappedStateLowerValue "-pi" + ShowSaturationPort off + ShowStatePort off + AbsoluteTolerance "auto" + IgnoreLimit off + ZeroCross on + ContinuousStateAttributes "''" + } + Block { + BlockType ManualSwitch + CurrentSetting "1" + varsize off + SampleTime "-1" + } + Block { + BlockType Mux + Inputs "4" + DisplayOption "none" + UseBusObject off + BusObject "BusObject" + NonVirtualBus off + } + Block { + BlockType Outport + Port "1" + OutMin "[]" + OutMax "[]" + OutDataTypeStr "Inherit: auto" + LockScale off + BusOutputAsStruct off + Unit "inherit" + PortDimensions "-1" + VarSizeSig "Inherit" + SampleTime "-1" + SignalType "auto" + SamplingMode "auto" + EnsureOutportIsVirtual off + SourceOfInitialOutputValue "Dialog" + OutputWhenDisabled "held" + InitialOutput "[]" + MustResolveToSignalObject off + OutputWhenUnConnected off + OutputWhenUnconnectedValue "0" + VectorParamsAs1DForOutWhenUnconnected off + } + Block { + BlockType Scope + DefaultConfigurationName "Simulink.scopes.TimeScopeBlockCfg" + } + Block { + BlockType StateSpace + A "1" + B "1" + C "1" + D "1" + InitialCondition "0.0" + AbsoluteTolerance "auto" + ContinuousStateAttributes "''" + Realization "auto" + } + Block { + BlockType Step + Time "1" + Before "0" + After "1" + SampleTime "-1" + VectorParams1D on + ZeroCross on + } + Block { + BlockType SubSystem + ShowPortLabels "FromPortIcon" + Permissions "ReadWrite" + PermitHierarchicalResolution "All" + TreatAsAtomicUnit off + MinAlgLoopOccurrences off + PropExecContextOutsideSubsystem 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" + VariantControlMode "Expression" + Variant off + GeneratePreprocessorConditionals off + AllowZeroVariantControls off + PropagateVariantConditions off + TreatAsGroupedWhenPropagatingVariantConditions on + ContentPreviewEnabled off + IsWebBlock off + IsObserver off + Latency "0" + AutoFrameSizeCalculation off + IsWebBlockPanel off + } + Block { + BlockType Sum + IconShape "rectangular" + Inputs "++" + CollapseMode "All dimensions" + CollapseDim "1" + InputSameDT on + AccumDataTypeStr "Inherit: Inherit via internal rule" + OutMin "[]" + OutMax "[]" + OutDataTypeStr "Inherit: Same as first input" + LockScale off + RndMeth "Floor" + SaturateOnIntegerOverflow on + SampleTime "-1" + } + Block { + BlockType ToWorkspace + VariableName "simulink_output" + MaxDataPoints "1000" + Decimation "1" + SaveFormat "Array" + Save2DSignal "Inherit from input (this choice will be removed - see release notes)" + FixptAsFi off + NumInputs "1" + SampleTime "0" + } + } + System { + Name "Grue_L" + Location [0, 27, 1366, 768] + Open on + PortBlocksUseCompactNotation off + SetExecutionDomain off + ExecutionDomainType "Deduce" + 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 "122" + ReportName "simulink-default.rpt" + SIDHighWatermark "326" + Block { + BlockType Sum + Name "Add" + SID "298" + Ports [2, 1] + Position [230, 77, 260, 108] + ZOrder 180 + Inputs "+-" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Sum + Name "Add1" + SID "310" + Ports [2, 1] + Position [-110, 117, -80, 148] + ZOrder 192 + Inputs "+-" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Demux + Name "Demux" + SID "311" + Ports [1, 6] + Position [535, 278, 540, 412] + ZOrder 193 + BlockMirror on + NamePlacement "alternate" + ShowName off + Outputs "6" + DisplayOption "bar" + } + Block { + BlockType Demux + Name "Demux1" + SID "295" + Ports [1, 2] + Position [345, 16, 350, 169] + ZOrder 6 + ShowName off + Outputs "2" + DisplayOption "bar" + } + Block { + BlockType Gain + Name "Gain" + SID "299" + Position [395, 242, 460, 288] + ZOrder 181 + BlockMirror on + NamePlacement "alternate" + Gain "K" + Multiplication "Matrix(K*u) (u vector)" + ParamDataTypeStr "Inherit: Inherit via internal rule" + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Gain + Name "Gain1" + SID "301" + Position [50, 12, 85, 58] + ZOrder 183 + Gain "eta" + ParamDataTypeStr "Inherit: Inherit via internal rule" + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Gain + Name "Gain2" + SID "309" + Position [-40, 117, 0, 153] + ZOrder 191 + Gain "-1/Ti" + ParamDataTypeStr "Inherit: Inherit via internal rule" + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType SubSystem + Name "Grue_L" + SID "278" + Ports [2, 1] + Position [415, 18, 495, 167] + ZOrder -1 + RequestExecContextInheritance off + System { + Name "Grue_L" + Location [683, 27, 1366, 768] + Open off + PortBlocksUseCompactNotation off + SetExecutionDomain off + ExecutionDomainType "Deduce" + 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" + Block { + BlockType Inport + Name "Delta F" + SID "281" + Position [30, 98, 60, 112] + ZOrder -1 + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "Delta C" + SID "284" + Position [25, 148, 55, 162] + ZOrder -2 + Port "2" + IconDisplay "Port number" + } + Block { + BlockType Mux + Name "Mux1" + SID "233" + Ports [2, 1] + Position [95, 81, 100, 179] + ZOrder -4 + ShowName off + Inputs "2" + DisplayOption "bar" + } + Block { + BlockType StateSpace + Name "Syst. linéaire" + SID "232" + Ports [1, 1] + Position [160, 113, 220, 147] + ZOrder -5 + A "[0 0 0 1 0 0 ; 0 0 0 0 1 0 ; 0 0 0 0 0 1 ; 0 0 m*g/Mc -Cd/Mc 0 0 ; 0 0 0 0 -Cr/(b^2*(J/b^2+m)) 0 ; 0 0 -g/R*" + "(1+m/Mc) Cd/(Mc*R) 0 0]" + B "[0 0 ; 0 0 ; 0 0 ; 1/Mc 0 ; 0 -1/(b*(J/b^2+m)) ; -1/(R*Mc) 0 ];" + C "eye(6)" + D "zeros(6,2)" + InitialCondition "0" + } + Block { + BlockType Outport + Name "x" + SID "293" + Position [315, 123, 345, 137] + ZOrder 3 + IconDisplay "Port number" + } + Line { + ZOrder 1 + SrcBlock "Mux1" + SrcPort 1 + DstBlock "Syst. linéaire" + DstPort 1 + } + Line { + ZOrder 2 + SrcBlock "Delta F" + SrcPort 1 + DstBlock "Mux1" + DstPort 1 + } + Line { + ZOrder 4 + SrcBlock "Delta C" + SrcPort 1 + DstBlock "Mux1" + DstPort 2 + } + Line { + ZOrder 18 + SrcBlock "Syst. linéaire" + SrcPort 1 + DstBlock "x" + DstPort 1 + } + } + } + Block { + BlockType Integrator + Name "Integrator" + SID "307" + Ports [1, 1] + Position [30, 120, 60, 150] + ZOrder 189 + } + Block { + BlockType ManualSwitch + Name "Manual Switch" + SID "318" + Position [-200, 107, -170, 143] + ZOrder 287 + } + Block { + BlockType ManualSwitch + Name "Manual Switch1" + SID "320" + Position [-185, 17, -155, 53] + ZOrder 289 + CurrentSetting "0" + } + Block { + BlockType Mux + Name "Mux" + SID "302" + Ports [2, 1] + Position [115, -7, 120, 177] + ZOrder 184 + ShowName off + Inputs "2" + DisplayOption "bar" + } + Block { + BlockType Scope + Name "Scope" + SID "306" + Ports [1] + Position [655, 79, 685, 111] + ZOrder 188 + ScopeSpecificationString "Simulink.scopes.TimeScopeBlockCfg('CurrentConfiguration', extmgr.ConfigurationSet(extm" + "gr.Configuration('Core','General UI',true),extmgr.Configuration('Core','Source UI',true),extmgr.Configuration('S" + "ources','WiredSimulink',true),extmgr.Configuration('Visuals','Time Domain',true,'SerializedDisplays',{struct('Mi" + "nYLimReal','-6.78846','MaxYLimReal','24.26725','YLabelReal','','MinYLimMag','0.00000','MaxYLimMag','24.26725','L" + "egendVisibility','off','XGrid',true,'YGrid',true,'PlotMagPhase',false,'AxesColor',[0 0 0],'AxesTickColor',[0.686" + "274509803922 0.686274509803922 0.686274509803922],'ColorOrder',[1 1 0.0666666666666667;0.0745098039215686 0.6235" + "29411764706 1;1 0.411764705882353 0.16078431372549;0.392156862745098 0.831372549019608 0.0745098039215686;0.7176" + "47058823529 0.274509803921569 1;0.0588235294117647 1 1;1 0.0745098039215686 0.650980392156863],'Title','%','LinePropertiesCache',{{}},'UserDefinedChannelNames',{{}},'NumLines',6,'LineNames',{{'Grue_L:1','Grue_L:" + "2','Grue_L:3','Grue_L:4','Grue_L:5','Grue_L:6'}},'ShowContent',true,'Placement',1)},'DisplayPropertyDefaults',st" + "ruct('MinYLimReal','-6.78846','MaxYLimReal','24.26725','YLabelReal','','MinYLimMag','0.00000','MaxYLimMag','24.2" + "6725','LegendVisibility','off','XGrid',true,'YGrid',true,'PlotMagPhase',false,'AxesColor',[0 0 0],'AxesTickColor" + "',[0.686274509803922 0.686274509803922 0.686274509803922],'ColorOrder',[0.0745098039215686 0.623529411764706 1;1" + " 0.411764705882353 0.16078431372549;1 1 0.0666666666666667;0.717647058823529 0.274509803921569 1;0.3921568627450" + "98 0.831372549019608 0.0745098039215686;0.0588235294117647 1 1;1 0.0745098039215686 0.650980392156863])),extmgr." + "Configuration('Tools','Plot Navigation',true,'OnceAtStop',false,'PreviousZoomMode','ZoomY','PreviousAutoscale','" + "XY'),extmgr.Configuration('Tools','Measurements',true,'Version','2018b')),'Version','2018b','Position',[403 180 " + "550 414])" + NumInputPorts "1" + Floating off + } + Block { + BlockType Step + Name "Step" + SID "315" + Position [-295, 130, -265, 160] + ZOrder 284 + SampleTime "0" + } + Block { + BlockType Step + Name "Step1" + SID "321" + Position [-295, 45, -265, 75] + ZOrder 290 + After "20" + SampleTime "0" + } + Block { + BlockType ToWorkspace + Name "To Workspace" + SID "325" + Ports [1] + Position [590, 5, 650, 35] + ZOrder 292 + VariableName "simout" + MaxDataPoints "inf" + SaveFormat "Timeseries" + Save2DSignal "3-D array (concatenate along third dimension)" + FixptAsFi on + SampleTime "-1" + } + Block { + BlockType ToWorkspace + Name "To Workspace1" + SID "326" + Ports [1] + Position [590, -50, 650, -20] + ZOrder 293 + VariableName "simin" + MaxDataPoints "inf" + SaveFormat "Timeseries" + Save2DSignal "3-D array (concatenate along third dimension)" + FixptAsFi on + SampleTime "-1" + } + Block { + BlockType Constant + Name "Zero" + SID "313" + Position [-295, 90, -265, 120] + ZOrder 282 + Value "0" + OutDataTypeStr "Inherit: Inherit via back propagation" + } + Block { + BlockType Constant + Name "Zero1" + SID "314" + Position [-295, 0, -265, 30] + ZOrder 283 + Value "0" + OutDataTypeStr "Inherit: Inherit via back propagation" + } + Line { + ZOrder 12 + SrcBlock "Demux1" + SrcPort 1 + DstBlock "Grue_L" + DstPort 1 + } + Line { + ZOrder 13 + SrcBlock "Demux1" + SrcPort 2 + DstBlock "Grue_L" + DstPort 2 + } + Line { + ZOrder 20 + SrcBlock "Gain" + SrcPort 1 + Points [-239, 0; 0, -165] + DstBlock "Add" + DstPort 2 + } + Line { + ZOrder 15 + SrcBlock "Add" + SrcPort 1 + Points [18, 0] + Branch { + ZOrder 59 + Points [0, -130] + DstBlock "To Workspace1" + DstPort 1 + } + Branch { + ZOrder 58 + DstBlock "Demux1" + DstPort 1 + } + } + Line { + ZOrder 22 + SrcBlock "Mux" + SrcPort 1 + DstBlock "Add" + DstPort 1 + } + Line { + ZOrder 23 + SrcBlock "Gain1" + SrcPort 1 + Points [9, 0; 0, 5] + DstBlock "Mux" + DstPort 1 + } + Line { + ZOrder 10 + SrcBlock "Grue_L" + SrcPort 1 + Points [79, 0] + Branch { + ZOrder 57 + Points [0, -75] + DstBlock "To Workspace" + DstPort 1 + } + Branch { + ZOrder 56 + Points [14, 0] + Branch { + ZOrder 55 + Points [0, 170; -13, 0] + Branch { + ZOrder 44 + Points [0, 80] + DstBlock "Demux" + DstPort 1 + } + Branch { + ZOrder 43 + DstBlock "Gain" + DstPort 1 + } + } + Branch { + ZOrder 33 + DstBlock "Scope" + DstPort 1 + } + } + } + Line { + ZOrder 36 + SrcBlock "Gain2" + SrcPort 1 + DstBlock "Integrator" + DstPort 1 + } + Line { + ZOrder 37 + SrcBlock "Integrator" + SrcPort 1 + Points [23, 0; 0, -5] + DstBlock "Mux" + DstPort 2 + } + Line { + ZOrder 39 + SrcBlock "Add1" + SrcPort 1 + DstBlock "Gain2" + DstPort 1 + } + Line { + ZOrder 42 + SrcBlock "Demux" + SrcPort 5 + Points [-655, 0] + DstBlock "Add1" + DstPort 2 + } + Line { + ZOrder 50 + SrcBlock "Step" + SrcPort 1 + Points [9, 0; 0, -10] + DstBlock "Manual Switch" + DstPort 2 + } + Line { + ZOrder 48 + SrcBlock "Manual Switch" + SrcPort 1 + DstBlock "Add1" + DstPort 1 + } + Line { + ZOrder 49 + SrcBlock "Zero" + SrcPort 1 + Points [27, 0; 0, 10] + DstBlock "Manual Switch" + DstPort 1 + } + Line { + ZOrder 52 + SrcBlock "Manual Switch1" + SrcPort 1 + DstBlock "Gain1" + DstPort 1 + } + Line { + ZOrder 53 + SrcBlock "Zero1" + SrcPort 1 + Points [35, 0; 0, 10] + DstBlock "Manual Switch1" + DstPort 1 + } + Line { + ZOrder 54 + SrcBlock "Step1" + SrcPort 1 + Points [35, 0; 0, -15] + DstBlock "Manual Switch1" + DstPort 2 + } + Annotation { + SID "324" + Name "c" + Position [-191, 90, -179, 105] + InternalMargins [0, 0, 0, 0] + FixedHeight on + FixedWidth on + HorizontalAlignment "left" + VerticalAlignment "top" + } + Annotation { + SID "322" + Name "Delta d_c" + Position [-192, -7, -148, 8] + InternalMargins [0, 0, 0, 0] + HorizontalAlignment "left" + VerticalAlignment "top" + } + Annotation { + SID "312" + Name "Delta_r" + Position [433, 356, 468, 371] + InternalMargins [0, 0, 0, 0] + HorizontalAlignment "left" + VerticalAlignment "top" + } + } +} diff --git a/424-Systeme_Non_Lineaires/TP2/Grue_L.mdl.r2009b b/424-Systeme_Non_Lineaires/TP2/Grue_L.mdl.r2009b new file mode 100644 index 0000000..332dab8 --- /dev/null +++ b/424-Systeme_Non_Lineaires/TP2/Grue_L.mdl.r2009b @@ -0,0 +1,882 @@ +Model { + Name "Grue_L" + Version 7.4 + MdlSubVersion 0 + GraphicalInterface { + NumRootInports 0 + NumRootOutports 0 + ParameterArgumentNames "" + ComputedModelVersion "1.70" + NumModelReferences 0 + NumTestPointedSignals 0 + } + SavedCharacterEncoding "ISO-8859-1" + SaveDefaultBlockParams on + ScopeRefreshTime 0.035000 + OverrideScopeRefreshTime on + DisableAllScopes off + DataTypeOverride "UseLocalSettings" + MinMaxOverflowLogging "UseLocalSettings" + MinMaxOverflowArchiveMode "Overwrite" + MaxMDLFileLineLength 120 + Created "Fri Mar 23 18:37:01 2012" + Creator "abbasturki" + UpdateHistory "UpdateHistoryNever" + ModifiedByFormat "%" + LastModifiedBy "abbasturki" + ModifiedDateFormat "%" + LastModifiedDate "Thu Mar 24 18:48:48 2016" + RTWModifiedTimeStamp 380746096 + 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 + 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 1 + Version "1.6.0" + Array { + Type "Handle" + Dimension 8 + Simulink.SolverCC { + $ObjectID 2 + Version "1.6.0" + StartTime "0.0" + StopTime "20" + 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" + Solver "ode45" + SolverName "ode45" + ShapePreserveControl "DisableAll" + ZeroCrossControl "UseLocalSettings" + ZeroCrossAlgorithm "Nonadaptive" + AlgebraicLoopSolver "TrustRegion" + SolverResetMethod "Fast" + PositivePriorityOrder off + AutoInsertRateTranBlk off + SampleTimeConstraint "Unconstrained" + InsertRTBMode "Whenever possible" + } + Simulink.DataIOCC { + $ObjectID 3 + Version "1.6.0" + Decimation "1" + ExternalInput "[t, u]" + FinalStateName "xFinal" + InitialState "xInitial" + LimitDataPoints on + MaxDataPoints "1000" + LoadExternalInput off + LoadInitialState off + SaveFinalState off + SaveCompleteFinalSimState off + SaveFormat "Array" + SaveOutput on + SaveState off + SignalLogging on + InspectSignalLogs off + SaveTime on + ReturnWorkspaceOutputs off + StateSaveName "xout" + TimeSaveName "tout" + OutputSaveName "yout" + SignalLoggingName "logsout" + OutputOption "RefineOutputTimes" + OutputTimes "[]" + ReturnWorkspaceOutputsName "out" + Refine "1" + } + Simulink.OptimizationCC { + $ObjectID 4 + Version "1.6.0" + Array { + Type "Cell" + Dimension 7 + Cell "BooleansAsBitfields" + Cell "PassReuseOutputArgsAs" + Cell "PassReuseOutputArgsThreshold" + Cell "ZeroExternalMemoryAtStartup" + Cell "ZeroInternalMemoryAtStartup" + Cell "OptimizeModelRefInitCode" + Cell "NoFixptDivByZeroProtection" + PropName "DisabledProps" + } + BlockReduction on + BooleanDataType on + ConditionallyExecuteInputs on + InlineParams off + UseIntDivNetSlope off + InlineInvariantSignals off + OptimizeBlockIOStorage on + BufferReuse on + EnhancedBackFolding off + StrengthReduction off + EnforceIntegerDowncast on + ExpressionFolding on + BooleansAsBitfields off + 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" + BufferReusableBoundary on + SimCompilerOptimization "Off" + AccelVerboseBuild off + } + Simulink.DebuggingCC { + $ObjectID 5 + Version "1.6.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" + 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" + ModelReferenceVersionMismatchMessage "none" + ModelReferenceIOMismatchMessage "none" + ModelReferenceCSMismatchMessage "none" + UnknownTsInhSupMsg "warning" + ModelReferenceDataLoggingMessage "warning" + ModelReferenceSymbolNameMessage "warning" + ModelReferenceExtraNoncontSigs "error" + StateNameClashWarn "warning" + SimStateInterfaceChecksumMismatchMsg "warning" + StrictBusMsg "Warning" + LoggingUnavailableSignals "error" + BlockIODiagnostic "none" + } + Simulink.HardwareCC { + $ObjectID 6 + Version "1.6.0" + ProdBitPerChar 8 + ProdBitPerShort 16 + ProdBitPerInt 32 + ProdBitPerLong 32 + ProdIntDivRoundTo "Undefined" + ProdEndianess "Unspecified" + ProdWordSize 32 + ProdShiftRightIntArith on + ProdHWDeviceType "32-bit Generic" + TargetBitPerChar 8 + TargetBitPerShort 16 + TargetBitPerInt 32 + TargetBitPerLong 32 + TargetShiftRightIntArith on + TargetIntDivRoundTo "Undefined" + TargetEndianess "Unspecified" + TargetWordSize 32 + TargetTypeEmulationWarnSuppressLevel 0 + TargetPreprocMaxBitsSint 32 + TargetPreprocMaxBitsUint 32 + TargetHWDeviceType "Specified" + TargetUnknown off + ProdEqTarget on + } + Simulink.ModelReferenceCC { + $ObjectID 7 + Version "1.6.0" + UpdateModelReferenceTargets "IfOutOfDateOrStructuralChange" + CheckModelReferenceTargetMessage "error" + ModelReferenceNumInstancesAllowed "Multi" + ModelReferencePassRootInputsByReference on + ModelReferenceMinAlgLoopOccurrences off + } + Simulink.SFSimCC { + $ObjectID 8 + Version "1.6.0" + SFSimEnableDebug on + SFSimOverflowDetection on + SFSimEcho on + SimBlas on + SimCtrlC on + SimExtrinsic on + SimIntegrity on + SimUseLocalCustomCode off + SimBuildMode "sf_incremental_build" + } + Simulink.RTWCC { + $BackupClass "Simulink.RTWCC" + $ObjectID 9 + Version "1.6.0" + Array { + Type "Cell" + Dimension 6 + Cell "IncludeHyperlinkInReport" + Cell "GenerateTraceInfo" + Cell "GenerateTraceReport" + Cell "GenerateTraceReportSl" + Cell "GenerateTraceReportSf" + Cell "GenerateTraceReportEml" + 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 + RTWCompilerOptimization "Off" + CheckMdlBeforeBuild "Off" + Array { + Type "Handle" + Dimension 2 + Simulink.CodeAppCC { + $ObjectID 10 + Version "1.6.0" + Array { + Type "Cell" + Dimension 19 + Cell "IgnoreCustomStorageClasses" + Cell "IgnoreTestpoints" + Cell "InsertBlockDesc" + Cell "SFDataObjDesc" + 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 + 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 + SimulinkBlockComments on + EnableCustomComments off + InlinedPrmAccess "Literals" + ReqsInCode off + UseSimReservedNames off + } + Simulink.GRTTargetCC { + $BackupClass "Simulink.TargetCC" + $ObjectID 11 + Version "1.6.0" + Array { + Type "Cell" + Dimension 17 + Cell "GeneratePreprocessorConditionals" + Cell "IncludeMdlTerminateFcn" + Cell "CombineOutputUpdateFcns" + Cell "SuppressErrorStatus" + Cell "ERTCustomFileBanners" + Cell "GenerateSampleERTMain" + Cell "GenerateTestInterfaces" + Cell "ModelStepFunctionPrototypeControlCompliant" + Cell "CPPClassGenCompliant" + Cell "MultiInstanceERTCode" + Cell "PurelyIntegerCode" + Cell "SupportNonFinite" + 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" + 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 + 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 + GenerateASAP2 off + } + PropName "Components" + } + } + PropName "Components" + } + Name "Configuration" + CurrentDlgPage "Solver" + ConfigPrmDlgPosition " [ 280, 124, 1160, 754 ] " + } + PropName "ConfigurationSets" + } + Simulink.ConfigSet { + $PropName "ActiveConfigurationSet" + $ObjectID 1 + } + 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 Inport + Port "1" + UseBusObject off + BusObject "BusObject" + BusOutputAsStruct off + PortDimensions "-1" + VarSizeSig "Inherit" + SampleTime "-1" + OutMin "[]" + OutMax "[]" + DataType "auto" + OutDataType "fixdt(1,16,0)" + OutScaling "[]" + OutDataTypeStr "Inherit: auto" + LockScale off + SignalType "auto" + SamplingMode "auto" + LatchByDelayingOutsideSignal off + LatchByCopyingInsideSignal off + Interpolate on + } + Block { + BlockType Mux + Inputs "4" + DisplayOption "none" + UseBusObject off + BusObject "BusObject" + NonVirtualBus off + } + Block { + BlockType Outport + Port "1" + UseBusObject off + BusObject "BusObject" + BusOutputAsStruct off + PortDimensions "-1" + VarSizeSig "Inherit" + SampleTime "-1" + OutMin "[]" + OutMax "[]" + DataType "auto" + OutDataType "fixdt(1,16,0)" + OutScaling "[]" + OutDataTypeStr "Inherit: auto" + LockScale off + SignalType "auto" + SamplingMode "auto" + SourceOfInitialOutputValue "Dialog" + OutputWhenDisabled "held" + InitialOutput "[]" + } + Block { + BlockType StateSpace + A "1" + B "1" + C "1" + D "1" + X0 "0" + AbsoluteTolerance "auto" + ContinuousStateAttributes "''" + Realization "auto" + } + 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" + MinMaxOverflowLogging "UseLocalSettings" + } + } + System { + Name "Grue_L" + Location [378, 114, 1308, 624] + 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 286 + Block { + BlockType SubSystem + Name "Grue_L" + SID 278 + Ports [2, 6] + Position [405, 96, 540, 249] + MinAlgLoopOccurrences off + PropExecContextOutsideSubsystem off + RTWSystemCode "Auto" + FunctionWithSeparateData off + Opaque off + RequestExecContextInheritance off + MaskHideContents off + System { + Name "Grue_L" + Location [713, 179, 1248, 430] + 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" + Block { + BlockType Inport + Name "Delta F" + SID 281 + Position [30, 98, 60, 112] + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Inport + Name "Delta C" + SID 284 + Position [25, 148, 55, 162] + Port "2" + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Demux + Name "Demux1" + SID 236 + Ports [1, 6] + Position [295, 28, 300, 227] + ShowName off + Outputs "6" + DisplayOption "bar" + } + Block { + BlockType Mux + Name "Mux1" + SID 233 + Ports [2, 1] + Position [95, 81, 100, 179] + ShowName off + Inputs "2" + DisplayOption "bar" + } + Block { + BlockType StateSpace + Name "Syst. linéaire" + SID 232 + Position [160, 113, 220, 147] + A "[0 0 0 1 0 0 ; 0 0 0 0 1 0 ; 0 0 0 0 0 1 ; 0 0 m*g/Mc -Cd/Mc 0 0 ; 0 0 0 0 -Cr/(b^2*(J/b^2+m)) 0 ; 0 0 -g/R*" + "(1+m/Mc) Cd/(Mc*R) 0 0]" + B "[0 0 ; 0 0 ; 0 0 ; 1/Mc 0 ; 0 -1/(b*(J/b^2+m)) ; -1/(R*Mc) 0 ];" + C "eye(6)" + D "zeros(6,2)" + } + Block { + BlockType Outport + Name "Delta d" + SID 279 + Position [480, 33, 510, 47] + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Outport + Name "Delta r" + SID 280 + Position [445, 68, 475, 82] + Port "2" + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Outport + Name "Delta theta" + SID 282 + Position [415, 103, 445, 117] + Port "3" + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Outport + Name "Delta d'" + SID 283 + Position [380, 138, 410, 152] + Port "4" + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Outport + Name "Delta r'" + SID 285 + Position [350, 173, 380, 187] + Port "5" + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Outport + Name "Delta theta'" + SID 286 + Position [320, 208, 350, 222] + Port "6" + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Line { + SrcBlock "Mux1" + SrcPort 1 + DstBlock "Syst. linéaire" + DstPort 1 + } + Line { + SrcBlock "Delta F" + SrcPort 1 + DstBlock "Mux1" + DstPort 1 + } + Line { + SrcBlock "Syst. linéaire" + SrcPort 1 + DstBlock "Demux1" + DstPort 1 + } + Line { + SrcBlock "Delta C" + SrcPort 1 + DstBlock "Mux1" + DstPort 2 + } + Line { + SrcBlock "Demux1" + SrcPort 1 + DstBlock "Delta d" + DstPort 1 + } + Line { + SrcBlock "Demux1" + SrcPort 2 + DstBlock "Delta r" + DstPort 1 + } + Line { + SrcBlock "Demux1" + SrcPort 3 + DstBlock "Delta theta" + DstPort 1 + } + Line { + SrcBlock "Demux1" + SrcPort 4 + DstBlock "Delta d'" + DstPort 1 + } + Line { + SrcBlock "Demux1" + SrcPort 5 + DstBlock "Delta r'" + DstPort 1 + } + Line { + SrcBlock "Demux1" + SrcPort 6 + DstBlock "Delta theta'" + DstPort 1 + } + } + } + } +} diff --git a/424-Systeme_Non_Lineaires/TP2/Grue_L.slxc b/424-Systeme_Non_Lineaires/TP2/Grue_L.slxc new file mode 100644 index 0000000..6f44a55 Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/Grue_L.slxc differ diff --git a/424-Systeme_Non_Lineaires/TP2/Grue_NL.mdl b/424-Systeme_Non_Lineaires/TP2/Grue_NL.mdl new file mode 100644 index 0000000..cf02f4d --- /dev/null +++ b/424-Systeme_Non_Lineaires/TP2/Grue_NL.mdl @@ -0,0 +1,3720 @@ +Model { + Name "Grue_NL" + Version 9.2 + SavedCharacterEncoding "UTF-8" + GraphicalInterface { + NumRootInports 0 + NumRootOutports 0 + ParameterArgumentNames "" + ComputedModelVersion "1.110" + NumModelReferences 0 + NumTestPointedSignals 0 + NumProvidedFunctions 0 + NumRequiredFunctions 0 + NumResetEvents 0 + HasInitializeEvent 0 + HasTerminateEvent 0 + PreCompExecutionDomainType "Unset" + IsExportFunctionModel 0 + NumParameterArguments 0 + NumExternalFileReferences 0 + OrderedModelArguments 1 + } + LogicAnalyzerPlugin "on" + DiagnosticSuppressor "on" + WebScopes_FoundationPlugin "on" + NotesPlugin "on" + SLCCPlugin "on" + ScopeRefreshTime 0.035000 + OverrideScopeRefreshTime on + DisableAllScopes off + DataTypeOverride "UseLocalSettings" + DataTypeOverrideAppliesTo "AllNumericTypes" + MinMaxOverflowLogging "UseLocalSettings" + MinMaxOverflowArchiveMode "Overwrite" + FPTRunName "Run 1" + MaxMDLFileLineLength 120 + LastSavedArchitecture "glnxa64" + Object { + $PropName "BdWindowsInfo" + $ObjectID 1 + $ClassName "Simulink.BDWindowsInfo" + Object { + $PropName "WindowsInfo" + $ObjectID 2 + $ClassName "Simulink.WindowInfo" + IsActive [1] + Location [0.0, 27.0, 1366.0, 741.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 [1328.0, 565.0] + ZoomFactor [1.0189753320683113] + Offset [-150.92369535137018, -54.481645660748875] + } + Object { + $PropName "DockComponentsInfo" + $ObjectID 6 + $ClassName "Simulink.DockComponentInfo" + Type "GLUE2:PropertyInspector" + ID "Property Inspector" + Visible [0] + CreateCallback "" + UserData "" + Floating [0] + DockPosition "Right" + Width [640] + Height [480] + } + WindowState "AAAA/wAAAAD9AAAAAgAAAAAAAAC9AAAB+PwCAAAAA/sAAAAWAEQAbwBjAGsAVwBpAGQAZwBlAHQAMwEAAAAxAAAB+AAAA" + "AAAAAAA+wAAABYARABvAGMAawBXAGkAZABnAGUAdAA0AAAAAAD/////AAAAAAAAAAD7AAAAUgBHAEwAVQBFADIAIAB0AHIAZQBlACAAYwBvAG0Ac" + "ABvAG4AZQBuAHQALwBHAEwAVQBFADIAIAB0AHIAZQBlACAAYwBvAG0AcABvAG4AZQBuAHQAAAAAAP////8AAABiAP///wAAAAEAAAAAAAAAAPwCA" + "AAAAfsAAABUAEcATABVAEUAMgA6AFAAcgBvAHAAZQByAHQAeQBJAG4AcwBwAGUAYwB0AG8AcgAvAFAAcgBvAHAAZQByAHQAeQAgAEkAbgBzAHAAZ" + "QBjAHQAbwByAAAAAAD/////AAAAOQD///8AAAVWAAACdAAAAAEAAAACAAAAAQAAAAL8AAAAAQAAAAIAAAAP/////wAAAAAA/////wAAAAAAAAAA/" + "////wEAAAAA/////wAAAAAAAAAA/////wAAAAAA/////wAAAAAAAAAA/////wAAAAAA/////wAAAAAAAAAA/////wAAAAAA/////wAAAAAAAAAA/" + "////wEAAACA/////wAAAAAAAAAA/////wEAAADo/////wAAAAAAAAAA/////wAAAAAA/////wAAAAAAAAAA/////wEAAAFo/////wAAAAAAAAAA/" + "////wAAAAAA/////wAAAAAAAAAA/////wAAAAAA/////wAAAAAAAAAA/////wAAAAAA/////wAAAAAAAAAA/////wEAAANR/////wAAAAAAAAAA/" + "////wAAAAAA/////wAAAAAAAAAA/////wAAAAAA/////wAAAAAAAAAA" + } + } + HideAutomaticNames on + Created "Fri Mar 23 18:37:01 2012" + Creator "abbasturki" + UpdateHistory "UpdateHistoryNever" + ModifiedByFormat "%" + LastModifiedBy "pac" + ModifiedDateFormat "%" + LastModifiedDate "Tue Apr 23 16:42:55 2019" + RTWModifiedTimeStamp 477938572 + ModelVersionFormat "1.%" + SampleTimeColors off + SampleTimeAnnotations off + LibraryLinkDisplay "none" + WideLines off + ShowLineDimensions off + ShowPortDataTypes off + ShowAllPropagatedSignalLabels off + PortDataTypeDisplayFormat "AliasTypeOnly" + ShowEditTimeErrors on + ShowEditTimeWarnings on + ShowEditTimeAdvisorChecks off + ShowPortUnits off + ShowDesignRanges off + ShowLoopsOnError on + IgnoreBidirectionalLines off + ShowStorageClass off + ShowTestPointIcons on + ShowSignalResolutionIcons on + ShowViewerIcons on + SortedOrder off + VariantCondition off + ShowSubsystemDomainSpec off + ExecutionContextIcon off + ShowLinearizationAnnotations on + ShowVisualizeInsertedRTB on + ShowMarkup on + BlockNameDataTip off + BlockParametersDataTip off + BlockDescriptionStringDataTip off + BlockVariantConditionDataTip off + ToolBar on + StatusBar on + BrowserShowLibraryLinks off + FunctionConnectors off + BrowserLookUnderMasks off + MultiThreadCoSim on + SimulationMode "normal" + VisualizeLoggedSignalsWhenLoggingToFile off + PauseTimes "5" + NumberOfSteps 1 + SnapshotBufferSize 10 + SnapshotInterval 10 + NumberOfLastSnapshots 0 + EnablePacing off + PacingRate 1 + LinearizationMsg "none" + Profile off + ParamWorkspaceSource "MATLABWorkspace" + AccelSystemTargetFile "accel.tlc" + AccelTemplateMakefile "accel_default_tmf" + AccelMakeCommand "make_rtw" + TryForcingSFcnDF off + Object { + $PropName "DataLoggingOverride" + $ObjectID 7 + $ClassName "Simulink.SimulationData.ModelLoggingInfo" + model_ "Grue_NL" + Array { + Type "Cell" + Dimension 1 + Cell "Grue_NL" + 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 + OrderedModelArguments on + Array { + Type "Handle" + Dimension 1 + Simulink.ConfigSet { + $ObjectID 8 + Version "1.18.1" + DisabledProps [] + Description "" + Array { + Type "Handle" + Dimension 9 + Simulink.SolverCC { + $ObjectID 9 + Version "1.18.1" + DisabledProps [] + Description "" + StartTime "0.0" + StopTime "dt" + AbsTol "auto" + AutoScaleAbsTol on + FixedStep "1e-4" + InitialStep "auto" + MaxOrder 5 + ZcThreshold "auto" + ConsecutiveZCsStepRelTol "10*128*eps" + MaxConsecutiveZCs "1000" + ExtrapolationOrder 4 + NumberNewtonIterations 1 + MaxStep "auto" + MinStep "auto" + MaxConsecutiveMinStep "1" + RelTol "1e-3" + EnableMultiTasking on + 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" + SampleTimeProperty [] + DecoupledContinuousIntegration off + MinimalZcImpactIntegration off + } + Simulink.DataIOCC { + $ObjectID 10 + Version "1.18.1" + DisabledProps [] + Description "" + 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" + LoggingToFile off + DatasetSignalFormat "timeseries" + LoggingFileName "out.mat" + LoggingIntervals "[-inf, inf]" + } + Simulink.OptimizationCC { + $ObjectID 11 + Version "1.18.1" + Array { + Type "Cell" + Dimension 8 + Cell "BooleansAsBitfields" + Cell "PassReuseOutputArgsAs" + Cell "PassReuseOutputArgsThreshold" + Cell "ZeroExternalMemoryAtStartup" + Cell "ZeroInternalMemoryAtStartup" + Cell "OptimizeModelRefInitCode" + Cell "NoFixptDivByZeroProtection" + Cell "UseSpecifiedMinMax" + PropName "DisabledProps" + } + Description "" + 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 + AdvancedOptControl "" + 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 + LifeSpan "inf" + MaxStackSize "Inherit from target" + BufferReusableBoundary on + SimCompilerOptimization "off" + AccelVerboseBuild off + OptimizeBlockOrder "off" + OptimizeDataStoreBuffers on + BusAssignmentInplaceUpdate on + DifferentSizesBufferReuse off + OptimizationLevel "level2" + OptimizationPriority "Balanced" + OptimizationCustomize on + UseRowMajorAlgorithm off + LabelGuidedReuse off + } + Simulink.DebuggingCC { + $ObjectID 12 + Version "1.18.1" + Array { + Type "Cell" + Dimension 1 + Cell "UseOnlyExistingSharedCode" + PropName "DisabledProps" + } + Description "" + RTPrefix "error" + ConsistencyChecking "none" + ArrayBoundsChecking "none" + SignalInfNanChecking "none" + StringTruncationChecking "error" + 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" + ExportedTasksRateTransMsg "none" + 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 "warning" + SignalLabelMismatchMsg "none" + UnconnectedInputMsg "warning" + UnconnectedOutputMsg "warning" + UnconnectedLineMsg "warning" + UseOnlyExistingSharedCode "error" + SFcnCompatibilityMsg "none" + FrameProcessingCompatibilityMsg "error" + UniqueDataStoreMsg "none" + BusObjectLabelMismatch "warning" + RootOutportRequireBusObject "warning" + AssertControl "UseLocalSettings" + AllowSymbolicDim on + RowMajorDimensionSupport off + ModelReferenceIOMsg "none" + ModelReferenceMultiInstanceNormalModeStructChecksumCheck "error" + ModelReferenceVersionMismatchMessage "none" + ModelReferenceIOMismatchMessage "none" + UnknownTsInhSupMsg "warning" + ModelReferenceDataLoggingMessage "warning" + ModelReferenceSymbolNameMessage "warning" + ModelReferenceExtraNoncontSigs "error" + StateNameClashWarn "warning" + SimStateInterfaceChecksumMismatchMsg "warning" + SimStateOlderReleaseMsg "error" + ChecksumConsistencyForSSReuse "none" + LibraryContextMissingDiagnostic "warning" + MatchCodeGenerationContextForUpdateDiagram "none" + InitInArrayFormatMsg "warning" + StrictBusMsg "ErrorLevel1" + BusNameAdapt "WarnAndRepair" + NonBusSignalsTreatedAsBus "none" + SymbolicDimMinMaxWarning "warning" + LossOfSymbolicDimsSimulationWarning "warning" + LossOfSymbolicDimsCodeGenerationWarning "error" + SymbolicDimsDataTypeCodeGenerationDiagnostic "error" + BlockIODiagnostic "none" + SFUnusedDataAndEventsDiag "warning" + SFUnexpectedBacktrackingDiag "warning" + SFInvalidInputDataAccessInChartInitDiag "warning" + SFNoUnconditionalDefaultTransitionDiag "warning" + SFTransitionOutsideNaturalParentDiag "warning" + SFUnreachableExecutionPathDiag "warning" + SFUndirectedBroadcastEventsDiag "warning" + SFTransitionActionBeforeConditionDiag "warning" + SFOutputUsedAsStateInMooreChartDiag "error" + SFTemporalDelaySmallerThanSampleTimeDiag "warning" + SFSelfTransitionDiag "warning" + SFExecutionAtInitializationDiag "none" + SFMachineParentedDataDiag "warning" + IntegerSaturationMsg "warning" + AllowedUnitSystems "all" + UnitsInconsistencyMsg "warning" + AllowAutomaticUnitConversions on + RCSCRenamedMsg "warning" + RCSCObservableMsg "warning" + ForceCombineOutputUpdateInSim off + UnitDatabase "" + UnderSpecifiedDimensionMsg "none" + } + Simulink.HardwareCC { + $ObjectID 13 + Version "1.18.1" + DisabledProps [] + Description "" + ProdBitPerChar 8 + ProdBitPerShort 16 + ProdBitPerInt 32 + ProdBitPerLong 32 + ProdBitPerLongLong 64 + ProdBitPerFloat 32 + ProdBitPerDouble 64 + ProdBitPerPointer 32 + ProdBitPerSizeT 32 + ProdBitPerPtrDiffT 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 + TargetBitPerSizeT 32 + TargetBitPerPtrDiffT 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 + UseEmbeddedCoderFeatures on + UseSimulinkCoderFeatures on + } + Simulink.ModelReferenceCC { + $ObjectID 14 + Version "1.18.1" + DisabledProps [] + Description "" + UpdateModelReferenceTargets "IfOutOfDateOrStructuralChange" + EnableRefExpFcnMdlSchedulingChecks on + CheckModelReferenceTargetMessage "error" + EnableParallelModelReferenceBuilds off + ParallelModelReferenceErrorOnInvalidPool on + ParallelModelReferenceMATLABWorkerInit "None" + ModelReferenceNumInstancesAllowed "Multi" + PropagateVarSize "Infer from blocks in model" + ModelDependencies "" + ModelReferencePassRootInputsByReference on + ModelReferenceMinAlgLoopOccurrences off + PropagateSignalLabelsOutOfModel off + SupportModelReferenceSimTargetCustomCode off + } + Simulink.SFSimCC { + $ObjectID 15 + Version "1.18.1" + DisabledProps [] + Description "" + SimCustomSourceCode "" + SimCustomHeaderCode "" + SimCustomInitializer "" + SimCustomTerminator "" + SimReservedNameArray [] + SimUserSources "" + SimUserIncludeDirs "" + SimUserLibraries "" + SimUserDefines "" + SimCustomCompilerFlags "" + SimCustomLinkerFlags "" + SFSimEcho on + SimCtrlC on + SimIntegrity on + SimUseLocalCustomCode off + SimParseCustomCode on + SimAnalyzeCustomCode off + SimBuildMode "sf_incremental_build" + SimGenImportedTypeDefs off + ModelFunctionsGlobalVisibility "on" + CompileTimeRecursionLimit 50 + EnableRuntimeRecursion on + MATLABDynamicMemAlloc on + MATLABDynamicMemAllocThreshold 65536 + CustomCodeFunctionArrayLayout [] + DefaultCustomCodeFunctionArrayLayout "NotSpecified" + } + Simulink.RTWCC { + $BackupClass "Simulink.RTWCC" + $ObjectID 16 + Version "1.18.1" + Array { + Type "Cell" + Dimension 16 + Cell "IncludeHyperlinkInReport" + Cell "GenerateTraceInfo" + Cell "GenerateTraceReport" + Cell "GenerateTraceReportSl" + Cell "GenerateTraceReportSf" + Cell "GenerateTraceReportEml" + Cell "PortableWordSizes" + Cell "GenerateWebview" + Cell "GenerateCodeMetricsReport" + Cell "GenerateCodeReplacementReport" + Cell "GenerateMissedCodeReplacementReport" + Cell "GenerateErtSFunction" + Cell "CreateSILPILBlock" + Cell "CodeExecutionProfiling" + Cell "CodeProfilingSaveOptions" + Cell "CodeProfilingInstrumentation" + PropName "DisabledProps" + } + SystemTargetFile "grt.tlc" + HardwareBoard "None" + TLCOptions "" + GenCodeOnly off + MakeCommand "make_rtw" + GenerateMakefile on + PackageGeneratedCodeAndArtifacts off + PackageName "" + TemplateMakefile "grt_default_tmf" + PostCodeGenCommand "" + Description "" + GenerateReport off + RTWVerbose on + RetainRTWFile off + RTWBuildHooks [] + ProfileTLC off + TLCDebug off + TLCCoverage off + TLCAssert off + RTWUseLocalCustomCode off + RTWUseSimCustomCode off + CustomSourceCode "" + CustomHeaderCode "" + CustomInclude "" + CustomSource "" + CustomLibrary "" + CustomDefine "" + CustomBLASCallback "" + CustomLAPACKCallback "" + CustomFFTCallback "" + CustomInitializer "" + CustomTerminator "" + Toolchain "Automatically locate an installed toolchain" + BuildConfiguration "Faster Builds" + CustomToolchainOptions [] + 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" + ObjectivePriorities [] + RTWCustomCompilerOptimizations "" + CheckMdlBeforeBuild "Off" + SharedConstantsCachingThreshold 1024 + Array { + Type "Handle" + Dimension 2 + Simulink.CodeAppCC { + $ObjectID 17 + Version "1.18.1" + Array { + Type "Cell" + Dimension 28 + Cell "IgnoreCustomStorageClasses" + Cell "IgnoreTestpoints" + Cell "InsertBlockDesc" + Cell "SFDataObjDesc" + 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" + Cell "BlockCommentType" + Cell "InsertPolySpaceComments" + Cell "MATLABFcnDesc" + Cell "InternalIdentifier" + Cell "CustomSymbolStrModelFcn" + Cell "CustomSymbolStrUtil" + Cell "CustomSymbolStrEmxType" + Cell "CustomSymbolStrEmxFcn" + Cell "CustomUserTokenString" + PropName "DisabledProps" + } + Description "" + Comment "" + ForceParamTrailComments off + GenerateComments on + CommentStyle "Auto" + IgnoreCustomStorageClasses on + IgnoreTestpoints off + MaxIdLength 31 + PreserveName off + PreserveNameWithParent off + ShowEliminatedStatement off + OperatorAnnotations off + SimulinkDataObjDesc off + SFDataObjDesc off + MATLABFcnDesc off + MangleLength 1 + SharedChecksumLength 8 + CustomSymbolStrGlobalVar "$R$N$M" + CustomSymbolStrType "$N$R$M_T" + CustomSymbolStrField "$N$M" + CustomSymbolStrFcn "$R$N$M$F" + CustomSymbolStrModelFcn "$R$N" + CustomSymbolStrFcnArg "rt$I$N$M" + CustomSymbolStrBlkIO "rtb_$N$M" + CustomSymbolStrTmpVar "$N$M" + CustomSymbolStrMacro "$R$N$M" + CustomSymbolStrUtil "$N$C" + CustomSymbolStrEmxType "emxArray_$M$N" + CustomSymbolStrEmxFcn "emx$M$N" + CustomUserTokenString "" + CustomCommentsFcn "" + DefineNamingRule "None" + DefineNamingFcn "" + ParamNamingRule "None" + ParamNamingFcn "" + SignalNamingRule "None" + SignalNamingFcn "" + InsertBlockDesc off + InsertPolySpaceComments off + SimulinkBlockComments on + BlockCommentType "BlockPathComment" + StateflowObjectComments on + MATLABSourceComments off + EnableCustomComments off + InternalIdentifierFile "" + InternalIdentifier "Shortened" + InlinedPrmAccess "Literals" + ReqsInCode off + UseSimReservedNames off + ReservedNameArray [] + } + Simulink.GRTTargetCC { + $BackupClass "Simulink.TargetCC" + $ObjectID 18 + Version "1.18.1" + Array { + Type "Cell" + Dimension 19 + Cell "GeneratePreprocessorConditionals" + Cell "IncludeMdlTerminateFcn" + Cell "RemoveResetFunc" + Cell "SuppressErrorStatus" + Cell "ERTCustomFileBanners" + Cell "GenerateSampleERTMain" + Cell "GenerateTestInterfaces" + Cell "ModelStepFunctionPrototypeControlCompliant" + Cell "CPPClassGenCompliant" + Cell "PortableWordSizes" + Cell "PurelyIntegerCode" + Cell "PreserveStateflowLocalDataDimensions" + Cell "SupportComplex" + Cell "SupportAbsoluteTime" + Cell "SupportContinuousTime" + Cell "SupportNonInlinedSFcns" + Cell "GenerateAllocFcn" + Cell "ExistingSharedCode" + Cell "RemoveDisableFunc" + PropName "DisabledProps" + } + Description "" + TargetFcnLib "ansi_tfl_table_tmw.mat" + TargetLibSuffix "" + TargetPreCompLibLocation "" + GenFloatMathFcnCalls "NOT IN USE" + TargetLangStandard "C89/C90 (ANSI)" + CodeReplacementLibrary "None" + UtilityFuncGeneration "Auto" + MultiwordTypeDef "System defined" + MultiwordLength 2048 + DynamicStringBufferSize 256 + GenerateFullHeader on + InferredTypesCompatibility off + ExistingSharedCode "" + GenerateSampleERTMain off + GenerateTestInterfaces off + ModelReferenceCompliant on + ParMdlRefBuildCompliant on + CompOptLevelCompliant on + ConcurrentExecutionCompliant on + IncludeMdlTerminateFcn on + GeneratePreprocessorConditionals "Disable all" + CombineOutputUpdateFcns off + CombineSignalStateStructs off + GroupInternalDataByFunction off + SuppressErrorStatus off + IncludeFileDelimiter "Auto" + ERTCustomFileBanners off + SupportAbsoluteTime on + LogVarNameModifier "rt_" + MatFileLogging on + MultiInstanceERTCode off + CodeInterfacePackaging "Nonreusable function" + PurelyIntegerCode off + SupportNonFinite on + SupportComplex on + SupportContinuousTime on + SupportNonInlinedSFcns on + RemoveDisableFunc off + RemoveResetFunc off + SupportVariableSizeSignals off + ParenthesesLevel "Nominal" + CastingMode "Nominal" + PreserveStateflowLocalDataDimensions off + MATLABClassNameForMDSCustomization "Simulink.SoftwareTarget.GRTCustomization" + ModelStepFunctionPrototypeControlCompliant off + CPPClassGenCompliant on + AutosarCompliant off + MDXCompliant off + GRTInterface on + GenerateAllocFcn off + UseToolchainInfoCompliant on + GenerateSharedConstants on + CoderGroups [] + AccessMethods [] + LookupTableObjectStructAxisOrder "1,2,3,4,..." + LUTObjectStructOrderExplicitValues "Size,Breakpoints,Table" + LUTObjectStructOrderEvenSpacing "Size,Breakpoints,Table" + ArrayLayout "Column-major" + UnsupportedSFcnMsg "error" + ERTHeaderFileRootName "$R$E" + ERTSourceFileRootName "$R$E" + ERTDataFileRootName "$R_data" + UseMalloc off + ExtMode off + ExtModeStaticAlloc off + ExtModeTesting off + ExtModeStaticAllocSize 1000000 + ExtModeTransport 0 + ExtModeMexFile "ext_comm" + ExtModeMexArgs "" + ExtModeIntrfLevel "Level1" + RTWCAPISignals off + RTWCAPIParams off + RTWCAPIStates off + RTWCAPIRootIO off + GenerateASAP2 off + MultiInstanceErrorCode "Error" + } + PropName "Components" + } + } + SlCovCC.ConfigComp { + $ObjectID 19 + Version "1.18.1" + DisabledProps [] + Description "Simulink Coverage Configuration Component" + Name "Simulink Coverage" + CovEnable off + CovScope "EntireSystem" + CovIncludeTopModel on + RecordCoverage off + CovPath "/" + CovSaveName "covdata" + CovCompData "" + CovMetricSettings "dw" + CovFilter "" + CovHTMLOptions "" + CovNameIncrementing off + CovHtmlReporting on + CovForceBlockReductionOff on + CovEnableCumulative on + CovSaveCumulativeToWorkspaceVar on + CovSaveSingleToWorkspaceVar on + CovCumulativeVarName "covCumulativeData" + CovCumulativeReport off + CovSaveOutputData on + CovOutputDir "slcov_output/$ModelName$" + CovDataFileName "$ModelName$_cvdata" + CovShowResultsExplorer on + CovReportOnPause on + CovModelRefEnable "off" + CovModelRefExcluded "" + CovExternalEMLEnable off + CovSFcnEnable on + CovBoundaryAbsTol 1e-05 + CovBoundaryRelTol 0.01 + CovUseTimeInterval off + CovStartTime 0 + CovStopTime 0 + CovMcdcMode "Masking" + } + PropName "Components" + } + Name "Configuration" + ExtraOptions "" + CurrentDlgPage "Solver" + ConfigPrmDlgPosition [ 280, 124, 1160, 754 ] + } + PropName "ConfigurationSets" + } + Simulink.ConfigSet { + $PropName "ActiveConfigurationSet" + $ObjectID 8 + } + 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 + HideAutomaticName on + BlockRotation 0 + BlockMirror off + } + AnnotationDefaults { + HorizontalAlignment "center" + VerticalAlignment "middle" + ForegroundColor "black" + BackgroundColor "white" + DropShadow off + FontName "Helvetica" + FontSize 10 + FontWeight "normal" + FontAngle "normal" + MarkupType "model" + UseDisplayTextAsClickCallback off + AnnotationType "note_annotation" + FixedHeight off + FixedWidth off + Interpreter "off" + } + LineDefaults { + FontName "Helvetica" + FontSize 9 + FontWeight "normal" + FontAngle "normal" + } + MaskDefaults { + SelfModifiable "off" + IconFrame "on" + IconOpaque "opaque" + RunInitForIconRedraw "analyze" + 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 Constant + Value "1" + VectorParams1D on + SamplingMode "Sample based" + OutMin "[]" + OutMax "[]" + OutDataTypeStr "Inherit: Inherit from 'Constant value'" + LockScale off + SampleTime "inf" + FramePeriod "inf" + PreserveConstantTs off + } + Block { + BlockType Demux + Outputs "4" + DisplayOption "none" + BusSelectionMode off + } + 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 + Unit "inherit" + PortDimensions "-1" + VarSizeSig "Inherit" + SampleTime "-1" + SignalType "auto" + SamplingMode "auto" + LatchByDelayingOutsideSignal off + LatchInputForFeedbackSignals off + Interpolate on + } + Block { + BlockType Integrator + ExternalReset "none" + InitialConditionSource "internal" + InitialCondition "0" + LimitOutput off + UpperSaturationLimit "inf" + LowerSaturationLimit "-inf" + WrapState off + WrappedStateUpperValue "pi" + WrappedStateLowerValue "-pi" + ShowSaturationPort off + ShowStatePort off + AbsoluteTolerance "auto" + IgnoreLimit off + ZeroCross on + ContinuousStateAttributes "''" + } + Block { + BlockType ManualSwitch + CurrentSetting "1" + varsize off + SampleTime "-1" + } + Block { + BlockType Mux + Inputs "4" + DisplayOption "none" + UseBusObject off + BusObject "BusObject" + NonVirtualBus off + } + Block { + BlockType Outport + Port "1" + OutMin "[]" + OutMax "[]" + OutDataTypeStr "Inherit: auto" + LockScale off + BusOutputAsStruct off + Unit "inherit" + PortDimensions "-1" + VarSizeSig "Inherit" + SampleTime "-1" + SignalType "auto" + SamplingMode "auto" + EnsureOutportIsVirtual off + SourceOfInitialOutputValue "Dialog" + OutputWhenDisabled "held" + InitialOutput "[]" + MustResolveToSignalObject off + OutputWhenUnConnected off + OutputWhenUnconnectedValue "0" + VectorParamsAs1DForOutWhenUnconnected off + } + Block { + BlockType Product + Inputs "2" + Multiplication "Element-wise(.*)" + CollapseMode "All dimensions" + CollapseDim "1" + InputSameDT on + OutMin "[]" + OutMax "[]" + OutDataTypeStr "Inherit: Same as first input" + LockScale off + RndMeth "Zero" + SaturateOnIntegerOverflow on + SampleTime "-1" + } + Block { + BlockType Saturate + UpperLimitSource "Dialog" + UpperLimit "0.5" + LowerLimitSource "Dialog" + LowerLimit "-0.5" + LinearizeAsGain on + ZeroCross on + SampleTime "-1" + OutMin "[]" + OutMax "[]" + OutDataTypeStr "Inherit: Same as input" + LockScale off + RndMeth "Floor" + } + Block { + BlockType Scope + DefaultConfigurationName "Simulink.scopes.TimeScopeBlockCfg" + } + Block { + BlockType Step + Time "1" + Before "0" + After "1" + SampleTime "-1" + VectorParams1D on + ZeroCross on + } + Block { + BlockType SubSystem + ShowPortLabels "FromPortIcon" + Permissions "ReadWrite" + PermitHierarchicalResolution "All" + TreatAsAtomicUnit off + MinAlgLoopOccurrences off + PropExecContextOutsideSubsystem 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" + VariantControlMode "Expression" + Variant off + GeneratePreprocessorConditionals off + AllowZeroVariantControls off + PropagateVariantConditions off + TreatAsGroupedWhenPropagatingVariantConditions on + ContentPreviewEnabled off + IsWebBlock off + IsObserver off + Latency "0" + AutoFrameSizeCalculation off + IsWebBlockPanel off + } + Block { + BlockType Sum + IconShape "rectangular" + Inputs "++" + CollapseMode "All dimensions" + CollapseDim "1" + InputSameDT on + AccumDataTypeStr "Inherit: Inherit via internal rule" + OutMin "[]" + OutMax "[]" + OutDataTypeStr "Inherit: Same as first input" + LockScale off + RndMeth "Floor" + SaturateOnIntegerOverflow on + SampleTime "-1" + } + Block { + BlockType ToWorkspace + VariableName "simulink_output" + MaxDataPoints "1000" + Decimation "1" + SaveFormat "Array" + Save2DSignal "Inherit from input (this choice will be removed - see release notes)" + FixptAsFi off + NumInputs "1" + SampleTime "0" + } + Block { + BlockType Trigonometry + Operator "sin" + ApproximationMethod "None" + NumberOfIterations "11" + OutputSignalType "auto" + SampleTime "-1" + } + } + System { + Name "Grue_NL" + Location [0, 27, 1366, 768] + Open on + PortBlocksUseCompactNotation off + SetExecutionDomain off + ExecutionDomainType "Deduce" + 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 "102" + ReportName "simulink-default.rpt" + SIDHighWatermark "224" + Block { + BlockType Sum + Name "Add" + SID "197" + Ports [2, 1] + Position [395, 32, 425, 63] + ZOrder 4 + Inputs "+-" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Sum + Name "Add1" + SID "198" + Ports [2, 1] + Position [515, -8, 545, 23] + ZOrder 5 + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Sum + Name "Add2" + SID "199" + Ports [2, 1] + Position [515, 77, 545, 108] + ZOrder 6 + NamePlacement "alternate" + Inputs "+-" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Sum + Name "Add3" + SID "205" + Ports [2, 1] + Position [830, 222, 860, 253] + ZOrder 12 + BlockMirror on + NamePlacement "alternate" + Inputs "-+" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Sum + Name "Add4" + SID "207" + Ports [2, 1] + Position [830, 262, 860, 293] + ZOrder 14 + BlockMirror on + NamePlacement "alternate" + Inputs "-+" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Sum + Name "Add5" + SID "210" + Ports [2, 1] + Position [50, 62, 80, 93] + ZOrder 294 + Inputs "+-" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Constant + Name "Constant" + SID "200" + Position [475, -55, 505, -25] + ZOrder 7 + BlockRotation 270 + BlockMirror on + NamePlacement "alternate" + Value "F" + } + Block { + BlockType Constant + Name "Constant1" + SID "201" + Position [475, 125, 505, 155] + ZOrder 8 + BlockRotation 270 + Value "C0" + } + Block { + BlockType Constant + Name "Constant2" + SID "206" + Position [885, 190, 915, 220] + ZOrder 13 + BlockRotation 270 + BlockMirror on + NamePlacement "alternate" + Value "D" + } + Block { + BlockType Constant + Name "Constant3" + SID "208" + Position [925, 190, 955, 220] + ZOrder 15 + BlockRotation 270 + BlockMirror on + NamePlacement "alternate" + Value "R" + } + Block { + BlockType Demux + Name "Demux" + SID "196" + Ports [1, 2] + Position [460, -21, 465, 121] + ZOrder 3 + ShowName off + Outputs "2" + DisplayOption "bar" + } + Block { + BlockType Demux + Name "Demux1" + SID "202" + Ports [1, 6] + Position [965, 230, 985, 460] + ZOrder 9 + BlockMirror on + NamePlacement "alternate" + ShowName off + Outputs "6" + DisplayOption "bar" + } + Block { + BlockType Gain + Name "Gain" + SID "195" + Position [465, 327, 515, 363] + ZOrder 2 + BlockMirror on + NamePlacement "alternate" + Gain "K" + Multiplication "Matrix(K*u) (u vector)" + ParamDataTypeStr "Inherit: Inherit via internal rule" + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Gain + Name "Gain1" + SID "211" + Position [200, -8, 235, 38] + ZOrder 291 + Gain "eta" + ParamDataTypeStr "Inherit: Inherit via internal rule" + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Gain + Name "Gain2" + SID "212" + Position [120, 62, 160, 98] + ZOrder 293 + Gain "-1/Ti" + ParamDataTypeStr "Inherit: Inherit via internal rule" + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType SubSystem + Name "Grue_NL" + SID "19" + Ports [2, 6] + Position [590, -36, 720, 136] + ZOrder -1 + RequestExecContextInheritance off + System { + Name "Grue_NL" + Location [0, 27, 1366, 768] + Open off + PortBlocksUseCompactNotation off + SetExecutionDomain off + ExecutionDomainType "Deduce" + 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 "125" + Block { + BlockType Inport + Name "F" + SID "20" + Position [25, 278, 55, 292] + ZOrder -1 + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "C + C0" + SID "21" + Position [25, 173, 55, 187] + ZOrder -2 + Port "2" + IconDisplay "Port number" + } + Block { + BlockType Constant + Name "Constant2" + SID "192" + Position [99, 95, 151, 120] + ZOrder -3 + BlockRotation 270 + BlockMirror on + NamePlacement "alternate" + ShowName off + Value "C0" + } + Block { + BlockType SubSystem + Name "Eq_Theta" + SID "22" + Ports [3, 3] + Position [430, 55, 555, 115] + ZOrder -4 + RequestExecContextInheritance off + System { + Name "Eq_Theta" + Location [413, 299, 1274, 925] + Open off + PortBlocksUseCompactNotation off + SetExecutionDomain off + ExecutionDomainType "Deduce" + 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" + Block { + BlockType Inport + Name "d''" + SID "23" + Position [145, 58, 175, 72] + ZOrder -1 + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "r" + SID "24" + Position [435, 103, 465, 117] + ZOrder -2 + Port "2" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "r'" + SID "25" + Position [145, 158, 175, 172] + ZOrder -3 + Port "3" + IconDisplay "Port number" + } + Block { + BlockType Sum + Name "Add" + SID "26" + Ports [3, 1] + Position [435, 143, 475, 237] + ZOrder -4 + Inputs "---" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Constant + Name "Constant" + SID "27" + Position [65, 200, 95, 230] + ZOrder -5 + Value "2" + } + Block { + BlockType Constant + Name "Constant1" + SID "28" + Position [65, 290, 95, 320] + ZOrder -6 + Value "g" + } + Block { + BlockType Product + Name "Divide" + SID "29" + Ports [2, 1] + Position [520, 167, 550, 198] + ZOrder -7 + Inputs "/*" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Integrator + Name "Integrator" + SID "30" + Ports [1, 1] + Position [585, 170, 615, 200] + ZOrder -8 + } + Block { + BlockType Integrator + Name "Integrator1" + SID "31" + Ports [1, 1] + Position [655, 170, 685, 200] + ZOrder -9 + } + Block { + BlockType Product + Name "Product1" + SID "32" + Ports [2, 1] + Position [320, 57, 350, 88] + ZOrder -10 + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Product + Name "Product3" + SID "33" + Ports [3, 1] + Position [255, 155, 285, 225] + ZOrder -11 + Inputs "3" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Product + Name "Product4" + SID "34" + Ports [2, 1] + Position [330, 252, 360, 283] + ZOrder -12 + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Trigonometry + Name "Trigonometric\nFunction2" + SID "35" + Ports [1, 1] + Position [255, 95, 285, 125] + ZOrder -13 + Operator "cos" + } + Block { + BlockType Trigonometry + Name "Trigonometric\nFunction3" + SID "36" + Ports [1, 1] + Position [250, 245, 280, 275] + ZOrder -14 + } + Block { + BlockType Outport + Name "Theta" + SID "37" + Position [755, 178, 785, 192] + ZOrder -15 + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "Theta'" + SID "38" + Position [655, 123, 685, 137] + ZOrder -16 + Port "2" + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "Theta''" + SID "39" + Position [585, 123, 615, 137] + ZOrder -17 + Port "3" + IconDisplay "Port number" + } + Line { + ZOrder 1 + SrcBlock "d''" + SrcPort 1 + DstBlock "Product1" + DstPort 1 + } + Line { + ZOrder 2 + SrcBlock "Trigonometric\nFunction2" + SrcPort 1 + Points [5, 0; 0, -30] + DstBlock "Product1" + DstPort 2 + } + Line { + ZOrder 3 + SrcBlock "r'" + SrcPort 1 + DstBlock "Product3" + DstPort 1 + } + Line { + ZOrder 4 + SrcBlock "Constant" + SrcPort 1 + DstBlock "Product3" + DstPort 3 + } + Line { + ZOrder 5 + SrcBlock "Trigonometric\nFunction3" + SrcPort 1 + DstBlock "Product4" + DstPort 1 + } + Line { + ZOrder 6 + SrcBlock "Constant1" + SrcPort 1 + Points [205, 0; 0, -30] + DstBlock "Product4" + DstPort 2 + } + Line { + ZOrder 7 + SrcBlock "Product1" + SrcPort 1 + Points [30, 0; 0, 85] + DstBlock "Add" + DstPort 1 + } + Line { + ZOrder 8 + SrcBlock "Product3" + SrcPort 1 + DstBlock "Add" + DstPort 2 + } + Line { + ZOrder 9 + SrcBlock "Product4" + SrcPort 1 + Points [25, 0; 0, -50] + DstBlock "Add" + DstPort 3 + } + Line { + ZOrder 10 + SrcBlock "r" + SrcPort 1 + Points [15, 0; 0, 65] + DstBlock "Divide" + DstPort 1 + } + Line { + ZOrder 11 + SrcBlock "Add" + SrcPort 1 + DstBlock "Divide" + DstPort 2 + } + Line { + ZOrder 12 + SrcBlock "Divide" + SrcPort 1 + Points [5, 0] + Branch { + ZOrder 13 + DstBlock "Integrator" + DstPort 1 + } + Branch { + ZOrder 14 + Points [0, -55] + DstBlock "Theta''" + DstPort 1 + } + } + Line { + ZOrder 15 + SrcBlock "Integrator" + SrcPort 1 + Points [10, 0] + Branch { + ZOrder 16 + DstBlock "Integrator1" + DstPort 1 + } + Branch { + ZOrder 17 + Points [0, 180; -605, 0; 0, -175] + DstBlock "Product3" + DstPort 2 + } + Branch { + ZOrder 18 + Points [0, -55] + DstBlock "Theta'" + DstPort 1 + } + } + Line { + ZOrder 19 + SrcBlock "Integrator1" + SrcPort 1 + Points [35, 0] + Branch { + ZOrder 20 + DstBlock "Theta" + DstPort 1 + } + Branch { + ZOrder 21 + Points [0, -155; -625, 0; 0, 80; 100, 0] + Branch { + ZOrder 22 + DstBlock "Trigonometric\nFunction2" + DstPort 1 + } + Branch { + ZOrder 23 + Points [0, 150] + DstBlock "Trigonometric\nFunction3" + DstPort 1 + } + } + } + } + } + Block { + BlockType SubSystem + Name "Eq_d" + SID "40" + Ports [3, 3] + Position [435, 271, 550, 339] + ZOrder -5 + RequestExecContextInheritance off + System { + Name "Eq_d" + Location [522, 45, 1170, 568] + Open off + PortBlocksUseCompactNotation off + SetExecutionDomain off + ExecutionDomainType "Deduce" + 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" + Block { + BlockType Inport + Name "F" + SID "41" + Position [25, 153, 55, 167] + ZOrder -1 + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "T" + SID "42" + Position [25, 98, 55, 112] + ZOrder -2 + Port "2" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "Theta" + SID "43" + Position [25, 33, 55, 47] + ZOrder -3 + Port "3" + IconDisplay "Port number" + } + Block { + BlockType Constant + Name "Constant" + SID "44" + Position [80, 185, 110, 215] + ZOrder -4 + Value "Cd" + } + Block { + BlockType Constant + Name "Constant1" + SID "45" + Position [260, 190, 290, 220] + ZOrder -5 + Value "Mc" + } + Block { + BlockType Product + Name "Divide" + SID "46" + Ports [2, 1] + Position [325, 152, 355, 183] + ZOrder -6 + Inputs "*/" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Integrator + Name "Integrator" + SID "47" + Ports [1, 1] + Position [385, 155, 415, 185] + ZOrder -7 + } + Block { + BlockType Integrator + Name "Integrator1" + SID "48" + Ports [1, 1] + Position [480, 155, 510, 185] + ZOrder -8 + } + Block { + BlockType Product + Name "Product" + SID "49" + Ports [2, 1] + Position [170, 82, 200, 113] + ZOrder -9 + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Product + Name "Product1" + SID "50" + Ports [2, 1] + Position [180, 192, 210, 223] + ZOrder -10 + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Sum + Name "Sum" + SID "51" + Ports [3, 1] + Position [220, 150, 240, 170] + ZOrder -11 + ShowName off + IconShape "round" + Inputs "++-" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Trigonometry + Name "Trigonometric\nFunction" + SID "52" + Ports [1, 1] + Position [95, 25, 125, 55] + ZOrder -12 + } + Block { + BlockType Outport + Name "d" + SID "53" + Position [545, 163, 575, 177] + ZOrder -13 + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "d'" + SID "54" + Position [545, 123, 575, 137] + ZOrder -14 + Port "2" + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "d''" + SID "55" + Position [545, 83, 575, 97] + ZOrder -15 + Port "3" + IconDisplay "Port number" + } + Line { + ZOrder 1 + SrcBlock "Product" + SrcPort 1 + Points [25, 0] + DstBlock "Sum" + DstPort 1 + } + Line { + ZOrder 2 + SrcBlock "Trigonometric\nFunction" + SrcPort 1 + Points [20, 0; 0, 50] + DstBlock "Product" + DstPort 1 + } + Line { + ZOrder 3 + SrcBlock "Product1" + SrcPort 1 + Points [15, 0] + DstBlock "Sum" + DstPort 3 + } + Line { + ZOrder 4 + SrcBlock "Constant" + SrcPort 1 + DstBlock "Product1" + DstPort 1 + } + Line { + ZOrder 5 + SrcBlock "Sum" + SrcPort 1 + DstBlock "Divide" + DstPort 1 + } + Line { + ZOrder 6 + SrcBlock "Constant1" + SrcPort 1 + Points [5, 0; 0, -30] + DstBlock "Divide" + DstPort 2 + } + Line { + ZOrder 7 + SrcBlock "Divide" + SrcPort 1 + Points [5, 0] + Branch { + ZOrder 8 + DstBlock "Integrator" + DstPort 1 + } + Branch { + ZOrder 9 + Points [0, -80] + DstBlock "d''" + DstPort 1 + } + } + Line { + ZOrder 10 + SrcBlock "Integrator" + SrcPort 1 + Points [10, 0] + Branch { + ZOrder 11 + Points [15, 0] + Branch { + ZOrder 12 + DstBlock "Integrator1" + DstPort 1 + } + Branch { + ZOrder 13 + Points [0, 90; -280, 0] + DstBlock "Product1" + DstPort 2 + } + } + Branch { + ZOrder 14 + Points [0, -40] + DstBlock "d'" + DstPort 1 + } + } + Line { + ZOrder 15 + SrcBlock "F" + SrcPort 1 + DstBlock "Sum" + DstPort 2 + } + Line { + ZOrder 16 + SrcBlock "T" + SrcPort 1 + DstBlock "Product" + DstPort 2 + } + Line { + ZOrder 17 + SrcBlock "Theta" + SrcPort 1 + DstBlock "Trigonometric\nFunction" + DstPort 1 + } + Line { + ZOrder 18 + SrcBlock "Integrator1" + SrcPort 1 + DstBlock "d" + DstPort 1 + } + } + } + Block { + BlockType SubSystem + Name "Eq_r" + SID "56" + Ports [4, 3] + Position [430, 176, 555, 229] + ZOrder -6 + RequestExecContextInheritance off + System { + Name "Eq_r" + Location [181, 85, 1389, 1024] + Open off + PortBlocksUseCompactNotation off + SetExecutionDomain off + ExecutionDomainType "Deduce" + 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" + Block { + BlockType Inport + Name "C" + SID "57" + Position [120, 123, 150, 137] + ZOrder -1 + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "d''" + SID "58" + Position [25, 323, 55, 337] + ZOrder -2 + Port "2" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "Theta" + SID "59" + Position [25, 263, 55, 277] + ZOrder -3 + Port "3" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "Theta'" + SID "60" + Position [25, 378, 55, 392] + ZOrder -4 + Port "4" + IconDisplay "Port number" + } + Block { + BlockType Sum + Name "Add" + SID "61" + Ports [5, 1] + Position [385, 127, 490, 333] + ZOrder -5 + Inputs "---++" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Constant + Name "Constant" + SID "62" + Position [70, 140, 100, 170] + ZOrder -6 + Value "b" + } + Block { + BlockType Constant + Name "Constant1" + SID "63" + Position [100, 60, 130, 90] + ZOrder -7 + Value "J" + } + Block { + BlockType Constant + Name "Constant2" + SID "64" + Position [180, 25, 210, 55] + ZOrder -8 + Value "m" + } + Block { + BlockType Constant + Name "Constant3" + SID "65" + Position [45, 210, 75, 240] + ZOrder -9 + Value "Cr" + } + Block { + BlockType Constant + Name "Constant4" + SID "66" + Position [185, 460, 215, 490] + ZOrder -10 + Value "g" + } + Block { + BlockType Product + Name "Divide" + SID "67" + Ports [2, 1] + Position [280, 132, 310, 163] + ZOrder -11 + Inputs "*/" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Product + Name "Divide1" + SID "68" + Ports [2, 1] + Position [175, 162, 205, 193] + ZOrder -12 + Inputs "**" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Product + Name "Divide2" + SID "69" + Ports [2, 1] + Position [265, 67, 295, 98] + ZOrder -13 + Inputs "*/" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Product + Name "Divide3" + SID "70" + Ports [2, 1] + Position [520, 177, 550, 208] + ZOrder -14 + Inputs "/*" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Product + Name "Divide4" + SID "71" + Ports [2, 1] + Position [280, 187, 310, 218] + ZOrder -15 + Inputs "/*" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Product + Name "Divide5" + SID "72" + Ports [2, 1] + Position [185, 217, 215, 248] + ZOrder -16 + Inputs "**" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Product + Name "Divide6" + SID "73" + Ports [3, 1] + Position [280, 254, 310, 286] + ZOrder -17 + Inputs "***" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Product + Name "Divide7" + SID "74" + Ports [2, 1] + Position [120, 362, 150, 393] + ZOrder -18 + Inputs "**" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Product + Name "Divide8" + SID "75" + Ports [3, 1] + Position [280, 364, 310, 396] + ZOrder -19 + Inputs "***" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Product + Name "Divide9" + SID "76" + Ports [3, 1] + Position [280, 424, 310, 456] + ZOrder -20 + Inputs "***" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Integrator + Name "Integrator" + SID "77" + Ports [1, 1] + Position [685, 180, 715, 210] + ZOrder -21 + InitialCondition "R" + } + Block { + BlockType Integrator + Name "Integrator1" + SID "78" + Ports [1, 1] + Position [600, 180, 630, 210] + ZOrder -22 + } + Block { + BlockType Sum + Name "Sum" + SID "79" + Ports [2, 1] + Position [290, 30, 310, 50] + ZOrder -23 + ShowName off + IconShape "round" + Inputs "|++" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Trigonometry + Name "Trigonometric\nFunction2" + SID "80" + Ports [1, 1] + Position [95, 255, 125, 285] + ZOrder -24 + } + Block { + BlockType Trigonometry + Name "Trigonometric\nFunction3" + SID "81" + Ports [1, 1] + Position [120, 425, 150, 455] + ZOrder -25 + Operator "cos" + } + Block { + BlockType Outport + Name "r" + SID "82" + Position [765, 188, 795, 202] + ZOrder -26 + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "r'" + SID "83" + Position [675, 138, 705, 152] + ZOrder -27 + Port "2" + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "r''" + SID "84" + Position [605, 138, 635, 152] + ZOrder -28 + Port "3" + IconDisplay "Port number" + } + Line { + ZOrder 1 + SrcBlock "C" + SrcPort 1 + Points [110, 0] + DstBlock "Divide" + DstPort 1 + } + Line { + ZOrder 2 + SrcBlock "Constant" + SrcPort 1 + Points [25, 0] + Branch { + ZOrder 3 + DstBlock "Divide" + DstPort 2 + } + Branch { + ZOrder 4 + Points [0, 15] + Branch { + ZOrder 5 + DstBlock "Divide1" + DstPort 1 + } + Branch { + ZOrder 6 + Points [0, 15] + DstBlock "Divide1" + DstPort 2 + } + } + } + Line { + ZOrder 7 + SrcBlock "Divide" + SrcPort 1 + DstBlock "Add" + DstPort 1 + } + Line { + ZOrder 8 + SrcBlock "Constant2" + SrcPort 1 + Points [30, 0] + Branch { + ZOrder 9 + DstBlock "Sum" + DstPort 1 + } + Branch { + ZOrder 10 + Points [0, 220] + Branch { + ZOrder 11 + DstBlock "Divide6" + DstPort 1 + } + Branch { + ZOrder 12 + Points [0, 105] + Branch { + ZOrder 13 + Points [0, 5] + DstBlock "Divide8" + DstPort 1 + } + Branch { + ZOrder 14 + Points [0, 65] + DstBlock "Divide9" + DstPort 1 + } + } + } + } + Line { + ZOrder 15 + SrcBlock "Divide2" + SrcPort 1 + DstBlock "Sum" + DstPort 2 + } + Line { + ZOrder 16 + SrcBlock "Constant1" + SrcPort 1 + DstBlock "Divide2" + DstPort 1 + } + Line { + ZOrder 17 + SrcBlock "Divide1" + SrcPort 1 + Points [15, 0; 0, -5] + Branch { + ZOrder 18 + Points [0, -85] + DstBlock "Divide2" + DstPort 2 + } + Branch { + ZOrder 19 + Points [0, 20] + DstBlock "Divide4" + DstPort 1 + } + } + Line { + ZOrder 20 + SrcBlock "Sum" + SrcPort 1 + Points [190, 0] + DstBlock "Divide3" + DstPort 1 + } + Line { + ZOrder 21 + SrcBlock "Add" + SrcPort 1 + Points [0, -30] + DstBlock "Divide3" + DstPort 2 + } + Line { + ZOrder 22 + SrcBlock "Divide3" + SrcPort 1 + Points [10, 0] + Branch { + ZOrder 23 + DstBlock "Integrator1" + DstPort 1 + } + Branch { + ZOrder 24 + Points [0, -50] + DstBlock "r''" + DstPort 1 + } + } + Line { + ZOrder 25 + SrcBlock "Integrator1" + SrcPort 1 + Points [15, 0] + Branch { + ZOrder 26 + DstBlock "Integrator" + DstPort 1 + } + Branch { + ZOrder 27 + Points [0, 165; -480, 0] + DstBlock "Divide5" + DstPort 2 + } + Branch { + ZOrder 28 + Points [0, -50] + DstBlock "r'" + DstPort 1 + } + } + Line { + ZOrder 29 + SrcBlock "Constant3" + SrcPort 1 + DstBlock "Divide5" + DstPort 1 + } + Line { + ZOrder 30 + SrcBlock "Divide5" + SrcPort 1 + Points [5, 0; 0, -25] + DstBlock "Divide4" + DstPort 2 + } + Line { + ZOrder 31 + SrcBlock "Divide4" + SrcPort 1 + Points [10, 0; 0, -15] + DstBlock "Add" + DstPort 2 + } + Line { + ZOrder 32 + SrcBlock "Theta" + SrcPort 1 + Points [5, 0] + Branch { + ZOrder 33 + DstBlock "Trigonometric\nFunction2" + DstPort 1 + } + Branch { + ZOrder 34 + Points [0, 170] + DstBlock "Trigonometric\nFunction3" + DstPort 1 + } + } + Line { + ZOrder 35 + SrcBlock "d''" + SrcPort 1 + Points [90, 0; 0, -50] + DstBlock "Divide6" + DstPort 3 + } + Line { + ZOrder 36 + SrcBlock "Trigonometric\nFunction2" + SrcPort 1 + DstBlock "Divide6" + DstPort 2 + } + Line { + ZOrder 37 + SrcBlock "Divide6" + SrcPort 1 + Points [10, 0; 0, -40] + DstBlock "Add" + DstPort 3 + } + Line { + ZOrder 38 + SrcBlock "Theta'" + SrcPort 1 + Points [15, 0] + Branch { + ZOrder 39 + DstBlock "Divide7" + DstPort 2 + } + Branch { + ZOrder 40 + Points [0, -15] + DstBlock "Divide7" + DstPort 1 + } + } + Line { + ZOrder 41 + SrcBlock "Divide7" + SrcPort 1 + DstBlock "Divide8" + DstPort 2 + } + Line { + ZOrder 42 + SrcBlock "Integrator" + SrcPort 1 + Points [10, 0] + Branch { + ZOrder 43 + Points [0, 220; -465, 0] + DstBlock "Divide8" + DstPort 3 + } + Branch { + ZOrder 44 + DstBlock "r" + DstPort 1 + } + } + Line { + ZOrder 45 + SrcBlock "Divide8" + SrcPort 1 + Points [20, 0; 0, -110] + DstBlock "Add" + DstPort 4 + } + Line { + ZOrder 46 + SrcBlock "Trigonometric\nFunction3" + SrcPort 1 + DstBlock "Divide9" + DstPort 2 + } + Line { + ZOrder 47 + SrcBlock "Constant4" + SrcPort 1 + Points [20, 0; 0, -25] + DstBlock "Divide9" + DstPort 3 + } + Line { + ZOrder 48 + SrcBlock "Divide9" + SrcPort 1 + Points [45, 0; 0, -130] + DstBlock "Add" + DstPort 5 + } + } + } + Block { + BlockType Saturate + Name "Saturation" + SID "190" + Ports [1, 1] + Position [180, 270, 210, 300] + ZOrder -7 + InputPortMap "u0" + UpperLimit "1e4" + LowerLimit "-1e4" + } + Block { + BlockType Saturate + Name "Saturation1" + SID "191" + Ports [1, 1] + Position [225, 165, 255, 195] + ZOrder -8 + InputPortMap "u0" + UpperLimit "3e3" + LowerLimit "-3e3" + } + Block { + BlockType Sum + Name "Sum2" + SID "193" + Ports [2, 1] + Position [115, 170, 135, 190] + ZOrder -9 + ShowName off + IconShape "round" + Inputs "+-|" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType SubSystem + Name "T" + SID "85" + Ports [3, 1] + Position [685, 146, 795, 284] + ZOrder -10 + RequestExecContextInheritance off + System { + Name "T" + Location [388, 51, 1125, 943] + Open off + PortBlocksUseCompactNotation off + SetExecutionDomain off + ExecutionDomainType "Deduce" + 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" + Block { + BlockType Inport + Name "r'" + SID "86" + Position [95, 178, 125, 192] + ZOrder -1 + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "r''" + SID "87" + Position [95, 378, 125, 392] + ZOrder -2 + Port "2" + IconDisplay "Port number" + } + Block { + BlockType Inport + Name "C" + SID "88" + Position [95, 318, 125, 332] + ZOrder -3 + Port "3" + IconDisplay "Port number" + } + Block { + BlockType Product + Name "Divide" + SID "89" + Ports [3, 1] + Position [155, 380, 185, 450] + ZOrder -4 + Inputs "**/" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Product + Name "Divide1" + SID "90" + Ports [3, 1] + Position [155, 171, 195, 239] + ZOrder -5 + Inputs "**/" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Product + Name "Divide2" + SID "91" + Ports [2, 1] + Position [310, 197, 340, 228] + ZOrder -6 + Inputs "*/" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Sum + Name "Sum2" + SID "92" + Ports [2, 1] + Position [225, 315, 245, 335] + ZOrder -7 + ShowName off + IconShape "round" + Inputs "|++" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Sum + Name "Sum3" + SID "93" + Ports [2, 1] + Position [240, 195, 260, 215] + ZOrder -8 + ShowName off + IconShape "round" + Inputs "|++" + InputSameDT off + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Constant + Name "g" + SID "94" + Position [95, 435, 125, 465] + ZOrder -9 + ShowName off + Value "b" + } + Block { + BlockType Constant + Name "g1" + SID "95" + Position [60, 195, 90, 225] + ZOrder -10 + ShowName off + Value "Cr" + } + Block { + BlockType Constant + Name "g2" + SID "96" + Position [95, 255, 125, 285] + ZOrder -11 + ShowName off + Value "b" + } + Block { + BlockType Constant + Name "g3" + SID "97" + Position [255, 260, 285, 290] + ZOrder -12 + ShowName off + Value "b" + } + Block { + BlockType Constant + Name "g4" + SID "98" + Position [50, 400, 80, 430] + ZOrder -13 + ShowName off + Value "J" + } + Block { + BlockType Outport + Name "T" + SID "99" + Position [385, 208, 415, 222] + ZOrder -14 + IconDisplay "Port number" + } + Line { + ZOrder 1 + SrcBlock "r''" + SrcPort 1 + Points [10, 0] + DstBlock "Divide" + DstPort 1 + } + Line { + ZOrder 2 + SrcBlock "C" + SrcPort 1 + DstBlock "Sum2" + DstPort 1 + } + Line { + ZOrder 3 + SrcBlock "Divide" + SrcPort 1 + Points [45, 0] + DstBlock "Sum2" + DstPort 2 + } + Line { + ZOrder 4 + SrcBlock "r'" + SrcPort 1 + DstBlock "Divide1" + DstPort 1 + } + Line { + ZOrder 5 + SrcBlock "g1" + SrcPort 1 + Points [30, 0; 0, -5] + DstBlock "Divide1" + DstPort 2 + } + Line { + ZOrder 6 + SrcBlock "g2" + SrcPort 1 + Points [5, 0; 0, -45] + DstBlock "Divide1" + DstPort 3 + } + Line { + ZOrder 7 + SrcBlock "Divide1" + SrcPort 1 + DstBlock "Sum3" + DstPort 1 + } + Line { + ZOrder 8 + SrcBlock "Sum2" + SrcPort 1 + DstBlock "Sum3" + DstPort 2 + } + Line { + ZOrder 9 + SrcBlock "Sum3" + SrcPort 1 + DstBlock "Divide2" + DstPort 1 + } + Line { + ZOrder 10 + SrcBlock "g3" + SrcPort 1 + Points [5, 0] + DstBlock "Divide2" + DstPort 2 + } + Line { + ZOrder 11 + SrcBlock "Divide2" + SrcPort 1 + DstBlock "T" + DstPort 1 + } + Line { + ZOrder 12 + SrcBlock "g" + SrcPort 1 + Points [5, 0; 0, -10] + DstBlock "Divide" + DstPort 3 + } + Line { + ZOrder 13 + SrcBlock "g4" + SrcPort 1 + DstBlock "Divide" + DstPort 2 + } + } + } + Block { + BlockType Outport + Name "d" + SID "100" + Position [860, 353, 890, 367] + ZOrder -11 + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "r" + SID "101" + Position [855, 113, 885, 127] + ZOrder -12 + Port "2" + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "Theta" + SID "102" + Position [855, 48, 885, 62] + ZOrder -13 + Port "3" + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "d'" + SID "103" + Position [860, 408, 890, 422] + ZOrder -14 + Port "4" + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "r'" + SID "104" + Position [855, 298, 885, 312] + ZOrder -15 + Port "5" + IconDisplay "Port number" + } + Block { + BlockType Outport + Name "Theta'" + SID "105" + Position [855, 78, 885, 92] + ZOrder -16 + Port "6" + IconDisplay "Port number" + } + Line { + ZOrder 1 + SrcBlock "Eq_r" + SrcPort 2 + Points [5, 0] + Branch { + ZOrder 2 + Points [45, 0; 0, -25] + Branch { + ZOrder 3 + Points [0, -45; -195, 0] + DstBlock "Eq_Theta" + DstPort 3 + } + Branch { + ZOrder 4 + Points [60, 0] + DstBlock "T" + DstPort 1 + } + } + Branch { + ZOrder 5 + Points [0, 100] + DstBlock "r'" + DstPort 1 + } + } + Line { + ZOrder 6 + SrcBlock "Eq_r" + SrcPort 1 + Points [0, -30] + Branch { + ZOrder 7 + Points [0, -15; -155, 0; 0, -60] + DstBlock "Eq_Theta" + DstPort 2 + } + Branch { + ZOrder 8 + Points [90, 0; 0, -40] + DstBlock "r" + DstPort 1 + } + } + Line { + ZOrder 9 + SrcBlock "Eq_d" + SrcPort 3 + Points [40, 0; 0, 35; -200, 0; 0, -165] + Branch { + ZOrder 32 + Points [0, -130] + DstBlock "Eq_Theta" + DstPort 1 + } + Branch { + ZOrder 11 + DstBlock "Eq_r" + DstPort 2 + } + } + Line { + ZOrder 12 + SrcBlock "Eq_d" + SrcPort 2 + Points [5, 0; 0, 110] + DstBlock "d'" + DstPort 1 + } + Line { + ZOrder 13 + SrcBlock "Eq_Theta" + SrcPort 1 + Points [0, -10] + Branch { + ZOrder 14 + Points [0, -10; -220, 0; 0, 155] + Branch { + ZOrder 15 + Points [-25, 0; 0, 125] + DstBlock "Eq_d" + DstPort 3 + } + Branch { + ZOrder 16 + Points [0, 10] + DstBlock "Eq_r" + DstPort 3 + } + } + Branch { + ZOrder 17 + DstBlock "Theta" + DstPort 1 + } + } + Line { + ZOrder 18 + SrcBlock "Eq_Theta" + SrcPort 2 + Points [30, 0] + Branch { + ZOrder 19 + Points [0, -55; -290, 0; 0, 195] + DstBlock "Eq_r" + DstPort 4 + } + Branch { + ZOrder 20 + DstBlock "Theta'" + DstPort 1 + } + } + Line { + ZOrder 21 + SrcBlock "Eq_r" + SrcPort 3 + Points [110, 0] + DstBlock "T" + DstPort 2 + } + Line { + ZOrder 22 + SrcBlock "F" + SrcPort 1 + DstBlock "Saturation" + DstPort 1 + } + Line { + ZOrder 23 + SrcBlock "T" + SrcPort 1 + Points [25, 0; 0, 240; -405, 0] + DstBlock "Eq_d" + DstPort 2 + } + Line { + ZOrder 24 + SrcBlock "Eq_d" + SrcPort 1 + Points [110, 0; 0, 75] + DstBlock "d" + DstPort 1 + } + Line { + ZOrder 25 + SrcBlock "Saturation" + SrcPort 1 + DstBlock "Eq_d" + DstPort 1 + } + Line { + ZOrder 26 + SrcBlock "Saturation1" + SrcPort 1 + Points [20, 0] + Branch { + ZOrder 27 + DstBlock "Eq_r" + DstPort 1 + } + Branch { + ZOrder 28 + Points [0, 80] + DstBlock "T" + DstPort 3 + } + } + Line { + ZOrder 29 + SrcBlock "Constant2" + SrcPort 1 + DstBlock "Sum2" + DstPort 1 + } + Line { + ZOrder 30 + SrcBlock "Sum2" + SrcPort 1 + DstBlock "Saturation1" + DstPort 1 + } + Line { + ZOrder 31 + SrcBlock "C + C0" + SrcPort 1 + DstBlock "Sum2" + DstPort 2 + } + } + } + Block { + BlockType Integrator + Name "Integrator" + SID "213" + Ports [1, 1] + Position [205, 45, 235, 75] + ZOrder 292 + } + Block { + BlockType ManualSwitch + Name "Manual Switch" + SID "214" + Position [-40, 52, -10, 88] + ZOrder 298 + } + Block { + BlockType ManualSwitch + Name "Manual Switch1" + SID "215" + Position [-25, -38, 5, -2] + ZOrder 299 + CurrentSetting "0" + } + Block { + BlockType Mux + Name "Mux" + SID "194" + Ports [6, 1] + Position [795, -37, 800, 137] + ZOrder 1 + ShowName off + Inputs "6" + DisplayOption "bar" + } + Block { + BlockType Mux + Name "Mux1" + SID "204" + Ports [6, 1] + Position [740, 218, 755, 472] + ZOrder 11 + BlockMirror on + NamePlacement "alternate" + ShowName off + Inputs "6" + DisplayOption "bar" + } + Block { + BlockType Mux + Name "Mux2" + SID "222" + Ports [2, 1] + Position [320, -9, 325, 84] + ZOrder 301 + ShowName off + Inputs "2" + DisplayOption "bar" + } + Block { + BlockType Scope + Name "Scope" + SID "223" + Ports [1] + Position [1040, -11, 1070, 21] + ZOrder 302 + ScopeSpecificationString "Simulink.scopes.TimeScopeBlockCfg('CurrentConfiguration', extmgr.ConfigurationSet(extm" + "gr.Configuration('Core','General UI',true),extmgr.Configuration('Core','Source UI',true),extmgr.Configuration('S" + "ources','WiredSimulink',true),extmgr.Configuration('Visuals','Time Domain',true,'SerializedDisplays',{struct('Mi" + "nYLimReal','-25.32552','MaxYLimReal','20.14308','YLabelReal','','MinYLimMag','0.00000','MaxYLimMag','25.32552','" + "LegendVisibility','off','XGrid',true,'YGrid',true,'PlotMagPhase',false,'AxesColor',[0 0 0],'AxesTickColor',[0.68" + "6274509803922 0.686274509803922 0.686274509803922],'ColorOrder',[1 1 0.0666666666666667;0.0745098039215686 0.623" + "529411764706 1;1 0.411764705882353 0.16078431372549;0.392156862745098 0.831372549019608 0.0745098039215686;0.717" + "647058823529 0.274509803921569 1;0.0588235294117647 1 1;1 0.0745098039215686 0.650980392156863],'Title','%','LinePropertiesCache',{{}},'UserDefinedChannelNames',{{}},'NumLines',6,'LineNames',{{'Grue_NL/1','Grue_" + "NL/2','Grue_NL/3','Grue_NL/4','Grue_NL/5','Grue_NL/6'}},'ShowContent',true,'Placement',1)},'DisplayPropertyDefau" + "lts',struct('MinYLimReal','-25.32552','MaxYLimReal','20.14308','YLabelReal','','MinYLimMag','0.00000','MaxYLimMa" + "g','25.32552','LegendVisibility','off','XGrid',true,'YGrid',true,'PlotMagPhase',false,'AxesColor',[0 0 0],'AxesT" + "ickColor',[0.686274509803922 0.686274509803922 0.686274509803922],'ColorOrder',[0.0745098039215686 0.62352941176" + "4706 1;1 0.411764705882353 0.16078431372549;1 1 0.0666666666666667;0.717647058823529 0.274509803921569 1;0.39215" + "6862745098 0.831372549019608 0.0745098039215686;0.0588235294117647 1 1;1 0.0745098039215686 0.650980392156863]))" + ",extmgr.Configuration('Tools','Plot Navigation',true),extmgr.Configuration('Tools','Measurements',true,'Version'" + ",'2018b')),'Version','2018b','VisibleAtModelOpen','on')" + NumInputPorts "1" + Floating off + } + Block { + BlockType Step + Name "Step" + SID "216" + Position [-135, 75, -105, 105] + ZOrder 297 + SampleTime "0" + } + Block { + BlockType Step + Name "Step1" + SID "217" + Position [-135, -10, -105, 20] + ZOrder 300 + After "20" + SampleTime "0" + } + Block { + BlockType ToWorkspace + Name "To Workspace" + SID "224" + Ports [1] + Position [875, -15, 935, 15] + ZOrder 303 + VariableName "simout" + MaxDataPoints "inf" + SaveFormat "Timeseries" + Save2DSignal "3-D array (concatenate along third dimension)" + FixptAsFi on + SampleTime "-1" + } + Block { + BlockType Constant + Name "Zero" + SID "218" + Position [-135, 35, -105, 65] + ZOrder 295 + Value "0" + OutDataTypeStr "Inherit: Inherit via back propagation" + } + Block { + BlockType Constant + Name "Zero1" + SID "219" + Position [-135, -55, -105, -25] + ZOrder 296 + Value "0" + OutDataTypeStr "Inherit: Inherit via back propagation" + } + Line { + ZOrder 2 + SrcBlock "Grue_NL" + SrcPort 1 + DstBlock "Mux" + DstPort 1 + } + Line { + ZOrder 3 + SrcBlock "Grue_NL" + SrcPort 2 + DstBlock "Mux" + DstPort 2 + } + Line { + ZOrder 4 + SrcBlock "Grue_NL" + SrcPort 3 + DstBlock "Mux" + DstPort 3 + } + Line { + ZOrder 5 + SrcBlock "Grue_NL" + SrcPort 4 + DstBlock "Mux" + DstPort 4 + } + Line { + ZOrder 6 + SrcBlock "Grue_NL" + SrcPort 5 + DstBlock "Mux" + DstPort 5 + } + Line { + ZOrder 7 + SrcBlock "Grue_NL" + SrcPort 6 + DstBlock "Mux" + DstPort 6 + } + Line { + ZOrder 11 + SrcBlock "Add" + SrcPort 1 + DstBlock "Demux" + DstPort 1 + } + Line { + ZOrder 12 + SrcBlock "Gain" + SrcPort 1 + Points [-80, 0] + DstBlock "Add" + DstPort 2 + } + Line { + ZOrder 13 + SrcBlock "Add1" + SrcPort 1 + DstBlock "Grue_NL" + DstPort 1 + } + Line { + ZOrder 14 + SrcBlock "Demux" + SrcPort 1 + DstBlock "Add1" + DstPort 2 + } + Line { + ZOrder 15 + SrcBlock "Add2" + SrcPort 1 + DstBlock "Grue_NL" + DstPort 2 + } + Line { + ZOrder 17 + SrcBlock "Constant" + SrcPort 1 + Points [0, 20] + DstBlock "Add1" + DstPort 1 + } + Line { + ZOrder 19 + SrcBlock "Constant1" + SrcPort 1 + Points [0, -20] + DstBlock "Add2" + DstPort 2 + } + Line { + ZOrder 20 + SrcBlock "Demux" + SrcPort 2 + DstBlock "Add2" + DstPort 1 + } + Line { + ZOrder 26 + SrcBlock "Mux1" + SrcPort 1 + DstBlock "Gain" + DstPort 1 + } + Line { + ZOrder 27 + SrcBlock "Demux1" + SrcPort 1 + DstBlock "Add3" + DstPort 2 + } + Line { + ZOrder 28 + SrcBlock "Constant2" + SrcPort 1 + Points [0, 5] + DstBlock "Add3" + DstPort 1 + } + Line { + ZOrder 30 + SrcBlock "Add3" + SrcPort 1 + Points [-35, 0; 0, 5] + DstBlock "Mux1" + DstPort 1 + } + Line { + ZOrder 31 + SrcBlock "Demux1" + SrcPort 2 + DstBlock "Add4" + DstPort 2 + } + Line { + ZOrder 32 + SrcBlock "Add4" + SrcPort 1 + Points [-33, 0; 0, 5] + DstBlock "Mux1" + DstPort 2 + } + Line { + ZOrder 33 + SrcBlock "Constant3" + SrcPort 1 + Points [0, 45] + DstBlock "Add4" + DstPort 1 + } + Line { + ZOrder 34 + SrcBlock "Demux1" + SrcPort 3 + DstBlock "Mux1" + DstPort 3 + } + Line { + ZOrder 35 + SrcBlock "Demux1" + SrcPort 4 + DstBlock "Mux1" + DstPort 4 + } + Line { + ZOrder 36 + SrcBlock "Demux1" + SrcPort 5 + Points [-120, 0] + Branch { + ZOrder 50 + Points [0, 81; -835, 0; 0, -401] + DstBlock "Add5" + DstPort 2 + } + Branch { + ZOrder 49 + DstBlock "Mux1" + DstPort 5 + } + } + Line { + ZOrder 37 + SrcBlock "Demux1" + SrcPort 6 + DstBlock "Mux1" + DstPort 6 + } + Line { + ZOrder 52 + SrcBlock "Integrator" + SrcPort 1 + DstBlock "Mux2" + DstPort 2 + } + Line { + ZOrder 39 + SrcBlock "Gain2" + SrcPort 1 + Points [16, 0; 0, -20] + DstBlock "Integrator" + DstPort 1 + } + Line { + ZOrder 40 + SrcBlock "Step" + SrcPort 1 + Points [9, 0; 0, -10] + DstBlock "Manual Switch" + DstPort 2 + } + Line { + ZOrder 41 + SrcBlock "Zero1" + SrcPort 1 + Points [35, 0; 0, 10] + DstBlock "Manual Switch1" + DstPort 1 + } + Line { + ZOrder 42 + SrcBlock "Step1" + SrcPort 1 + Points [35, 0; 0, -15] + DstBlock "Manual Switch1" + DstPort 2 + } + Line { + ZOrder 44 + SrcBlock "Manual Switch1" + SrcPort 1 + Points [88, 0; 0, 35] + DstBlock "Gain1" + DstPort 1 + } + Line { + ZOrder 45 + SrcBlock "Zero" + SrcPort 1 + Points [27, 0; 0, 10] + DstBlock "Manual Switch" + DstPort 1 + } + Line { + ZOrder 46 + SrcBlock "Manual Switch" + SrcPort 1 + DstBlock "Add5" + DstPort 1 + } + Line { + ZOrder 47 + SrcBlock "Add5" + SrcPort 1 + DstBlock "Gain2" + DstPort 1 + } + Line { + ZOrder 51 + SrcBlock "Gain1" + SrcPort 1 + DstBlock "Mux2" + DstPort 1 + } + Line { + ZOrder 53 + SrcBlock "Mux2" + SrcPort 1 + DstBlock "Add" + DstPort 1 + } + Line { + ZOrder 8 + SrcBlock "Mux" + SrcPort 1 + Points [60, 0] + Branch { + ZOrder 61 + Points [0, -50] + DstBlock "To Workspace" + DstPort 1 + } + Branch { + ZOrder 60 + Points [97, 0] + Branch { + ZOrder 55 + Points [0, -45] + DstBlock "Scope" + DstPort 1 + } + Branch { + ZOrder 54 + Points [38, 0] + DstBlock "Demux1" + DstPort 1 + } + } + } + Annotation { + SID "220" + Name "Delta d_c" + Position [-32, -62, 12, -47] + InternalMargins [0, 0, 0, 0] + HorizontalAlignment "left" + VerticalAlignment "top" + ZOrder -1 + } + Annotation { + SID "221" + Name "c" + Position [-31, 35, -19, 50] + InternalMargins [0, 0, 0, 0] + FixedHeight on + FixedWidth on + HorizontalAlignment "left" + VerticalAlignment "top" + ZOrder -2 + } + } +} diff --git a/424-Systeme_Non_Lineaires/TP2/Grue_NL.mdl.r2009b b/424-Systeme_Non_Lineaires/TP2/Grue_NL.mdl.r2009b new file mode 100644 index 0000000..db5e3d3 --- /dev/null +++ b/424-Systeme_Non_Lineaires/TP2/Grue_NL.mdl.r2009b @@ -0,0 +1,2563 @@ +Model { + Name "Grue_NL" + Version 7.4 + MdlSubVersion 0 + GraphicalInterface { + NumRootInports 0 + NumRootOutports 0 + ParameterArgumentNames "" + ComputedModelVersion "1.109" + NumModelReferences 0 + NumTestPointedSignals 0 + } + SavedCharacterEncoding "ISO-8859-1" + SaveDefaultBlockParams on + ScopeRefreshTime 0.035000 + OverrideScopeRefreshTime on + DisableAllScopes off + DataTypeOverride "UseLocalSettings" + MinMaxOverflowLogging "UseLocalSettings" + MinMaxOverflowArchiveMode "Overwrite" + MaxMDLFileLineLength 120 + Created "Fri Mar 23 18:37:01 2012" + Creator "abbasturki" + UpdateHistory "UpdateHistoryNever" + ModifiedByFormat "%" + LastModifiedBy "abbasturki" + ModifiedDateFormat "%" + LastModifiedDate "Thu Mar 24 19:22:21 2016" + RTWModifiedTimeStamp 380748139 + 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 + 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 1 + Version "1.6.0" + Array { + Type "Handle" + Dimension 8 + Simulink.SolverCC { + $ObjectID 2 + Version "1.6.0" + StartTime "0.0" + StopTime "dt" + AbsTol "auto" + FixedStep "1e-4" + 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" + Solver "ode45" + SolverName "ode45" + ShapePreserveControl "DisableAll" + ZeroCrossControl "UseLocalSettings" + ZeroCrossAlgorithm "Nonadaptive" + AlgebraicLoopSolver "TrustRegion" + SolverResetMethod "Fast" + PositivePriorityOrder off + AutoInsertRateTranBlk off + SampleTimeConstraint "Unconstrained" + InsertRTBMode "Whenever possible" + } + Simulink.DataIOCC { + $ObjectID 3 + Version "1.6.0" + Decimation "1" + ExternalInput "[t, u]" + FinalStateName "xFinal" + InitialState "xInitial" + LimitDataPoints on + MaxDataPoints "1000" + LoadExternalInput off + LoadInitialState off + SaveFinalState off + SaveCompleteFinalSimState off + SaveFormat "Array" + SaveOutput on + SaveState off + SignalLogging on + InspectSignalLogs off + SaveTime on + ReturnWorkspaceOutputs off + StateSaveName "xout" + TimeSaveName "tout" + OutputSaveName "yout" + SignalLoggingName "logsout" + OutputOption "RefineOutputTimes" + OutputTimes "[]" + ReturnWorkspaceOutputsName "out" + Refine "1" + } + Simulink.OptimizationCC { + $ObjectID 4 + Version "1.6.0" + Array { + Type "Cell" + Dimension 7 + Cell "BooleansAsBitfields" + Cell "PassReuseOutputArgsAs" + Cell "PassReuseOutputArgsThreshold" + Cell "ZeroExternalMemoryAtStartup" + Cell "ZeroInternalMemoryAtStartup" + Cell "OptimizeModelRefInitCode" + Cell "NoFixptDivByZeroProtection" + PropName "DisabledProps" + } + BlockReduction on + BooleanDataType on + ConditionallyExecuteInputs on + InlineParams off + UseIntDivNetSlope off + InlineInvariantSignals off + OptimizeBlockIOStorage on + BufferReuse on + EnhancedBackFolding off + StrengthReduction off + EnforceIntegerDowncast on + ExpressionFolding on + BooleansAsBitfields off + 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" + BufferReusableBoundary on + SimCompilerOptimization "Off" + AccelVerboseBuild off + } + Simulink.DebuggingCC { + $ObjectID 5 + Version "1.6.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" + 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" + ModelReferenceVersionMismatchMessage "none" + ModelReferenceIOMismatchMessage "none" + ModelReferenceCSMismatchMessage "none" + UnknownTsInhSupMsg "warning" + ModelReferenceDataLoggingMessage "warning" + ModelReferenceSymbolNameMessage "warning" + ModelReferenceExtraNoncontSigs "error" + StateNameClashWarn "warning" + SimStateInterfaceChecksumMismatchMsg "warning" + StrictBusMsg "Warning" + LoggingUnavailableSignals "error" + BlockIODiagnostic "none" + } + Simulink.HardwareCC { + $ObjectID 6 + Version "1.6.0" + ProdBitPerChar 8 + ProdBitPerShort 16 + ProdBitPerInt 32 + ProdBitPerLong 32 + ProdIntDivRoundTo "Undefined" + ProdEndianess "Unspecified" + ProdWordSize 32 + ProdShiftRightIntArith on + ProdHWDeviceType "32-bit Generic" + TargetBitPerChar 8 + TargetBitPerShort 16 + TargetBitPerInt 32 + TargetBitPerLong 32 + TargetShiftRightIntArith on + TargetIntDivRoundTo "Undefined" + TargetEndianess "Unspecified" + TargetWordSize 32 + TargetTypeEmulationWarnSuppressLevel 0 + TargetPreprocMaxBitsSint 32 + TargetPreprocMaxBitsUint 32 + TargetHWDeviceType "Specified" + TargetUnknown off + ProdEqTarget on + } + Simulink.ModelReferenceCC { + $ObjectID 7 + Version "1.6.0" + UpdateModelReferenceTargets "IfOutOfDateOrStructuralChange" + CheckModelReferenceTargetMessage "error" + ModelReferenceNumInstancesAllowed "Multi" + ModelReferencePassRootInputsByReference on + ModelReferenceMinAlgLoopOccurrences off + } + Simulink.SFSimCC { + $ObjectID 8 + Version "1.6.0" + SFSimEnableDebug on + SFSimOverflowDetection on + SFSimEcho on + SimBlas on + SimCtrlC on + SimExtrinsic on + SimIntegrity on + SimUseLocalCustomCode off + SimBuildMode "sf_incremental_build" + } + Simulink.RTWCC { + $BackupClass "Simulink.RTWCC" + $ObjectID 9 + Version "1.6.0" + Array { + Type "Cell" + Dimension 6 + Cell "IncludeHyperlinkInReport" + Cell "GenerateTraceInfo" + Cell "GenerateTraceReport" + Cell "GenerateTraceReportSl" + Cell "GenerateTraceReportSf" + Cell "GenerateTraceReportEml" + 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 + RTWCompilerOptimization "Off" + CheckMdlBeforeBuild "Off" + Array { + Type "Handle" + Dimension 2 + Simulink.CodeAppCC { + $ObjectID 10 + Version "1.6.0" + Array { + Type "Cell" + Dimension 19 + Cell "IgnoreCustomStorageClasses" + Cell "IgnoreTestpoints" + Cell "InsertBlockDesc" + Cell "SFDataObjDesc" + 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 + 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 + SimulinkBlockComments on + EnableCustomComments off + InlinedPrmAccess "Literals" + ReqsInCode off + UseSimReservedNames off + } + Simulink.GRTTargetCC { + $BackupClass "Simulink.TargetCC" + $ObjectID 11 + Version "1.6.0" + Array { + Type "Cell" + Dimension 17 + Cell "GeneratePreprocessorConditionals" + Cell "IncludeMdlTerminateFcn" + Cell "CombineOutputUpdateFcns" + Cell "SuppressErrorStatus" + Cell "ERTCustomFileBanners" + Cell "GenerateSampleERTMain" + Cell "GenerateTestInterfaces" + Cell "ModelStepFunctionPrototypeControlCompliant" + Cell "CPPClassGenCompliant" + Cell "MultiInstanceERTCode" + Cell "PurelyIntegerCode" + Cell "SupportNonFinite" + 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" + 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 + 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 + GenerateASAP2 off + } + PropName "Components" + } + } + PropName "Components" + } + Name "Configuration" + CurrentDlgPage "Solver" + ConfigPrmDlgPosition " [ 280, 124, 1160, 754 ] " + } + PropName "ConfigurationSets" + } + Simulink.ConfigSet { + $PropName "ActiveConfigurationSet" + $ObjectID 1 + } + 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 Constant + Value "1" + VectorParams1D on + SamplingMode "Sample based" + OutMin "[]" + OutMax "[]" + OutDataTypeMode "Inherit from 'Constant value'" + OutDataType "fixdt(1,16,0)" + ConRadixGroup "Use specified scaling" + OutScaling "[]" + OutDataTypeStr "Inherit: Inherit from 'Constant value'" + LockScale off + SampleTime "inf" + FramePeriod "inf" + } + Block { + BlockType Inport + Port "1" + UseBusObject off + BusObject "BusObject" + BusOutputAsStruct off + PortDimensions "-1" + VarSizeSig "Inherit" + SampleTime "-1" + OutMin "[]" + OutMax "[]" + DataType "auto" + OutDataType "fixdt(1,16,0)" + OutScaling "[]" + OutDataTypeStr "Inherit: auto" + LockScale off + SignalType "auto" + SamplingMode "auto" + LatchByDelayingOutsideSignal off + LatchByCopyingInsideSignal off + Interpolate on + } + Block { + BlockType Integrator + ExternalReset "none" + InitialConditionSource "internal" + InitialCondition "0" + LimitOutput off + UpperSaturationLimit "inf" + LowerSaturationLimit "-inf" + ShowSaturationPort off + ShowStatePort off + AbsoluteTolerance "auto" + IgnoreLimit off + ZeroCross on + ContinuousStateAttributes "''" + } + Block { + BlockType Outport + Port "1" + UseBusObject off + BusObject "BusObject" + BusOutputAsStruct off + PortDimensions "-1" + VarSizeSig "Inherit" + SampleTime "-1" + OutMin "[]" + OutMax "[]" + DataType "auto" + OutDataType "fixdt(1,16,0)" + OutScaling "[]" + OutDataTypeStr "Inherit: auto" + LockScale off + SignalType "auto" + SamplingMode "auto" + SourceOfInitialOutputValue "Dialog" + OutputWhenDisabled "held" + InitialOutput "[]" + } + Block { + BlockType Product + Inputs "2" + Multiplication "Element-wise(.*)" + CollapseMode "All dimensions" + CollapseDim "1" + InputSameDT on + OutMin "[]" + OutMax "[]" + OutDataTypeMode "Same as first input" + OutDataType "fixdt(1,16,0)" + OutScaling "[]" + OutDataTypeStr "Inherit: Same as first input" + LockScale off + RndMeth "Zero" + SaturateOnIntegerOverflow on + SampleTime "-1" + } + Block { + BlockType Saturate + UpperLimit "0.5" + LowerLimit "-0.5" + LinearizeAsGain on + ZeroCross on + SampleTime "-1" + OutMin "[]" + OutMax "[]" + OutDataTypeMode "Same as input" + OutDataType "fixdt(1,16,0)" + OutScaling "[]" + OutDataTypeStr "Inherit: Same as input" + LockScale off + RndMeth "Floor" + } + 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" + MinMaxOverflowLogging "UseLocalSettings" + } + Block { + BlockType Sum + IconShape "rectangular" + Inputs "++" + CollapseMode "All dimensions" + CollapseDim "1" + InputSameDT on + AccumDataTypeStr "Inherit: Inherit via internal rule" + OutMin "[]" + OutMax "[]" + OutDataTypeMode "Same as first input" + OutDataType "fixdt(1,16,0)" + OutScaling "[]" + OutDataTypeStr "Inherit: Same as first input" + LockScale off + RndMeth "Floor" + SaturateOnIntegerOverflow on + SampleTime "-1" + } + Block { + BlockType Trigonometry + Operator "sin" + OutputSignalType "auto" + SampleTime "-1" + } + } + System { + Name "Grue_NL" + Location [0, 73, 1280, 796] + 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 193 + Block { + BlockType SubSystem + Name "Grue_NL" + SID 19 + Ports [2, 6] + Position [570, 129, 700, 301] + MinAlgLoopOccurrences off + PropExecContextOutsideSubsystem off + RTWSystemCode "Auto" + FunctionWithSeparateData off + Opaque off + RequestExecContextInheritance off + MaskHideContents off + System { + Name "Grue_NL" + Location [57, 132, 1189, 742] + 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" + Block { + BlockType Inport + Name "F" + SID 20 + Position [25, 278, 55, 292] + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Inport + Name "C + C0" + SID 21 + Position [25, 173, 55, 187] + Port "2" + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Constant + Name "Constant2" + SID 192 + Position [99, 95, 151, 120] + BlockRotation 270 + BlockMirror on + NamePlacement "alternate" + ShowName off + Value "C0" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType SubSystem + Name "Eq_Theta" + SID 22 + Ports [3, 3] + Position [430, 55, 555, 115] + MinAlgLoopOccurrences off + PropExecContextOutsideSubsystem off + RTWSystemCode "Auto" + FunctionWithSeparateData off + Opaque off + RequestExecContextInheritance off + MaskHideContents off + System { + Name "Eq_Theta" + Location [447, 418, 1260, 809] + 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" + Block { + BlockType Inport + Name "d''" + SID 23 + Position [145, 58, 175, 72] + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Inport + Name "r" + SID 24 + Position [435, 103, 465, 117] + Port "2" + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Inport + Name "r'" + SID 25 + Position [145, 158, 175, 172] + Port "3" + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Sum + Name "Add" + SID 26 + Ports [3, 1] + Position [435, 143, 475, 237] + Inputs "---" + InputSameDT off + OutDataTypeMode "Inherit via internal rule" + OutDataType "fixdt(1, 16)" + OutScaling "2^-10" + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Constant + Name "Constant" + SID 27 + Position [65, 200, 95, 230] + Value "2" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Constant + Name "Constant1" + SID 28 + Position [65, 290, 95, 320] + Value "g" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Product + Name "Divide" + SID 29 + Ports [2, 1] + Position [520, 167, 550, 198] + Inputs "/*" + InputSameDT off + OutDataTypeMode "Inherit via internal rule" + OutDataType "fixdt(1, 16)" + OutScaling "2^-10" + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Integrator + Name "Integrator" + SID 30 + Ports [1, 1] + Position [585, 170, 615, 200] + } + Block { + BlockType Integrator + Name "Integrator1" + SID 31 + Ports [1, 1] + Position [655, 170, 685, 200] + } + Block { + BlockType Product + Name "Product1" + SID 32 + Ports [2, 1] + Position [320, 57, 350, 88] + InputSameDT off + OutDataTypeMode "Inherit via internal rule" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Product + Name "Product3" + SID 33 + Ports [3, 1] + Position [255, 155, 285, 225] + Inputs "3" + InputSameDT off + OutDataTypeMode "Inherit via internal rule" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Product + Name "Product4" + SID 34 + Ports [2, 1] + Position [330, 252, 360, 283] + InputSameDT off + OutDataTypeMode "Inherit via internal rule" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Trigonometry + Name "Trigonometric\nFunction2" + SID 35 + Ports [1, 1] + Position [255, 95, 285, 125] + Operator "cos" + } + Block { + BlockType Trigonometry + Name "Trigonometric\nFunction3" + SID 36 + Ports [1, 1] + Position [250, 245, 280, 275] + } + Block { + BlockType Outport + Name "Theta" + SID 37 + Position [755, 178, 785, 192] + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Outport + Name "Theta'" + SID 38 + Position [655, 123, 685, 137] + Port "2" + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Outport + Name "Theta''" + SID 39 + Position [585, 123, 615, 137] + Port "3" + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Line { + SrcBlock "d''" + SrcPort 1 + DstBlock "Product1" + DstPort 1 + } + Line { + SrcBlock "Trigonometric\nFunction2" + SrcPort 1 + Points [5, 0; 0, -30] + DstBlock "Product1" + DstPort 2 + } + Line { + SrcBlock "r'" + SrcPort 1 + DstBlock "Product3" + DstPort 1 + } + Line { + SrcBlock "Constant" + SrcPort 1 + DstBlock "Product3" + DstPort 3 + } + Line { + SrcBlock "Trigonometric\nFunction3" + SrcPort 1 + DstBlock "Product4" + DstPort 1 + } + Line { + SrcBlock "Constant1" + SrcPort 1 + Points [205, 0; 0, -30] + DstBlock "Product4" + DstPort 2 + } + Line { + SrcBlock "Product1" + SrcPort 1 + Points [30, 0; 0, 85] + DstBlock "Add" + DstPort 1 + } + Line { + SrcBlock "Product3" + SrcPort 1 + DstBlock "Add" + DstPort 2 + } + Line { + SrcBlock "Product4" + SrcPort 1 + Points [25, 0; 0, -50] + DstBlock "Add" + DstPort 3 + } + Line { + SrcBlock "r" + SrcPort 1 + Points [15, 0; 0, 65] + DstBlock "Divide" + DstPort 1 + } + Line { + SrcBlock "Add" + SrcPort 1 + DstBlock "Divide" + DstPort 2 + } + Line { + SrcBlock "Divide" + SrcPort 1 + Points [5, 0] + Branch { + DstBlock "Integrator" + DstPort 1 + } + Branch { + Points [0, -55] + DstBlock "Theta''" + DstPort 1 + } + } + Line { + SrcBlock "Integrator" + SrcPort 1 + Points [10, 0] + Branch { + DstBlock "Integrator1" + DstPort 1 + } + Branch { + Points [0, 180; -605, 0; 0, -175] + DstBlock "Product3" + DstPort 2 + } + Branch { + Points [0, -55] + DstBlock "Theta'" + DstPort 1 + } + } + Line { + SrcBlock "Integrator1" + SrcPort 1 + Points [35, 0] + Branch { + DstBlock "Theta" + DstPort 1 + } + Branch { + Points [0, -155; -625, 0; 0, 80; 100, 0] + Branch { + DstBlock "Trigonometric\nFunction2" + DstPort 1 + } + Branch { + Points [0, 150] + DstBlock "Trigonometric\nFunction3" + DstPort 1 + } + } + } + } + } + Block { + BlockType SubSystem + Name "Eq_d" + SID 40 + Ports [3, 3] + Position [435, 271, 550, 339] + MinAlgLoopOccurrences off + PropExecContextOutsideSubsystem off + RTWSystemCode "Auto" + FunctionWithSeparateData off + Opaque off + RequestExecContextInheritance off + MaskHideContents off + System { + Name "Eq_d" + Location [556, 107, 1156, 395] + 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" + Block { + BlockType Inport + Name "F" + SID 41 + Position [25, 153, 55, 167] + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Inport + Name "T" + SID 42 + Position [25, 98, 55, 112] + Port "2" + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Inport + Name "Theta" + SID 43 + Position [25, 33, 55, 47] + Port "3" + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Constant + Name "Constant" + SID 44 + Position [80, 185, 110, 215] + Value "Cd" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Constant + Name "Constant1" + SID 45 + Position [260, 190, 290, 220] + Value "Mc" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Product + Name "Divide" + SID 46 + Ports [2, 1] + Position [325, 152, 355, 183] + Inputs "*/" + InputSameDT off + OutDataTypeMode "Inherit via internal rule" + OutDataType "fixdt(1, 16)" + OutScaling "2^-10" + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Integrator + Name "Integrator" + SID 47 + Ports [1, 1] + Position [385, 155, 415, 185] + } + Block { + BlockType Integrator + Name "Integrator1" + SID 48 + Ports [1, 1] + Position [480, 155, 510, 185] + } + Block { + BlockType Product + Name "Product" + SID 49 + Ports [2, 1] + Position [170, 82, 200, 113] + InputSameDT off + OutDataTypeMode "Inherit via internal rule" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Product + Name "Product1" + SID 50 + Ports [2, 1] + Position [180, 192, 210, 223] + InputSameDT off + OutDataTypeMode "Inherit via internal rule" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Sum + Name "Sum" + SID 51 + Ports [3, 1] + Position [220, 150, 240, 170] + ShowName off + IconShape "round" + Inputs "++-" + InputSameDT off + OutDataTypeMode "Inherit via internal rule" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Trigonometry + Name "Trigonometric\nFunction" + SID 52 + Ports [1, 1] + Position [95, 25, 125, 55] + } + Block { + BlockType Outport + Name "d" + SID 53 + Position [545, 163, 575, 177] + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Outport + Name "d'" + SID 54 + Position [545, 123, 575, 137] + Port "2" + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Outport + Name "d''" + SID 55 + Position [545, 83, 575, 97] + Port "3" + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Line { + SrcBlock "Product" + SrcPort 1 + Points [25, 0] + DstBlock "Sum" + DstPort 1 + } + Line { + SrcBlock "Trigonometric\nFunction" + SrcPort 1 + Points [20, 0; 0, 50] + DstBlock "Product" + DstPort 1 + } + Line { + SrcBlock "Product1" + SrcPort 1 + Points [15, 0] + DstBlock "Sum" + DstPort 3 + } + Line { + SrcBlock "Constant" + SrcPort 1 + DstBlock "Product1" + DstPort 1 + } + Line { + SrcBlock "Sum" + SrcPort 1 + DstBlock "Divide" + DstPort 1 + } + Line { + SrcBlock "Constant1" + SrcPort 1 + Points [5, 0; 0, -30] + DstBlock "Divide" + DstPort 2 + } + Line { + SrcBlock "Divide" + SrcPort 1 + Points [5, 0] + Branch { + DstBlock "Integrator" + DstPort 1 + } + Branch { + Points [0, -80] + DstBlock "d''" + DstPort 1 + } + } + Line { + SrcBlock "Integrator" + SrcPort 1 + Points [10, 0] + Branch { + Points [15, 0] + Branch { + DstBlock "Integrator1" + DstPort 1 + } + Branch { + Points [0, 90; -280, 0] + DstBlock "Product1" + DstPort 2 + } + } + Branch { + Points [0, -40] + DstBlock "d'" + DstPort 1 + } + } + Line { + SrcBlock "F" + SrcPort 1 + DstBlock "Sum" + DstPort 2 + } + Line { + SrcBlock "T" + SrcPort 1 + DstBlock "Product" + DstPort 2 + } + Line { + SrcBlock "Theta" + SrcPort 1 + DstBlock "Trigonometric\nFunction" + DstPort 1 + } + Line { + SrcBlock "Integrator1" + SrcPort 1 + DstBlock "d" + DstPort 1 + } + } + } + Block { + BlockType SubSystem + Name "Eq_r" + SID 56 + Ports [4, 3] + Position [430, 176, 555, 229] + MinAlgLoopOccurrences off + PropExecContextOutsideSubsystem off + RTWSystemCode "Auto" + FunctionWithSeparateData off + Opaque off + RequestExecContextInheritance off + MaskHideContents off + System { + Name "Eq_r" + Location [215, 204, 1375, 908] + 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" + Block { + BlockType Inport + Name "C" + SID 57 + Position [120, 123, 150, 137] + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Inport + Name "d''" + SID 58 + Position [25, 323, 55, 337] + Port "2" + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Inport + Name "Theta" + SID 59 + Position [25, 263, 55, 277] + Port "3" + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Inport + Name "Theta'" + SID 60 + Position [25, 378, 55, 392] + Port "4" + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Sum + Name "Add" + SID 61 + Ports [5, 1] + Position [385, 127, 490, 333] + Inputs "---++" + InputSameDT off + OutDataTypeMode "Inherit via internal rule" + OutDataType "fixdt(1, 16)" + OutScaling "2^-10" + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Constant + Name "Constant" + SID 62 + Position [70, 140, 100, 170] + Value "b" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Constant + Name "Constant1" + SID 63 + Position [100, 60, 130, 90] + Value "J" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Constant + Name "Constant2" + SID 64 + Position [180, 25, 210, 55] + Value "m" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Constant + Name "Constant3" + SID 65 + Position [45, 210, 75, 240] + Value "Cr" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Constant + Name "Constant4" + SID 66 + Position [185, 460, 215, 490] + Value "g" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Product + Name "Divide" + SID 67 + Ports [2, 1] + Position [280, 132, 310, 163] + Inputs "*/" + InputSameDT off + OutDataTypeMode "Inherit via internal rule" + OutDataType "fixdt(1, 16)" + OutScaling "2^-10" + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Product + Name "Divide1" + SID 68 + Ports [2, 1] + Position [175, 162, 205, 193] + Inputs "**" + InputSameDT off + OutDataTypeMode "Inherit via internal rule" + OutDataType "fixdt(1, 16)" + OutScaling "2^-10" + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Product + Name "Divide2" + SID 69 + Ports [2, 1] + Position [265, 67, 295, 98] + Inputs "*/" + InputSameDT off + OutDataTypeMode "Inherit via internal rule" + OutDataType "fixdt(1, 16)" + OutScaling "2^-10" + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Product + Name "Divide3" + SID 70 + Ports [2, 1] + Position [520, 177, 550, 208] + Inputs "/*" + InputSameDT off + OutDataTypeMode "Inherit via internal rule" + OutDataType "fixdt(1, 16)" + OutScaling "2^-10" + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Product + Name "Divide4" + SID 71 + Ports [2, 1] + Position [280, 187, 310, 218] + Inputs "/*" + InputSameDT off + OutDataTypeMode "Inherit via internal rule" + OutDataType "fixdt(1, 16)" + OutScaling "2^-10" + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Product + Name "Divide5" + SID 72 + Ports [2, 1] + Position [185, 217, 215, 248] + Inputs "**" + InputSameDT off + OutDataTypeMode "Inherit via internal rule" + OutDataType "fixdt(1, 16)" + OutScaling "2^-10" + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Product + Name "Divide6" + SID 73 + Ports [3, 1] + Position [280, 254, 310, 286] + Inputs "***" + InputSameDT off + OutDataTypeMode "Inherit via internal rule" + OutDataType "fixdt(1, 16)" + OutScaling "2^-10" + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Product + Name "Divide7" + SID 74 + Ports [2, 1] + Position [120, 362, 150, 393] + Inputs "**" + InputSameDT off + OutDataTypeMode "Inherit via internal rule" + OutDataType "fixdt(1, 16)" + OutScaling "2^-10" + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Product + Name "Divide8" + SID 75 + Ports [3, 1] + Position [280, 364, 310, 396] + Inputs "***" + InputSameDT off + OutDataTypeMode "Inherit via internal rule" + OutDataType "fixdt(1, 16)" + OutScaling "2^-10" + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Product + Name "Divide9" + SID 76 + Ports [3, 1] + Position [280, 424, 310, 456] + Inputs "***" + InputSameDT off + OutDataTypeMode "Inherit via internal rule" + OutDataType "fixdt(1, 16)" + OutScaling "2^-10" + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Integrator + Name "Integrator" + SID 77 + Ports [1, 1] + Position [685, 180, 715, 210] + InitialCondition "R" + } + Block { + BlockType Integrator + Name "Integrator1" + SID 78 + Ports [1, 1] + Position [600, 180, 630, 210] + } + Block { + BlockType Sum + Name "Sum" + SID 79 + Ports [2, 1] + Position [290, 30, 310, 50] + ShowName off + IconShape "round" + Inputs "|++" + InputSameDT off + OutDataTypeMode "Inherit via internal rule" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Trigonometry + Name "Trigonometric\nFunction2" + SID 80 + Ports [1, 1] + Position [95, 255, 125, 285] + } + Block { + BlockType Trigonometry + Name "Trigonometric\nFunction3" + SID 81 + Ports [1, 1] + Position [120, 425, 150, 455] + Operator "cos" + } + Block { + BlockType Outport + Name "r" + SID 82 + Position [765, 188, 795, 202] + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Outport + Name "r'" + SID 83 + Position [675, 138, 705, 152] + Port "2" + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Outport + Name "r''" + SID 84 + Position [605, 138, 635, 152] + Port "3" + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Line { + SrcBlock "C" + SrcPort 1 + Points [110, 0] + DstBlock "Divide" + DstPort 1 + } + Line { + SrcBlock "Constant" + SrcPort 1 + Points [25, 0] + Branch { + DstBlock "Divide" + DstPort 2 + } + Branch { + Points [0, 15] + Branch { + DstBlock "Divide1" + DstPort 1 + } + Branch { + Points [0, 15] + DstBlock "Divide1" + DstPort 2 + } + } + } + Line { + SrcBlock "Divide" + SrcPort 1 + DstBlock "Add" + DstPort 1 + } + Line { + SrcBlock "Constant2" + SrcPort 1 + Points [30, 0] + Branch { + DstBlock "Sum" + DstPort 1 + } + Branch { + Points [0, 220] + Branch { + DstBlock "Divide6" + DstPort 1 + } + Branch { + Points [0, 105] + Branch { + Points [0, 5] + DstBlock "Divide8" + DstPort 1 + } + Branch { + Points [0, 65] + DstBlock "Divide9" + DstPort 1 + } + } + } + } + Line { + SrcBlock "Divide2" + SrcPort 1 + DstBlock "Sum" + DstPort 2 + } + Line { + SrcBlock "Constant1" + SrcPort 1 + DstBlock "Divide2" + DstPort 1 + } + Line { + SrcBlock "Divide1" + SrcPort 1 + Points [15, 0; 0, -5] + Branch { + Points [0, -85] + DstBlock "Divide2" + DstPort 2 + } + Branch { + Points [0, 20] + DstBlock "Divide4" + DstPort 1 + } + } + Line { + SrcBlock "Sum" + SrcPort 1 + Points [190, 0] + DstBlock "Divide3" + DstPort 1 + } + Line { + SrcBlock "Add" + SrcPort 1 + Points [0, -30] + DstBlock "Divide3" + DstPort 2 + } + Line { + SrcBlock "Divide3" + SrcPort 1 + Points [10, 0] + Branch { + DstBlock "Integrator1" + DstPort 1 + } + Branch { + Points [0, -50] + DstBlock "r''" + DstPort 1 + } + } + Line { + SrcBlock "Integrator1" + SrcPort 1 + Points [15, 0] + Branch { + DstBlock "Integrator" + DstPort 1 + } + Branch { + Points [0, 165; -480, 0] + DstBlock "Divide5" + DstPort 2 + } + Branch { + Points [0, -50] + DstBlock "r'" + DstPort 1 + } + } + Line { + SrcBlock "Constant3" + SrcPort 1 + DstBlock "Divide5" + DstPort 1 + } + Line { + SrcBlock "Divide5" + SrcPort 1 + Points [5, 0; 0, -25] + DstBlock "Divide4" + DstPort 2 + } + Line { + SrcBlock "Divide4" + SrcPort 1 + Points [10, 0; 0, -15] + DstBlock "Add" + DstPort 2 + } + Line { + SrcBlock "Theta" + SrcPort 1 + Points [5, 0] + Branch { + DstBlock "Trigonometric\nFunction2" + DstPort 1 + } + Branch { + Points [0, 170] + DstBlock "Trigonometric\nFunction3" + DstPort 1 + } + } + Line { + SrcBlock "d''" + SrcPort 1 + Points [90, 0; 0, -50] + DstBlock "Divide6" + DstPort 3 + } + Line { + SrcBlock "Trigonometric\nFunction2" + SrcPort 1 + DstBlock "Divide6" + DstPort 2 + } + Line { + SrcBlock "Divide6" + SrcPort 1 + Points [10, 0; 0, -40] + DstBlock "Add" + DstPort 3 + } + Line { + SrcBlock "Theta'" + SrcPort 1 + Points [15, 0] + Branch { + DstBlock "Divide7" + DstPort 2 + } + Branch { + Points [0, -15] + DstBlock "Divide7" + DstPort 1 + } + } + Line { + SrcBlock "Divide7" + SrcPort 1 + DstBlock "Divide8" + DstPort 2 + } + Line { + SrcBlock "Integrator" + SrcPort 1 + Points [10, 0] + Branch { + Points [0, 220; -465, 0] + DstBlock "Divide8" + DstPort 3 + } + Branch { + DstBlock "r" + DstPort 1 + } + } + Line { + SrcBlock "Divide8" + SrcPort 1 + Points [20, 0; 0, -110] + DstBlock "Add" + DstPort 4 + } + Line { + SrcBlock "Trigonometric\nFunction3" + SrcPort 1 + DstBlock "Divide9" + DstPort 2 + } + Line { + SrcBlock "Constant4" + SrcPort 1 + Points [20, 0; 0, -25] + DstBlock "Divide9" + DstPort 3 + } + Line { + SrcBlock "Divide9" + SrcPort 1 + Points [45, 0; 0, -130] + DstBlock "Add" + DstPort 5 + } + } + } + Block { + BlockType Saturate + Name "Saturation" + SID 190 + Position [180, 270, 210, 300] + UpperLimit "1e4" + LowerLimit "-1e4" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Saturate + Name "Saturation1" + SID 191 + Position [225, 165, 255, 195] + UpperLimit "3e3" + LowerLimit "-3e3" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Sum + Name "Sum2" + SID 193 + Ports [2, 1] + Position [115, 170, 135, 190] + ShowName off + IconShape "round" + Inputs "+-|" + InputSameDT off + OutDataTypeMode "Inherit via internal rule" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType SubSystem + Name "T" + SID 85 + Ports [3, 1] + Position [685, 146, 795, 284] + MinAlgLoopOccurrences off + PropExecContextOutsideSubsystem off + RTWSystemCode "Auto" + FunctionWithSeparateData off + Opaque off + RequestExecContextInheritance off + MaskHideContents off + System { + Name "T" + Location [422, 170, 1111, 827] + 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" + Block { + BlockType Inport + Name "r'" + SID 86 + Position [95, 178, 125, 192] + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Inport + Name "r''" + SID 87 + Position [95, 378, 125, 392] + Port "2" + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Inport + Name "C" + SID 88 + Position [95, 318, 125, 332] + Port "3" + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Product + Name "Divide" + SID 89 + Ports [3, 1] + Position [155, 380, 185, 450] + Inputs "**/" + InputSameDT off + OutDataTypeMode "Inherit via internal rule" + OutDataType "fixdt(1, 16)" + OutScaling "2^-10" + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Product + Name "Divide1" + SID 90 + Ports [3, 1] + Position [155, 171, 195, 239] + Inputs "**/" + InputSameDT off + OutDataTypeMode "Inherit via internal rule" + OutDataType "fixdt(1, 16)" + OutScaling "2^-10" + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Product + Name "Divide2" + SID 91 + Ports [2, 1] + Position [310, 197, 340, 228] + Inputs "*/" + InputSameDT off + OutDataTypeMode "Inherit via internal rule" + OutDataType "fixdt(1, 16)" + OutScaling "2^-10" + OutDataTypeStr "Inherit: Inherit via internal rule" + RndMeth "Floor" + SaturateOnIntegerOverflow off + } + Block { + BlockType Sum + Name "Sum2" + SID 92 + Ports [2, 1] + Position [225, 315, 245, 335] + ShowName off + IconShape "round" + Inputs "|++" + InputSameDT off + OutDataTypeMode "Inherit via internal rule" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Sum + Name "Sum3" + SID 93 + Ports [2, 1] + Position [240, 195, 260, 215] + ShowName off + IconShape "round" + Inputs "|++" + InputSameDT off + OutDataTypeMode "Inherit via internal rule" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + OutDataTypeStr "Inherit: Inherit via internal rule" + SaturateOnIntegerOverflow off + } + Block { + BlockType Constant + Name "g" + SID 94 + Position [95, 435, 125, 465] + ShowName off + Value "b" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Constant + Name "g1" + SID 95 + Position [60, 195, 90, 225] + ShowName off + Value "Cr" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Constant + Name "g2" + SID 96 + Position [95, 255, 125, 285] + ShowName off + Value "b" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Constant + Name "g3" + SID 97 + Position [255, 260, 285, 290] + ShowName off + Value "b" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Constant + Name "g4" + SID 98 + Position [50, 400, 80, 430] + ShowName off + Value "J" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Outport + Name "T" + SID 99 + Position [385, 208, 415, 222] + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Line { + SrcBlock "r''" + SrcPort 1 + Points [10, 0] + DstBlock "Divide" + DstPort 1 + } + Line { + SrcBlock "C" + SrcPort 1 + DstBlock "Sum2" + DstPort 1 + } + Line { + SrcBlock "Divide" + SrcPort 1 + Points [45, 0] + DstBlock "Sum2" + DstPort 2 + } + Line { + SrcBlock "r'" + SrcPort 1 + DstBlock "Divide1" + DstPort 1 + } + Line { + SrcBlock "g1" + SrcPort 1 + Points [30, 0; 0, -5] + DstBlock "Divide1" + DstPort 2 + } + Line { + SrcBlock "g2" + SrcPort 1 + Points [5, 0; 0, -45] + DstBlock "Divide1" + DstPort 3 + } + Line { + SrcBlock "Divide1" + SrcPort 1 + DstBlock "Sum3" + DstPort 1 + } + Line { + SrcBlock "Sum2" + SrcPort 1 + DstBlock "Sum3" + DstPort 2 + } + Line { + SrcBlock "Sum3" + SrcPort 1 + DstBlock "Divide2" + DstPort 1 + } + Line { + SrcBlock "g3" + SrcPort 1 + Points [5, 0] + DstBlock "Divide2" + DstPort 2 + } + Line { + SrcBlock "Divide2" + SrcPort 1 + DstBlock "T" + DstPort 1 + } + Line { + SrcBlock "g" + SrcPort 1 + Points [5, 0; 0, -10] + DstBlock "Divide" + DstPort 3 + } + Line { + SrcBlock "g4" + SrcPort 1 + DstBlock "Divide" + DstPort 2 + } + } + } + Block { + BlockType Outport + Name "d" + SID 100 + Position [860, 353, 890, 367] + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Outport + Name "r" + SID 101 + Position [855, 113, 885, 127] + Port "2" + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Outport + Name "Theta" + SID 102 + Position [855, 48, 885, 62] + Port "3" + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Outport + Name "d'" + SID 103 + Position [860, 408, 890, 422] + Port "4" + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Outport + Name "r'" + SID 104 + Position [855, 298, 885, 312] + Port "5" + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Block { + BlockType Outport + Name "Theta'" + SID 105 + Position [855, 78, 885, 92] + Port "6" + IconDisplay "Port number" + OutDataType "fixdt(1, 16)" + OutScaling "2^0" + } + Line { + SrcBlock "Eq_r" + SrcPort 2 + Points [5, 0] + Branch { + Points [45, 0; 0, -25] + Branch { + Points [0, -45; -195, 0] + DstBlock "Eq_Theta" + DstPort 3 + } + Branch { + Points [60, 0] + DstBlock "T" + DstPort 1 + } + } + Branch { + Points [0, 100] + DstBlock "r'" + DstPort 1 + } + } + Line { + SrcBlock "Eq_r" + SrcPort 1 + Points [0, -30] + Branch { + Points [0, -15; -155, 0; 0, -60] + DstBlock "Eq_Theta" + DstPort 2 + } + Branch { + Points [90, 0; 0, -40] + DstBlock "r" + DstPort 1 + } + } + Line { + SrcBlock "Eq_d" + SrcPort 3 + Points [40, 0; 0, 35; -200, 0; 0, -170] + Branch { + Points [0, -125] + DstBlock "Eq_Theta" + DstPort 1 + } + Branch { + Points [0, 5] + DstBlock "Eq_r" + DstPort 2 + } + } + Line { + SrcBlock "Eq_d" + SrcPort 2 + Points [5, 0; 0, 110] + DstBlock "d'" + DstPort 1 + } + Line { + SrcBlock "Eq_Theta" + SrcPort 1 + Points [0, -10] + Branch { + Points [0, -10; -220, 0; 0, 155] + Branch { + Points [-25, 0; 0, 125] + DstBlock "Eq_d" + DstPort 3 + } + Branch { + Points [0, 10] + DstBlock "Eq_r" + DstPort 3 + } + } + Branch { + DstBlock "Theta" + DstPort 1 + } + } + Line { + SrcBlock "Eq_Theta" + SrcPort 2 + Points [30, 0] + Branch { + Points [0, -55; -290, 0; 0, 195] + DstBlock "Eq_r" + DstPort 4 + } + Branch { + DstBlock "Theta'" + DstPort 1 + } + } + Line { + SrcBlock "Eq_r" + SrcPort 3 + Points [110, 0] + DstBlock "T" + DstPort 2 + } + Line { + SrcBlock "F" + SrcPort 1 + DstBlock "Saturation" + DstPort 1 + } + Line { + SrcBlock "T" + SrcPort 1 + Points [25, 0; 0, 240; -405, 0] + DstBlock "Eq_d" + DstPort 2 + } + Line { + SrcBlock "Eq_d" + SrcPort 1 + Points [110, 0; 0, 75] + DstBlock "d" + DstPort 1 + } + Line { + SrcBlock "Saturation" + SrcPort 1 + DstBlock "Eq_d" + DstPort 1 + } + Line { + SrcBlock "Saturation1" + SrcPort 1 + Points [20, 0] + Branch { + DstBlock "Eq_r" + DstPort 1 + } + Branch { + Points [0, 80] + DstBlock "T" + DstPort 3 + } + } + Line { + SrcBlock "Constant2" + SrcPort 1 + DstBlock "Sum2" + DstPort 1 + } + Line { + SrcBlock "Sum2" + SrcPort 1 + DstBlock "Saturation1" + DstPort 1 + } + Line { + SrcBlock "C + C0" + SrcPort 1 + DstBlock "Sum2" + DstPort 2 + } + } + } + } +} diff --git a/424-Systeme_Non_Lineaires/TP2/Grue_NL.slxc b/424-Systeme_Non_Lineaires/TP2/Grue_NL.slxc new file mode 100644 index 0000000..42f1895 Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/Grue_NL.slxc differ diff --git a/424-Systeme_Non_Lineaires/TP2/Grue_NL_corrL.slx b/424-Systeme_Non_Lineaires/TP2/Grue_NL_corrL.slx new file mode 100644 index 0000000..476a82d Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/Grue_NL_corrL.slx differ diff --git a/424-Systeme_Non_Lineaires/TP2/Grue_NL_corrNL.slx b/424-Systeme_Non_Lineaires/TP2/Grue_NL_corrNL.slx new file mode 100644 index 0000000..b40574c Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/Grue_NL_corrNL.slx differ diff --git a/424-Systeme_Non_Lineaires/TP2/Grue_NL_corrNL.slx.autosave b/424-Systeme_Non_Lineaires/TP2/Grue_NL_corrNL.slx.autosave new file mode 100644 index 0000000..e871200 Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/Grue_NL_corrNL.slx.autosave differ diff --git a/424-Systeme_Non_Lineaires/TP2/Grue_NL_corrNL.slxc b/424-Systeme_Non_Lineaires/TP2/Grue_NL_corrNL.slxc new file mode 100644 index 0000000..c2d9536 Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/Grue_NL_corrNL.slxc differ diff --git a/424-Systeme_Non_Lineaires/TP2/Ini_Grue.m b/424-Systeme_Non_Lineaires/TP2/Ini_Grue.m new file mode 100644 index 0000000..ae27b5e --- /dev/null +++ b/424-Systeme_Non_Lineaires/TP2/Ini_Grue.m @@ -0,0 +1,120 @@ +% Ce script permet de d�clarer les valeurs des param�tres du mod�le +% Il sert aussi � d�clarer et � calculer les diff�rentes variables +% de commande tout au long du TP (Exemples : Point de fonctionnement, +% trajectoire, commande � grand gain, ... +clear, clc, + + + +%% Param�tres : +m = 500; %kg +Mc = 5000; %kg +g = 10; %m/s^2 +J = 50; %kg.m^2 +b = 0.4; %m +Cd = 20; %kg/s +Cr = 20; %kg.m^2/s + +%% Point de fonctionnement +R = 10; +D = 0; +C0 = m*g*b; +F = 0; + +%% Trajectoire +Rini = R; +Dini = 0; +Rfin = 5; +Dfin = 20; +zh = 1; +dt = 10; +%% Manip 1 +A = [0 0 0 1 0 0 ; + 0 0 0 0 1 0 ; + 0 0 0 0 0 1 ; + 0 0 m*g/Mc -Cd/Mc 0 0 ; + 0 0 0 0 -Cr/(b^2*(J/b^2+m)) 0 ; + 0 0 -g/R*(1+m/Mc) Cd/(Mc*R) 0 0]; + +B = [0 0 ; + 0 0 ; + 0 0 ; + 1/Mc 0 ; + 0 -1/(b*(J/b^2+m)) ; + -1/(R*Mc) 0 ]; +C= eye(6); +Com = [B A*B A^2*B A^3*B A^4*B A^5*B]; +rank(Com) + +%% Manip 2 + +vprA = damp(eig(A)); % valeur propres de A +omega0 = vprA(2); +xi = 0.5 +i=complex(0,1); +p1 = omega0*(-xi+ i *sqrt(1-xi^2)); +p2 = omega0*(-xi- i *sqrt(1-xi^2)); +p = [-2 -2.5 -3 -4 p1 p2]; + + +K = place(A,B,p) +C_1 =C(1,:); +B_1 =B(:,1); + +eta = -1/(C_1*(A-B*K)^-1*B_1); + +%% +sys = ss(A-B*K,B(:,2),C(2,:),D) +H = tf(sys) +bode(H) +% margin(H) +% Avec le correcteur intégral : +Ti = 5e-4 +CI = tf(1,[-Ti 0]); % négatif pour avoir une phase >180 +%bode(H,CI*H,'grid') +fig =figure(); +margin(CI*H) +grid on; +saveas(fig,"manip_5marge.png"); + +%% pretty figure +% plot(simout) +% legend("d","r","\theta","d d/dt","dr/dt","d\theta/dt"); +% grid on; +%% Commande grand gain +Deltat= 10 +Dini = 0; +Rini = 10; +Dfin = 20; +Rfin = 5; +ed = omega0/10; +er = ed; + +coeff_phi = [6/Deltat^5 -15/Deltat^4 10/Deltat^3 0 0 0] + + +%% +close all; +fig= figure() +plot(Dc) +hold on +plot(simout.Time, simout.Data(:,1)); +xlabel('temps (s)'); +grid on; +title('Vérification de la planification de trajectoire'); +legend('d_c','d'); + +fig2= figure() +plot(Rc) +hold on +plot(simout.Time, simout.Data(:,2)); +xlabel('temps (s)'); +grid on; +title('Vérification de la planification de trajectoire'); +legend('r_c','r'); + + + + + + diff --git a/424-Systeme_Non_Lineaires/TP2/NL_correcL.fig b/424-Systeme_Non_Lineaires/TP2/NL_correcL.fig new file mode 100644 index 0000000..572bfac Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/NL_correcL.fig differ diff --git a/424-Systeme_Non_Lineaires/TP2/NL_correcL.png b/424-Systeme_Non_Lineaires/TP2/NL_correcL.png new file mode 100644 index 0000000..6394717 Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/NL_correcL.png differ diff --git a/424-Systeme_Non_Lineaires/TP2/NL_correcL1.png b/424-Systeme_Non_Lineaires/TP2/NL_correcL1.png new file mode 100644 index 0000000..c71fa6b Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/NL_correcL1.png differ diff --git a/424-Systeme_Non_Lineaires/TP2/NL_correcL10.png b/424-Systeme_Non_Lineaires/TP2/NL_correcL10.png new file mode 100644 index 0000000..5994d1b Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/NL_correcL10.png differ diff --git a/424-Systeme_Non_Lineaires/TP2/NL_correcL100.png b/424-Systeme_Non_Lineaires/TP2/NL_correcL100.png new file mode 100644 index 0000000..60faa4e Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/NL_correcL100.png differ diff --git a/424-Systeme_Non_Lineaires/TP2/TP2.tex b/424-Systeme_Non_Lineaires/TP2/TP2.tex new file mode 100644 index 0000000..3f891da --- /dev/null +++ b/424-Systeme_Non_Lineaires/TP2/TP2.tex @@ -0,0 +1,518 @@ +\documentclass[10pt,a4paper,notitlepage]{article} +\usepackage[utf8]{inputenc} +\usepackage[french]{babel} +\usepackage[T1]{fontenc} +\usepackage{mathtools} +\usepackage[left=2cm,right=2cm,top=2cm,bottom=2cm]{geometry} +\usepackage{graphicx} +\usepackage{float} +\usepackage{subcaption} +\usepackage{tikz} + +\usepackage{siunitx} +\usepackage{numprint} + +\addto{\captionsfrench}{\renewcommand{\abstractname}{Introduction}} + +\author{Pierre-Antoine Comby} +\title{TP1 : Commande d'un bras à liaison flexible par bouclage linéarisant} + +\input{/home/pac/Scripts/Raccourcis.tex} +\renewcommand{\R}{\mathbb{R}} +\renewcommand{\Z}{\mathbb{Z}} +\renewcommand{\vec}{\overrightarrow} +\usepackage{minted} +\begin{document} +\maketitle +\section{Modélisation} +\paragraph{Prépa.1} +\begin{itemize} +\item On applique le PFD au chariot \{1\}de masse $M_c$: +\begin{equation} + M_c\vec{a_{\{1\}}} = \vec{F}+\vec{T}-C_d\vec{v_{\{1\}}}+M_c\vec{g} +\end{equation} +Soit en projetant: +\begin{equation} + M_c \ddot{d} = F+T\sin(\theta)-C_d\dot{d} +\end{equation} +\item On fait de meme pour la masse pendulaire \{2\} $m$: +\begin{equation} + m \vec{a_{\{2\}}} = -\vec{T} +m \vec{g} +\end{equation} +et il vient directement: +\begin{equation} + \begin{cases} + m\ddot{x} = -T\sin(\theta)\\ + m\ddot{z} = -T\cos(\theta)+mg + \end{cases} +\end{equation} +\item et un théorème du moment cinétique sur l'arbre donne (avec $\alpha$ angle du tambour par rapport au chariot): + \begin{equation} + J\ddot{\alpha} = -C +bT-C_r \dot{\alpha} + \end{equation} + soit : + \begin{equation} + J \frac{\ddot{r}}{b} = -C+bT -C_r \frac{\dot{r}}{b} + \end{equation} +\end{itemize} +\paragraph{Prépa.2} +Comme $b\ll r$ on a : +\begin{equation} + \begin{cases} + x = r\sin\theta+d\\ + z = r\cos\theta + \end{cases} +\end{equation} +soit : +\begin{equation} + \begin{cases} + \dot{x} = \dot{r}\sin\theta + r\dot{\theta}\cos\theta +\dot{d}\\ + \dot{z} = \dot{r}\cos\theta -r\dot{\theta}\sin\theta + \end{cases} + \quad\text{ et }\quad + \begin{cases} + \ddot{x} = \ddot{r}\sin\theta+2\dot{r}\dot{\theta}\cos\theta+r\ddot{\theta}\cos\theta- r\dot{\theta}^2\sin\theta+\ddot{d}\\ + \ddot{z} = \ddot{r}\cos\theta-2\dot{r}\dot{\theta}\sin\theta-r\ddot{\theta}\sin\theta-r\dot{\theta}^2\cos\theta + \end{cases} +\end{equation} +\paragraph{Prépa.3} en remplacant dans le système (1) donné dans l'énoncé on trouve: +\begin{equation} + \begin{cases} + m( + \ddot{r} \sin\theta+2\dot{r}\dot{\theta}\cos\theta+r\ddot{\theta}\cos\theta-r\dot{\theta}^2\sin\theta+\ddot{d} + ) &=-T\sin\theta\\ + m( + \ddot{r}\cos{\theta}-2\dot{r}\dot{\theta}\sin\theta-r\ddot{\theta}\sin\theta-r\dot{\theta}^2\cos\theta + ) &= - T\cos\theta+ mg + \end{cases} +\end{equation} +A partir des identités trigonométrique on a : +\begin{equation} + \begin{cases} + m\ddot{r} &= - m\ddot{d}\sin\theta+mr\dot{\theta}^2 -T + mg \cos{\theta}\\ + r \ddot{\theta} &= -\ddot{d}\cos\theta-2\dot{r}\dot{\theta}-g\sin\theta + \end{cases} +\end{equation} +\paragraph{Prépa.4} +Des équations précédentes on en déduit le modèle d'état( en remplacant l'expression de $T$ par celle déduite de la prépa.3): +\begin{equation} + \begin{cases} + M_c\ddot{d} &= F +T \sin\theta-C_d\dot{d}\\ + r\ddot{\theta} &= -\ddot{d}\cos\theta-2\dot{r}\dot{\theta}-g\sin(\theta)\\ + (m+\frac{J}{b^2})\ddot{r} = -\frac{C}{b}-\frac{C_r\dot{r}}{b^2}-m\ddot{d}\sin\theta-mr\dot{\theta}^2+mg\cos{\theta} + \end{cases} +\end{equation} + +\paragraph{Prépa.5} +On linéarise autour de $d=D$,$r=R$,$\theta=0$, $T=mg$,$F=0$,$C=mbg$: +\begin{equation} + \begin{cases} +M_{c}(\Delta d+D) &=(\Delta F)+T \sin (\Delta \theta)-C_{d}(\Delta d+D) \\(\Delta r+R)(\Delta \theta) &=-(\Delta d+D) \cos (\Delta \theta)-2(\Delta r+R)(\Delta \theta)-g \sin (\Delta \theta) \\\left(m+\frac{J}{b^{2}}\right)(\Delta r+R) &=-\frac{\Delta C+m g b}{b}-\frac{C_{r}(\Delta r+R)}{b^{2}}-m(\Delta d+D) \sin (\Delta \theta)-m(\Delta r+R)(\Delta \theta)^{2}+m g \cos (\Delta \theta) +\end{cases} +\end{equation} +En faisant une approximation au 1er ordre on a: +\begin{equation} + \begin{cases} + M_{c} \Delta d &=\Delta F+m g \Delta \theta-C_{d} \Delta d \\ + R \Delta \theta+\Delta d &=-g \Delta \theta \\ + \left(m+\frac{J}{b^{2}}\right) \ddot{\Delta r} &=-\frac{\Delta C+m g b}{b}-\frac{C_{r} \Delta r}{b^{2}}-m g \Delta \theta + \end{cases} + \implies + \begin{cases} M_{c} \ddot{\Delta} d &=\Delta F+m g \Delta \theta-C_{d} \dot{\Delta} d \\ + R \Delta \theta+\Delta d &=-g \Delta \theta \\ + \left(m+\frac{J}{b^{2}}\right) \ddot{\Delta r} &=-\frac{\Delta C}{b}-\frac{C_{r} \Delta r}{b^{2}} + \end{cases} +\end{equation} +On en deduit le modèle d'état linéarisé: +\[ + \deriv{t}\vect{\Delta d \\ \Delta r \\ \Delta\theta \\ \dot{\Delta d}\\ \dot{\Delta r}\\ \dot{\Delta \theta}} = + \left[ \begin{array}{cccccc} + {0} & {0} & {0} & {1} & {0} & {0} \\ + {0} & {0} & {0} & {0} & {1} & {0} \\ + {0} & {0} & {0} & {0} & {0} & {1} \\ + {0} & {0} & {\frac{m g}{M_{c}}} & {-\frac{C_{d}}{M_{c}}} & {0} & {0} \\ + {0} & {0} & {0} & {0} & {-\frac{C_{r}}{J+m b^{2}}} & {0} \\ + {0} & {0} & {-\left(1+\frac{m}{M c}\right) \frac{g}{R}} & {\frac{C_{d}}{R M_{c}}} & {0} & {0} + \end{array}\right] \cdot + \left[ \begin{array}{c}{\Delta d} \\ {\Delta r} \\ {\Delta \theta} \\ {\Delta d} \\ {\Delta r} \\ {\Delta \theta}\end{array}\right]+ + \left[ \begin{array}{ccc}{0} & {0} \\ {0} & {0} \\ {0} & {0} \\ {\frac{1}{M_{c}}} & {0} \\ {0} & {-\frac{1}{\frac{J}{b}+m b^{2}}} \\ {-\frac{1}{R M_{c}}} & {0}\end{array}\right] + \cdot \left[ \begin{array}{c}{\Delta F} \\ {\Delta C}\end{array}\right] +\] + +\section{Commande linéaire} +\paragraph{Manip.1} +Dans le cas linéaire on construit la matrce de Kallman : +\[ + \mathcal{C} = \vect{B & AB & A^2B & A^5B } +\] +avec la fonction matlab \texttt{rank(Com)} on vérifie que le système est bien commandable. +\begin{minted}{matlab} + A = [0 0 0 1 0 0 ; + 0 0 0 0 1 0 ; + 0 0 0 0 0 1 ; + 0 0 m*g/Mc -Cd/Mc 0 0 ; + 0 0 0 0 -Cr/(b^2*(J/b^2+m)) 0 ; + 0 0 -g/R*(1+m/Mc) Cd/(Mc*R) 0 0]; +B = [0 0 ; + 0 0 ; + 0 0 ; + 1/Mc 0 ; + 0 -1/(b*(J/b^2+m)) ; + -1/(R*Mc) 0 ]; +Com = [B A*B A^2*B A^3*B A^4*B A^5*B]; +rank(Com) +\end{minted} +On a un rang de 6, le système linéaire est bien commandable. +\paragraph{Manip.2} +avec la fonction \texttt{damp(eig(A))} on trouve les valeurs propres et constantes de temps de la matrice d'état +\begin{table}[H] + \centering + \begin{tabular}[t]{llll} + \hline + {\bf Pole} & {\bf Damping} & {\bf Time Constant} & \\ +\hline + & & {(rad/TimeUnit)} & {(TimeUnit)} \\ + + 0.00e+00 & -1.00e+00 & 0.00e+00 & Inf \\ + -1.82e-04 + 1.48e+00i & 1.23e-04 & 1.48e+00 & 5.50e+03 \\ + -1.82e-04 - 1.48e+00i & 1.23e-04 & 1.48e+00 & 5.50e+03 \\ + -3.64e-03 & 1.00e+00 & 3.64e-03 & 2.75e+02 \\ + 0.00e+00 & -1.00e+00 & 0.00e+00 & Inf \\ + -1.54e-01 & 1.00e+00 & 1.54e-01 & 6.50e+00 \\ + \hline +\end{tabular} + +\caption{Valeur propre et pulsation caractéristique} +\end{table} +On a donc la pulsation propre du système : $\omega_0$= \SI{1.48}{rad/s}. On choisi alors d'imposer les poles suivant, (d'après le cahier des charges) en ammortissant le pole double conjugué principal: +\[ + p_{1,2} = \omega_0(\xi\pm j \sqrt{1-\xi^2}) = 1.48(0.5\pm \sqrt{1-0.5^2}) +\] +\begin{minted}{matlab} + +vprA = damp(eig(A)); % valeur propres de A +omega0 = vprA(2); +xi = 0.5 +i=complex(0,1); +p1 = omega0*(xi+ i *sqrt(1-xi^2)); +p2 = omega0*(xi- i *sqrt(1-xi^2)); +p = [-2 -2.5 -3 -4 p1 p2]; + +K = place(A,B,p) + +\end{minted} +\[K = 10^{5}\cdot +\begin{bmatrix} + + 0.4288 & 0.1360 & 2.2614 & 0.0215 & 0.0506 & -0.9539 \\ + -0.0035 & -0.0261 & -0.0026 & 0.0019 & -0.0182 & 0.0195 \\ + +\end{bmatrix}\] +\paragraph{Manip.3} +Pour le terme de précommande, si l'on veux un gain statique unitaire, il faut\footnote{cf UE 421}: +\[ + \eta =\frac{-1}{C_1(A-BK)^{-1}B_1} = 4.1039. 10^{4} +\] +Avec $C_1$ et $B_1$ lignes et colonnes des matrices $C$ et $B$ propre à $\Delta d$ +\paragraph{Manip.4} L'ajout d'une composante intégrale va rendre notre système précis. On construit alors la fonction de transfert grace à MATLAB: +\begin{minted}{matlab} + sys = ss( A-B*K,B(:,2),C(2,:), 0 ); + H = tf(sys); + bode(H); +\end{minted} +On obtient le diagramme de bode suivant: +\begin{figure}[ht] + \centering + \includegraphics[width=0.9\textwidth]{manip_5_bode.png} + \caption{Diagramme de bode système en boucle ouverte} + \label{fig:label} +\end{figure} +\paragraph{Manip.5} +La marge de phase est nulle, on met en place un correcteur intégrale pur qui apporte stabilité et précission au système: + +\begin{minted}{matlab} +Ti = 4e-4 +CI = tf(1,[-Ti 0]); % négatif pour avoir une phase >180 +%bode(H,CI*H,'grid') +figure(); +margin(CI*H) +\end{minted} +\begin{figure}[H] + \centering + \includegraphics[width=0.7\textwidth]{manip_5marge.png} + \caption{Marge de Phase et Gain pour $T_i=4.10^{-4}$} + \label{fig:margin} +\end{figure} +sur la figure\ref{fig:margin} on relève une marge de phase de 50$^o$ , le cahier des charge est respecté. + +\begin{figure}[ht] + \centering + \includegraphics[width=0.9\textwidth]{bouclage_modele_L.png} + \caption{Modèle Linéaire compléter par le correcteru par retour d'état.} + \label{fig:label} +\end{figure} + +\paragraph{Manip.6} +Avec une commande $\Delta d_c = 20$m on obtient la figure suivante: +\begin{figure}[ht] + \centering + \includegraphics[width=0.7\textwidth]{manip6_20.png} + \caption{sortie du système pour une commande de 20m} + \label{fig:gain20} +\end{figure} + +On remarque que le système n'est plus précis, il faut recaler le gain, ici manuellement, pour obtenir un système précis. +On atteint les limites du modèle linéaire, pour des commandes plus grande ou plus complexe il va falloir tenir compte des non-linéarités du système. + +\paragraph{Manip.7} +On applique le correcteur au modèle non linéaire, en ayant recentrer le +retourd'état autour de son point de fonctionnement. +On obtient une sortie chaotique, mais douce. comme on peux le voir sur la figure \ref{fig:dc_var} +\paragraph{Manip.8} +Un changement de consigne apporte un comportement différents : +\begin{figure}[H] + \centering +\begin{subfigure}{0.5\textwidth} + \centering + \includegraphics[width=\textwidth]{NL_correcL10.png} + \caption{$d_c=10$} + \label{fig:label} +\end{subfigure}% +\begin{subfigure}{0.5\textwidth} + \centering + \includegraphics[width=\linewidth]{NL_correcL100.png} + \caption{$d_c=100$} + \label{fig:label} +\end{subfigure}\\ +\begin{subfigure}{0.5\textwidth} + \centering + \includegraphics[width=\linewidth]{NL_correcL1.png} + \caption{$d_c=1$} + \label{fig:label} +\end{subfigure} +\caption{différentes sorties pour des consignes différentes} +\label{fig:dc_var} +\end{figure} + + + + + + +\section{Commande non linéaire hiérarchisante} +\subsection{commande à grand gain} +\paragraph{Prépa.6} On planifie la trajectoire avec: +\begin{equation} + \begin{aligned} D_{c}(t) &=(1-\phi(t)) D_{i n i}+\phi(t) D_{f i n} \\ + R_{c}(t) &=(1-\phi(t)) R_{i n i}+\phi(t) R_{f i n} + \end{aligned} +\end{equation} +Avec les conditions initiales et finales sur les positions +$\phi(0)=0 \quad$ et $\quad \phi(\Delta t)=1$ +et celles sur la vitesse et l'accélération +$\forall i=1,2\left.\frac{d^{i} \phi(t)}{d t^{i}}\right|_{t=0}=0 \quad$ et $\quad\left.\frac{d^{i} \phi(t)}{d t^{i}}\right|_{t=\Delta t}=0$ +On a 6 conditions à respecter, donc on choisit un polynôme de degré 5: +\[ + \phi(t) = a_5 t^5 + a_4 t^4 +a_3 t^3 + a_2 t^2+a_1 t+ a_0 +\] + +Les conditions initiales imposent $a_0=a_1=a_2 = 0$ on a donc le polynome : $ \phi(t) = a_5 t^5 + a_4 t^4 +a_3 t^3$. +Alors : +\begin{equation} + \begin{aligned} \alpha(\Delta t)=1 & \Rightarrow \quad a_5 \Delta t^{5} \quad+a_4 \Delta t^{4} \quad+a_3 \Delta t^{3}=1 \\ + \left.\frac{d \alpha(t)}{d t}\right|_{t=\Delta t}=0 & \Rightarrow 5 a_5 \Delta t^{4} \quad+4 a_4 \Delta t^{3}+3 a_3 \Delta t^{2}=0 \\ + \left.\frac{d^{2} \alpha(t)}{d t^{2}}\right|_{t=\Delta t}=0 & \Rightarrow 20 a_5 \Delta t^{4}+12 a_4 \Delta t^{3}+6 a_3 \Delta t^{2}=0 + \end{aligned} +\end{equation} +En résolvant le système on obtient: +\[ + a_5 = \frac{6}{\Delta t^5} ,\quad a_4 = \frac{-15}{\Delta t^4}, \quad a_3 = \frac{10}{\Delta t^3} +\] + +\paragraph{Prépa.7} à partir de l'équation (2.4) de l'énoncé on a : + +\begin{equation} + \frac{1}{\omega_{0}^{2}}=\frac{R}{g} \Rightarrow \omega_{0}=\sqrt{\frac{g}{R}} +\end{equation} + +\paragraph{Prépa.8} on a les commandes : +\begin{equation} + F=\frac{M_{c}}{\epsilon_{d}}\left(\dot{D}_{c}-\dot{d}\right) \text{ et } C=-\frac{J / b+m b}{\epsilon_{r}}\left(\dot{R}_{c}-\dot{r}\right) +\end{equation} +soit le modèle : +\begin{equation} + \dot{x}=\left[ \begin{array}{c}{\Delta d} \\ {\Delta r} \\ {\frac{m g}{M_{c}} \Delta \theta-\frac{C_{d}}{M_{c}} \Delta d+\frac{1}{\epsilon_{d}}\left(\dot{D}_{c}-\dot{d}\right)} \\ {\frac{-C_{r}}{J+m b^{2}}+\frac{F_{c}-\dot{r}}{\epsilon_{r}}} \\ {\Delta \theta}\end{array}\right] +\end{equation} +D'où : +\begin{equation} + \begin{aligned} + \ddot{\Delta d} &=-\left(\frac{C_{d}}{M_{c}}+\frac{1}{\epsilon_{d}}\right) \Delta d+\frac{\dot{D}_{c}}{\epsilon_{d}}+\frac{m g}{M_{c}} \Delta \theta \\ + \ddot{\Delta r} &=-\left(\frac{C_{r}}{J+m b^{2}}+\frac{1}{\epsilon_{r}}\right) \Delta r+\frac{\dot{R}_{c}}{\epsilon_{r}} \\ + \text { On peut poser } \tau_{d} &=\frac{1}{\frac{C_{d}}{M_{c}}+\frac{1}{\epsilon_{d}}} \\ + \text { et } \tau_{r} &=\frac{1}{\frac{C_{r}}{J+m b^{2}}+\frac{1}{\epsilon_{r}}} + \end{aligned} +\end{equation} +En considérant $\epsilon_d \ll 1 $ et $\epsilon_r <<1 $ on a $\tau_d \simeq \epsilon_d$ et $\tau_r \simeq \epsilon_r$ + +\paragraph{Prépa.9} +On doit prendre $\epsilon_d$ et $\epsilon_r$ suffisamment petit devant la pulsation du sytème $\omega_0$, pour avoir une commande qui puisse compenser suffisament vite les oscillations du système. +\paragraph{Manip.9} +On réalise la commande suivante : +\begin{figure}[ht] + \centering + \includegraphics[width=0.9\textwidth]{boucleNL.png} + \caption{Élaboration de la commande pour la porsuite de trajectoire} + \label{fig:label} +\end{figure} + +\begin{figure}[ht] + \centering + \begin{subfigure}{0.5\textwidth} + \centering + \includegraphics[width=\linewidth]{traj_plan_d} + \caption{poursuite sur $d$} + \label{fig:label} + \end{subfigure}% +\begin{subfigure}{0.5\textwidth} + \centering + \includegraphics[width=\linewidth]{traj_plan_r} + \caption{Poursuite sur $r$} + \label{fig:label} +\end{subfigure} +\caption{Commande en poursuite de trajectoire} +\label{fig:pours_traj} +\end{figure} +sur la figure \ref{fig:pours_traj} on remarque que la poursuite est plutot bien respecté pour $d$, mais celle sur $r$ conduit à un écart final non nul. +\paragraph{Manip.10} + + +\paragraph{Manip.11} +\paragraph{Manip.12} +\paragraph{Manip.13} + +\subsection{Platitude} +\paragraph{Prépa.10} +Pour montrer que le systeme est plat, ayant pour sortie plates $(x, z),$ il faut montrer que les états,$d, r, \theta$ et les commandes $F, C$ ne dépendent que des sorties $x, z$ et de leurs derivées. +\begin{equation} + \left\{ + \begin{aligned} + x &=r \sin \theta+d \\ + m \ddot{x} &=-T \sin \theta + \end{aligned} + \right. \Rightarrow d=x+r \frac{m \ddot{x}}{T} +\end{equation} + +Or on a: +\begin{equation} + \begin{cases} + m \ddot{x}=-T \sin \theta \\ + m \ddot{z}=-T \cos \theta+m g + \end{cases} \Rightarrow T=m \sqrt{\ddot{x}^{2}+(g-\ddot{z})^{2}} +\end{equation} +\begin{equation} + \begin{cases} + x=r \sin \theta+d \\ + z=r \cos \theta + \end{cases} \Rightarrow r^{2}=(x-d)^{2}+z^{2} +\end{equation} +Soit : +\begin{equation} + \begin{cases} + x-d &=-r \frac{m \ddot{x}}{T} \\ + r^{2} &=(x-d)^{2}+z^{2} + \end{cases} \Rightarrow r^{2}=\frac{z^{2}}{1-\frac{\ddot{x}^{2}}{\vec{x}^{2}+(g-\ddot{z})^{2}}} +\end{equation} + +Or $\theta = \arccos{\frac{z}{r}}$ on a donc : + +\begin{equation} +r=\sqrt{\frac{z^{2}}{1-\frac{\ddot{x}^{2}}{\ddot{x}^{2}+(g-\ddot{z})^{2}}},}, d=x+\sqrt{\frac{z^{2}}{(g-\ddot{z})^{2}}} \ddot{x}, \quad \text { et } \theta=\arccos \sqrt{1-\frac{\ddot{x}^{2}}{\ddot{x}^{2}+(g-\ddot{z})^{2}}} +\end{equation} +Les variables d'états de dépendent donc que des sorties et de leurs dérivées, de même pour la commande +\begin{equation} + \begin{aligned} + C &=b T-C_{r} \frac{\dot{r}}{b}-J \frac{\ddot{r}}{b} \\ + F &=M_{c} \ddot{d}-T \sin \theta+C_{d} \dot{d} + \end{aligned} +\end{equation} +Le système est plat ,avec le sorties plates $x,z$ +\paragraph{Prépa.11} +Les conditions imposées sont : +\begin{equation} + \begin{cases} + d(t=0) = D_{ini} \\ + r(t=0) = R_{ini} \\ + \theta(t=0) = 0 + \end{cases} \quad\text{ et }\quad + \begin{cases} + d(t=\Delta t ) = D_{fin} \\ + r(t=\Delta t ) = R_{fin} \\ + \theta(t=\Delta t ) = 0 + \end{cases} +\end{equation} +Ce qui se transpose aux coordonnées: +\begin{equation} + \begin{cases} + x(t=0) = D_{ini}\\ + z(t=0) = R_{ini} \\ + \end{cases} \quad\text{ et }\quad + \begin{cases} + x(t=\Delta t) = D_{fin}\\ + z(t=\Delta t) = R_{fin} \\ + \end{cases} +\end{equation} + +On pose donc : +\begin{equation} + \begin{aligned} + x_{c}(t) &=(1-\alpha(t)) D_{i n i}+\alpha(t) D_{f i n} \\ + z_{c}(t) &=(1-\alpha(t)) R_{i n i}+\alpha(t) R_{f i n} + \end{aligned} +\end{equation} +De manière analogue à la préparation 6 on a les conditions initiales et finales sur les positions et leur dérivées: +\[ + \alpha(0) = 0 ,\quad \alpha(\Delta t) =1, \quad \forall i = 1,2,3\left. \deriv[^i\alpha(t)]{t^i}\right|_{t=0}= 0 \text{ et } \left.\deriv[^i\alpha(t)]{t^i}\right|_{t=\Delta t}= 0 +\] +Pour satisfaire les 8 conditions on choisit un polynome d'ordre 7 : +\begin{equation} + \alpha(t)=a_{7} t^{7}+a_{6} t^{6}+a_{5} t^{5}+a_{4} t^{4}+a_{3} t^{3}+a_{2} t^{2}+a_{1} t+a_{0} +\end{equation} +Les conditions initiales imposent $a_0=a_1=a_2=a_3 =0$ et les conditions finales donnent : +\begin{equation} + \begin{array}{lllllll} + \alpha(\Delta t) & =1 & a_7\Delta t^7 & + a_6 \Delta t^6 & + a_5 \Delta t^5 & + a_4 \Delta t^4 & =1 \\ + \frac{d \alpha(t)}{d t}|t=\Delta t & =0 & 7a_7\Delta t^6 & + 6a_6 \Delta t^5 & 5a_5\Delta t^4 & 4a_4 \Delta t^3 & =0 \\ + \frac{d^{2} \alpha(t)}{d t^{2}}|_{t=\Delta t} & =0 & 42a_7\Delta t^5 & +30a_6 \Delta t^4 & 20a_5 t^3 & 12a_4\Delta t^2 & =0 \\ + \frac{d^{3} \alpha(t)}{d t^{3}} |_{t=0} & t=\Delta & 210a_z\Delta t^4 & +120a_6\Delta t^3 & 60a_5 \Delta t^2 & 24a_4\Delta t & =0 + \end{array} +\end{equation} +On a donc : +\begin{equation} + a_{7}=\frac{-20}{\Delta t^{7}}, \quad a_{6}=\frac{70}{\Delta t^{6}}, \quad a_{5}=\frac{-84}{\Delta t^{5}}, \quad a_{4}=\frac{35}{\Delta t^{4}} +\end{equation} + +\paragraph{Prépa.12} + +On impose une trajectoire parabolique ainsi,au niveau niveau de l'obstacle :$x_c=x_H \implies z_c=z_H$. On pose donc : +\[ + z_c = a(x_c-x_h)^2+z_h +\] +En évaluant cette expression à la position initiale on a: +\[ + a = \frac{R_{ini}-z_H}{(D_{ini}-x_H)^2} +\] +Pour déterminer $x_H$ on utilise la position finale et on a: + +\begin{equation} + x_{H}=\frac{D_{i n i}+\sqrt{\frac{R_{i n i}-z_{H}}{R_{i n i}-z_{H}}} D_{f i n}}% +{1+\sqrt{\frac{R_{i n i}-z_{H}}{R_{f i n}-z_{H}}}} +\end{equation} + + + +\end{document} + +%%% Local Variables: +%%% mode: latex +%%% TeX-master: t +%%% End: diff --git a/424-Systeme_Non_Lineaires/TP2/auto/TP2.elc b/424-Systeme_Non_Lineaires/TP2/auto/TP2.elc new file mode 100644 index 0000000..c2f3e49 Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/auto/TP2.elc differ diff --git a/424-Systeme_Non_Lineaires/TP2/bouclageLNL.png b/424-Systeme_Non_Lineaires/TP2/bouclageLNL.png new file mode 100644 index 0000000..1575547 Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/bouclageLNL.png differ diff --git a/424-Systeme_Non_Lineaires/TP2/bouclage_modele_L b/424-Systeme_Non_Lineaires/TP2/bouclage_modele_L new file mode 100644 index 0000000..a0bebed Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/bouclage_modele_L differ diff --git a/424-Systeme_Non_Lineaires/TP2/bouclage_modele_L.png b/424-Systeme_Non_Lineaires/TP2/bouclage_modele_L.png new file mode 100644 index 0000000..a0bebed Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/bouclage_modele_L.png differ diff --git a/424-Systeme_Non_Lineaires/TP2/boucleNL.png b/424-Systeme_Non_Lineaires/TP2/boucleNL.png new file mode 100644 index 0000000..8e28c15 Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/boucleNL.png differ diff --git a/424-Systeme_Non_Lineaires/TP2/manip6_20.fig b/424-Systeme_Non_Lineaires/TP2/manip6_20.fig new file mode 100644 index 0000000..f087e5f Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/manip6_20.fig differ diff --git a/424-Systeme_Non_Lineaires/TP2/manip6_20.png b/424-Systeme_Non_Lineaires/TP2/manip6_20.png new file mode 100644 index 0000000..f89d73a Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/manip6_20.png differ diff --git a/424-Systeme_Non_Lineaires/TP2/manip_5_bode.fig b/424-Systeme_Non_Lineaires/TP2/manip_5_bode.fig new file mode 100644 index 0000000..4067439 Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/manip_5_bode.fig differ diff --git a/424-Systeme_Non_Lineaires/TP2/manip_5_bode.png b/424-Systeme_Non_Lineaires/TP2/manip_5_bode.png new file mode 100644 index 0000000..3cb9c94 Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/manip_5_bode.png differ diff --git a/424-Systeme_Non_Lineaires/TP2/manip_5marge.fig b/424-Systeme_Non_Lineaires/TP2/manip_5marge.fig new file mode 100644 index 0000000..d5f5d27 Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/manip_5marge.fig differ diff --git a/424-Systeme_Non_Lineaires/TP2/manip_5marge.png b/424-Systeme_Non_Lineaires/TP2/manip_5marge.png new file mode 100644 index 0000000..40e15e3 Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/manip_5marge.png differ diff --git a/424-Systeme_Non_Lineaires/TP2/output_bouclage_lin.fig b/424-Systeme_Non_Lineaires/TP2/output_bouclage_lin.fig new file mode 100644 index 0000000..133faac Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/output_bouclage_lin.fig differ diff --git a/424-Systeme_Non_Lineaires/TP2/slprj/sim/varcache/Grue_L/checksumOfCache.mat b/424-Systeme_Non_Lineaires/TP2/slprj/sim/varcache/Grue_L/checksumOfCache.mat new file mode 100644 index 0000000..f92c551 Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/slprj/sim/varcache/Grue_L/checksumOfCache.mat differ diff --git a/424-Systeme_Non_Lineaires/TP2/slprj/sim/varcache/Grue_L/tmwinternal/simulink_cache.xml b/424-Systeme_Non_Lineaires/TP2/slprj/sim/varcache/Grue_L/tmwinternal/simulink_cache.xml new file mode 100644 index 0000000..76645da --- /dev/null +++ b/424-Systeme_Non_Lineaires/TP2/slprj/sim/varcache/Grue_L/tmwinternal/simulink_cache.xml @@ -0,0 +1,6 @@ + + + + YrPnK1+qVi+dpkugiky1xg== + + \ No newline at end of file diff --git a/424-Systeme_Non_Lineaires/TP2/slprj/sim/varcache/Grue_L/varInfo.mat b/424-Systeme_Non_Lineaires/TP2/slprj/sim/varcache/Grue_L/varInfo.mat new file mode 100644 index 0000000..f80fd9a Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/slprj/sim/varcache/Grue_L/varInfo.mat differ diff --git a/424-Systeme_Non_Lineaires/TP2/slprj/sim/varcache/Grue_NL/checksumOfCache.mat b/424-Systeme_Non_Lineaires/TP2/slprj/sim/varcache/Grue_NL/checksumOfCache.mat new file mode 100644 index 0000000..30c2fe1 Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/slprj/sim/varcache/Grue_NL/checksumOfCache.mat differ diff --git a/424-Systeme_Non_Lineaires/TP2/slprj/sim/varcache/Grue_NL/tmwinternal/simulink_cache.xml b/424-Systeme_Non_Lineaires/TP2/slprj/sim/varcache/Grue_NL/tmwinternal/simulink_cache.xml new file mode 100644 index 0000000..40d4b8e --- /dev/null +++ b/424-Systeme_Non_Lineaires/TP2/slprj/sim/varcache/Grue_NL/tmwinternal/simulink_cache.xml @@ -0,0 +1,6 @@ + + + + LXyRdIdx04BZS3zSK92ryw== + + \ No newline at end of file diff --git a/424-Systeme_Non_Lineaires/TP2/slprj/sim/varcache/Grue_NL/varInfo.mat b/424-Systeme_Non_Lineaires/TP2/slprj/sim/varcache/Grue_NL/varInfo.mat new file mode 100644 index 0000000..9821f86 Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/slprj/sim/varcache/Grue_NL/varInfo.mat differ diff --git a/424-Systeme_Non_Lineaires/TP2/slprj/sim/varcache/Grue_NL_corrNL/checksumOfCache.mat b/424-Systeme_Non_Lineaires/TP2/slprj/sim/varcache/Grue_NL_corrNL/checksumOfCache.mat new file mode 100644 index 0000000..d43944b Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/slprj/sim/varcache/Grue_NL_corrNL/checksumOfCache.mat differ diff --git a/424-Systeme_Non_Lineaires/TP2/slprj/sim/varcache/Grue_NL_corrNL/tmwinternal/simulink_cache.xml b/424-Systeme_Non_Lineaires/TP2/slprj/sim/varcache/Grue_NL_corrNL/tmwinternal/simulink_cache.xml new file mode 100644 index 0000000..c3d741b --- /dev/null +++ b/424-Systeme_Non_Lineaires/TP2/slprj/sim/varcache/Grue_NL_corrNL/tmwinternal/simulink_cache.xml @@ -0,0 +1,6 @@ + + + + D6xWcyOKDYRnjDVQkSZhsg== + + \ No newline at end of file diff --git a/424-Systeme_Non_Lineaires/TP2/slprj/sim/varcache/Grue_NL_corrNL/varInfo.mat b/424-Systeme_Non_Lineaires/TP2/slprj/sim/varcache/Grue_NL_corrNL/varInfo.mat new file mode 100644 index 0000000..f819844 Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/slprj/sim/varcache/Grue_NL_corrNL/varInfo.mat differ diff --git a/424-Systeme_Non_Lineaires/TP2/traj_plan.fig b/424-Systeme_Non_Lineaires/TP2/traj_plan.fig new file mode 100644 index 0000000..81720f7 Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/traj_plan.fig differ diff --git a/424-Systeme_Non_Lineaires/TP2/traj_plan.png b/424-Systeme_Non_Lineaires/TP2/traj_plan.png new file mode 100644 index 0000000..8d5c789 Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/traj_plan.png differ diff --git a/424-Systeme_Non_Lineaires/TP2/traj_plan_d.png b/424-Systeme_Non_Lineaires/TP2/traj_plan_d.png new file mode 100644 index 0000000..b785450 Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/traj_plan_d.png differ diff --git a/424-Systeme_Non_Lineaires/TP2/traj_plan_r.png b/424-Systeme_Non_Lineaires/TP2/traj_plan_r.png new file mode 100644 index 0000000..02c1e47 Binary files /dev/null and b/424-Systeme_Non_Lineaires/TP2/traj_plan_r.png differ