# $Revision: 1.5.2.4 $
Model {
  Name			  "narmamaglev"
  Version		  6.3
  MdlSubVersion		  0
  GraphicalInterface {
    NumRootInports	    0
    NumRootOutports	    0
    ParameterArgumentNames  ""
    ComputedModelVersion    "1.210"
    NumModelReferences	    0
    NumTestPointedSignals   0
  }
  SavedCharacterEncoding  "windows-1252"
  SaveDefaultBlockParams  on
  SampleTimeColors	  off
  LibraryLinkDisplay	  "none"
  WideLines		  off
  ShowLineDimensions	  off
  ShowPortDataTypes	  off
  ShowLoopsOnError	  on
  IgnoreBidirectionalLines off
  ShowStorageClass	  off
  ShowTestPointIcons	  on
  ShowViewerIcons	  on
  SortedOrder		  off
  ExecutionContextIcon	  off
  ShowLinearizationAnnotations on
  ScopeRefreshTime	  0.035000
  OverrideScopeRefreshTime on
  DisableAllScopes	  off
  DataTypeOverride	  "UseLocalSettings"
  MinMaxOverflowLogging	  "UseLocalSettings"
  MinMaxOverflowArchiveMode "Overwrite"
  BlockNameDataTip	  off
  BlockParametersDataTip  off
  BlockDescriptionStringDataTip	off
  ToolBar		  on
  StatusBar		  on
  BrowserShowLibraryLinks off
  BrowserLookUnderMasks	  off
  Created		  "Fri Oct 16 21:07:47 1998"
  Creator		  "munlock -all d:\\work\\myr12\\toolbox\\fuzzy\\fuzzy"
"\\mfedit.m"
  UpdateHistory		  "UpdateHistoryNever"
  ModifiedByFormat	  "%<Auto>"
  LastModifiedBy	  "mbharadw"
  ModifiedDateFormat	  "%<Auto>"
  LastModifiedDate	  "Wed Nov 09 17:32:28 2005"
  ModelVersionFormat	  "1.%<AutoIncrement:210>"
  ConfigurationManager	  "none"
  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
  covSaveCumulativeToWorkspaceVar on
  CovSaveSingleToWorkspaceVar on
  CovCumulativeVarName	  "covCumulativeData"
  CovCumulativeReport	  off
  CovReportOnPause	  on
  ExtModeBatchMode	  off
  ExtModeEnableFloating	  on
  ExtModeTrigType	  "manual"
  ExtModeTrigMode	  "oneshot"
  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	  off
  ExtModeSkipDownloadWhenConnect off
  ExtModeLogAll		  on
  ExtModeAutoUpdateStatusClock on
  TunableVars		  "prueba"
  TunableVarsStorageClass "Auto"
  BufferReuse		  on
  StrictBusMsg		  "None"
  ProdHWDeviceType	  "32-bit Generic"
  ShowModelReferenceBlockVersion off
  ShowModelReferenceBlockIO off
  Array {
    Type		    "Handle"
    Dimension		    1
    Simulink.ConfigSet {
      $ObjectID		      1
      Version		      "1.1.0"
      Array {
	Type			"Handle"
	Dimension		7
	Simulink.SolverCC {
	  $ObjectID		  2
	  Version		  "1.1.0"
	  StartTime		  "0.0"
	  StopTime		  "30"
	  AbsTol		  "1e-6"
	  FixedStep		  "auto"
	  InitialStep		  "auto"
	  MaxNumMinSteps	  "-1"
	  MaxOrder		  5
	  ConsecutiveZCsStepRelTol "10*128*eps"
	  MaxConsecutiveZCs	  "1000"
	  ExtrapolationOrder	  4
	  NumberNewtonIterations  1
	  MaxStep		  "auto"
	  MinStep		  "auto"
	  MaxConsecutiveMinStep	  "1"
	  RelTol		  "1e-3"
	  SolverMode		  "SingleTasking"
	  Solver		  "ode45"
	  SolverName		  "ode45"
	  ZeroCrossControl	  "UseLocalSettings"
	  AlgebraicLoopSolver	  "TrustRegion"
	  SolverResetMethod	  "Fast"
	  PositivePriorityOrder	  off
	  AutoInsertRateTranBlk	  off
	  SampleTimeConstraint	  "Unconstrained"
	  RateTranMode		  "Deterministic"
	}
	Simulink.DataIOCC {
	  $ObjectID		  3
	  Version		  "1.1.0"
	  Decimation		  "1"
	  ExternalInput		  "[t, u]"
	  FinalStateName	  "xFinal"
	  InitialState		  "xInitial"
	  LimitDataPoints	  off
	  MaxDataPoints		  "1000"
	  LoadExternalInput	  off
	  LoadInitialState	  off
	  SaveFinalState	  off
	  SaveFormat		  "Array"
	  SaveOutput		  off
	  SaveState		  off
	  SignalLogging		  on
	  InspectSignalLogs	  off
	  SaveTime		  on
	  StateSaveName		  "xout"
	  TimeSaveName		  "tout"
	  OutputSaveName	  "yout"
	  SignalLoggingName	  "sigsOut"
	  OutputOption		  "RefineOutputTimes"
	  OutputTimes		  "[]"
	  Refine		  "1"
	}
	Simulink.OptimizationCC {
	  $ObjectID		  4
	  Version		  "1.1.0"
	  BlockReduction	  on
	  BooleanDataType	  off
	  ConditionallyExecuteInputs on
	  InlineParams		  off
	  InlineInvariantSignals  off
	  OptimizeBlockIOStorage  on
	  BufferReuse		  on
	  EnforceIntegerDowncast  on
	  ExpressionFolding	  on
	  FoldNonRolledExpr	  on
	  LocalBlockOutputs	  on
	  ParameterPooling	  on
	  RollThreshold		  5
	  SystemCodeInlineAuto	  off
	  StateBitsets		  off
	  DataBitsets		  off
	  UseTempVars		  off
	  ZeroExternalMemoryAtStartup on
	  ZeroInternalMemoryAtStartup on
	  InitFltsAndDblsToZero	  on
	  NoFixptDivByZeroProtection off
	  EfficientFloat2IntCast  off
	  OptimizeModelRefInitCode off
	  LifeSpan		  "inf"
	  BufferReusableBoundary  on
	}
	Simulink.DebuggingCC {
	  $ObjectID		  5
	  Version		  "1.1.0"
	  RTPrefix		  "error"
	  ConsistencyChecking	  "none"
	  ArrayBoundsChecking	  "none"
	  SignalInfNanChecking	  "none"
	  ReadBeforeWriteMsg	  "UseLocalSettings"
	  WriteAfterWriteMsg	  "UseLocalSettings"
	  WriteAfterReadMsg	  "UseLocalSettings"
	  AlgebraicLoopMsg	  "warning"
	  ArtificialAlgebraicLoopMsg "warning"
	  CheckSSInitialOutputMsg on
	  CheckExecutionContextPreStartOutputMsg off
	  CheckExecutionContextRuntimeOutputMsg	off
	  SignalResolutionControl "TryResolveAllWithWarning"
	  BlockPriorityViolationMsg "warning"
	  MinStepSizeMsg	  "warning"
	  MaxConsecutiveZCsMsg	  "error"
	  SolverPrmCheckMsg	  "none"
	  InheritedTsInSrcMsg	  "warning"
	  DiscreteInheritContinuousMsg "warning"
	  MultiTaskDSMMsg	  "warning"
	  MultiTaskRateTransMsg	  "error"
	  SingleTaskRateTransMsg  "none"
	  TasksWithSamePriorityMsg "warning"
	  SigSpecEnsureSampleTimeMsg "warning"
	  CheckMatrixSingularityMsg "none"
	  IntegerOverflowMsg	  "warning"
	  Int32ToFloatConvMsg	  "warning"
	  ParameterDowncastMsg	  "error"
	  ParameterOverflowMsg	  "error"
	  ParameterUnderflowMsg	  "none"
	  ParameterPrecisionLossMsg "warning"
	  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"
	  ModelReferenceSimTargetVerbose off
	  UnknownTsInhSupMsg	  "warning"
	  ModelReferenceDataLoggingMessage "warning"
	  ModelReferenceSymbolNameMessage "warning"
	  ModelReferenceExtraNoncontSigs "error"
	}
	Simulink.HardwareCC {
	  $ObjectID		  6
	  Version		  "1.1.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		  on
	  ProdEqTarget		  on
	}
	Simulink.ModelReferenceCC {
	  $ObjectID		  7
	  Version		  "1.1.0"
	  UpdateModelReferenceTargets "IfOutOfDateOrStructuralChange"
	  CheckModelReferenceTargetMessage "error"
	  ModelReferenceNumInstancesAllowed "Multi"
	  ModelReferencePassRootInputsByReference on
	  ModelReferenceMinAlgLoopOccurrences off
	}
	Simulink.RTWCC {
	  $BackupClass		  "Simulink.RTWCC"
	  $ObjectID		  8
	  Version		  "1.1.0"
	  SystemTargetFile	  "grt.tlc"
	  GenCodeOnly		  off
	  MakeCommand		  "make_rtw"
	  TemplateMakefile	  "grt_vc.tmf"
	  GenerateReport	  off
	  SaveLog		  off
	  RTWVerbose		  on
	  RetainRTWFile		  off
	  ProfileTLC		  off
	  TLCDebug		  off
	  TLCCoverage		  off
	  TLCAssert		  off
	  ProcessScriptMode	  "Default"
	  ConfigurationMode	  "Optimized"
	  ConfigAtBuild		  off
	  IncludeHyperlinkInReport off
	  LaunchReport		  off
	  TargetLang		  "C"
	  Array {
	    Type		    "Handle"
	    Dimension		    2
	    Simulink.CodeAppCC {
	      $ObjectID		      9
	      Version		      "1.1.0"
	      ForceParamTrailComments off
	      GenerateComments	      on
	      IgnoreCustomStorageClasses on
	      IncHierarchyInIds	      off
	      MaxIdLength	      31
	      PreserveName	      off
	      PreserveNameWithParent  off
	      ShowEliminatedStatement off
	      IncAutoGenComments      off
	      SimulinkDataObjDesc     off
	      SFDataObjDesc	      off
	      IncDataTypeInIds	      off
	      PrefixModelToSubsysFcnNames on
	      CustomSymbolStr	      "$R$N$M"
	      MangleLength	      1
	      DefineNamingRule	      "None"
	      ParamNamingRule	      "None"
	      SignalNamingRule	      "None"
	      InsertBlockDesc	      off
	      SimulinkBlockComments   on
	      EnableCustomComments    off
	      InlinedPrmAccess	      "Literals"
	      ReqsInCode	      off
	    }
	    Simulink.GRTTargetCC {
	      $BackupClass	      "Simulink.TargetCC"
	      $ObjectID		      10
	      Version		      "1.1.0"
	      TargetFcnLib	      "ansi_tfl_tmw.mat"
	      TargetLibSuffix	      ""
	      TargetPreCompLibLocation ""
	      GenFloatMathFcnCalls    "ANSI_C"
	      UtilityFuncGeneration   "Auto"
	      GenerateFullHeader      on
	      GenerateSampleERTMain   off
	      IsPILTarget	      off
	      ModelReferenceCompliant on
	      IncludeMdlTerminateFcn  on
	      CombineOutputUpdateFcns off
	      SuppressErrorStatus     off
	      IncludeFileDelimiter    "Auto"
	      ERTCustomFileBanners    off
	      SupportAbsoluteTime     on
	      LogVarNameModifier      "rt_"
	      MatFileLogging	      on
	      MultiInstanceERTCode    off
	      SupportNonFinite	      on
	      SupportComplex	      on
	      PurelyIntegerCode	      off
	      SupportContinuousTime   on
	      SupportNonInlinedSFcns  on
	      ExtMode		      off
	      ExtModeStaticAlloc      off
	      ExtModeTesting	      off
	      ExtModeStaticAllocSize  1000000
	      ExtModeTransport	      0
	      ExtModeMexFile	      "ext_comm"
	      RTWCAPISignals	      off
	      RTWCAPIParams	      off
	      RTWCAPIStates	      off
	      GenerateASAP2	      off
	    }
	    PropName		    "Components"
	  }
	}
	PropName		"Components"
      }
      Name		      "Configuration"
      SimulationMode	      "normal"
      CurrentDlgPage	      "Solver"
    }
    PropName		    "ConfigurationSets"
  }
  Simulink.ConfigSet {
    $PropName		    "ActiveConfigurationSet"
    $ObjectID		    1
  }
  BlockDefaults {
    Orientation		    "right"
    ForegroundColor	    "black"
    BackgroundColor	    "white"
    DropShadow		    off
    NamePlacement	    "normal"
    FontName		    "Helvetica"
    FontSize		    10
    FontWeight		    "normal"
    FontAngle		    "normal"
    ShowName		    on
  }
  BlockParameterDefaults {
    Block {
      BlockType		      Clock
      DisplayTime	      off
    }
    Block {
      BlockType		      Constant
      Value		      "1"
      VectorParams1D	      on
      SamplingMode	      "Sample based"
      OutDataTypeMode	      "Inherit from 'Constant value'"
      OutDataType	      "sfix(16)"
      ConRadixGroup	      "Use specified scaling"
      OutScaling	      "2^0"
      SampleTime	      "inf"
      FramePeriod	      "inf"
    }
    Block {
      BlockType		      DiscreteStateSpace
      A			      "1"
      B			      "1"
      C			      "1"
      D			      "1"
      X0		      "0"
      SampleTime	      "1"
      StateMustResolveToSignalObject off
      RTWStateStorageClass    "Auto"
      Realization	      "auto"
    }
    Block {
      BlockType		      Fcn
      Expr		      "sin(u[1])"
      SampleTime	      "-1"
    }
    Block {
      BlockType		      Gain
      Gain		      "1"
      Multiplication	      "Element-wise(K.*u)"
      ParameterDataTypeMode   "Same as input"
      ParameterDataType	      "sfix(16)"
      ParameterScalingMode    "Best Precision: Matrix-wise"
      ParameterScaling	      "2^0"
      OutDataTypeMode	      "Same as input"
      OutDataType	      "sfix(16)"
      OutScaling	      "2^0"
      LockScale		      off
      RndMeth		      "Floor"
      SaturateOnIntegerOverflow	on
      SampleTime	      "-1"
    }
    Block {
      BlockType		      Inport
      Port		      "1"
      UseBusObject	      off
      BusObject		      "BusObject"
      BusOutputAsStruct	      off
      PortDimensions	      "-1"
      SampleTime	      "-1"
      DataType		      "auto"
      OutDataType	      "sfix(16)"
      OutScaling	      "2^0"
      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
    }
    Block {
      BlockType		      Math
      Operator		      "exp"
      OutputSignalType	      "auto"
      SampleTime	      "-1"
      OutDataTypeMode	      "Same as first input"
      OutDataType	      "sfix(16)"
      OutScaling	      "2^0"
      LockScale		      off
      RndMeth		      "Floor"
      SaturateOnIntegerOverflow	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"
      SampleTime	      "-1"
      DataType		      "auto"
      OutDataType	      "sfix(16)"
      OutScaling	      "2^0"
      SignalType	      "auto"
      SamplingMode	      "auto"
      OutputWhenDisabled      "held"
      InitialOutput	      "[]"
    }
    Block {
      BlockType		      Product
      Inputs		      "2"
      Multiplication	      "Element-wise(.*)"
      InputSameDT	      on
      OutDataTypeMode	      "Same as first input"
      OutDataType	      "sfix(16)"
      OutScaling	      "2^0"
      LockScale		      off
      RndMeth		      "Zero"
      SaturateOnIntegerOverflow	on
      SampleTime	      "-1"
    }
    Block {
      BlockType		      Saturate
      UpperLimit	      "0.5"
      LowerLimit	      "-0.5"
      LinearizeAsGain	      on
      ZeroCross		      on
      SampleTime	      "-1"
    }
    Block {
      BlockType		      "S-Function"
      FunctionName	      "system"
      SFunctionModules	      "''"
      PortCounts	      "[]"
    }
    Block {
      BlockType		      Signum
      ZeroCross		      on
      SampleTime	      "-1"
    }
    Block {
      BlockType		      SubSystem
      ShowPortLabels	      on
      Permissions	      "ReadWrite"
      PermitHierarchicalResolution "All"
      SystemSampleTime	      "-1"
      RTWFcnNameOpts	      "Auto"
      RTWFileNameOpts	      "Auto"
      SimViewingDevice	      off
      DataTypeOverride	      "UseLocalSettings"
      MinMaxOverflowLogging   "UseLocalSettings"
    }
    Block {
      BlockType		      Sum
      IconShape		      "rectangular"
      Inputs		      "++"
      InputSameDT	      on
      OutDataTypeMode	      "Same as first input"
      OutDataType	      "sfix(16)"
      OutScaling	      "2^0"
      LockScale		      off
      RndMeth		      "Floor"
      SaturateOnIntegerOverflow	on
      SampleTime	      "-1"
    }
    Block {
      BlockType		      Switch
      Criteria		      "u2 >= Threshold"
      Threshold		      "0"
      InputSameDT	      on
      OutDataTypeMode	      "Inherit via internal rule"
      RndMeth		      "Floor"
      SaturateOnIntegerOverflow	on
      ZeroCross		      on
      SampleTime	      "-1"
    }
    Block {
      BlockType		      UniformRandomNumber
      Minimum		      "-1"
      Maximum		      "1"
      Seed		      "0"
      SampleTime	      "-1"
      VectorParams1D	      on
    }
    Block {
      BlockType		      UnitDelay
      X0		      "0"
      SampleTime	      "1"
      StateMustResolveToSignalObject off
      RTWStateStorageClass    "Auto"
    }
    Block {
      BlockType		      ZeroOrderHold
      SampleTime	      "1"
    }
  }
  AnnotationDefaults {
    HorizontalAlignment	    "center"
    VerticalAlignment	    "middle"
    ForegroundColor	    "black"
    BackgroundColor	    "white"
    DropShadow		    off
    FontName		    "Helvetica"
    FontSize		    10
    FontWeight		    "normal"
    FontAngle		    "normal"
  }
  LineDefaults {
    FontName		    "Helvetica"
    FontSize		    9
    FontWeight		    "normal"
    FontAngle		    "normal"
  }
  System {
    Name		    "narmamaglev"
    Location		    [139, 115, 900, 415]
    Open		    on
    ModelBrowserVisibility  off
    ModelBrowserWidth	    200
    ScreenColor		    "white"
    PaperOrientation	    "landscape"
    PaperPositionMode	    "auto"
    PaperType		    "usletter"
    PaperUnits		    "inches"
    ZoomFactor		    "100"
    ReportName		    "simulink-default.rpt"
    Block {
      BlockType		      Clock
      Name		      "Clock"
      Position		      [620, 45, 640, 65]
      Decimation	      "10"
    }
    Block {
      BlockType		      SubSystem
      Name		      "More Info"
      Ports		      []
      Position		      [410, 225, 437, 250]
      DropShadow	      on
      ShowName		      off
      TreatAsAtomicUnit	      off
      MinAlgLoopOccurrences   off
      RTWSystemCode	      "Auto"
      MaskHideContents	      off
      MaskDisplay	      "disp('?')"
      MaskIconFrame	      on
      MaskIconOpaque	      on
      MaskIconRotate	      "none"
      MaskIconUnits	      "autoscale"
      System {
	Name			"More Info"
	Location		[617, 380, 965, 563]
	Open			off
	ModelBrowserVisibility	off
	ModelBrowserWidth	200
	ScreenColor		"white"
	PaperOrientation	"landscape"
	PaperPositionMode	"auto"
	PaperType		"usletter"
	PaperUnits		"inches"
	ZoomFactor		"100"
	Annotation {
	  Name			  "This system simulates NARMA-L2 control\nof "
"a magnet suspended by an electromagnet."
	  Position		  [162, 22]
	  UseDisplayTextAsClickCallback	off
	}
	Annotation {
	  Name			  "Double-click on the NARMA-L2 Controller blo"
"ck\nto train the neural network controller and plant model."
	  Position		  [162, 67]
	  UseDisplayTextAsClickCallback	off
	}
	Annotation {
	  Name			  "For more information on what the controller"
" \ndoes, look under the mask of the NARMA-L2 \nController block."
	  Position		  [162, 122]
	  UseDisplayTextAsClickCallback	off
	}
      }
    }
    Block {
      BlockType		      SubSystem
      Name		      "More Info2"
      Ports		      []
      Position		      [560, 220, 662, 271]
      DropShadow	      on
      ShowName		      off
      OpenFcn		      "simcad(bdroot)"
      TreatAsAtomicUnit	      off
      MinAlgLoopOccurrences   off
      RTWSystemCode	      "Auto"
      MaskHideContents	      off
      MaskDisplay	      "disp('Double click\\nhere for\\nSimulink Help')"
      MaskIconFrame	      on
      MaskIconOpaque	      on
      MaskIconRotate	      "none"
      MaskIconUnits	      "autoscale"
      System {
	Name			"More Info2"
	Location		[128, 280, 487, 453]
	Open			off
	ModelBrowserVisibility	off
	ModelBrowserWidth	200
	ScreenColor		"white"
	PaperOrientation	"landscape"
	PaperPositionMode	"auto"
	PaperType		"usletter"
	PaperUnits		"inches"
	ZoomFactor		"100"
      }
    }
    Block {
      BlockType		      SubSystem
      Name		      "NARMA-L2 Controller"
      Ports		      [2, 1]
      Position		      [215, 25, 375, 160]
      BackgroundColor	      "cyan"
      DropShadow	      on
      NamePlacement	      "alternate"
      OpenFcn		      "nncontrolutil('nnident','',gcbh,gcb,'narma_l2')"
";"
      TreatAsAtomicUnit	      off
      MinAlgLoopOccurrences   off
      RTWSystemCode	      "Auto"
      MaskHideContents	      off
      MaskType		      "NARMA-L2 Controller"
      MaskDescription	      "NARMA-L2 Controller. You first train a neural n"
"etwork model of the plant to be controlled.  The controller is a rearrangemen"
"t of the trained plant model.  Double-click the NARMA-L2 Controller block to "
"begin the plant training."
      MaskPromptString	      "Sample time|S1|Ni|Nj|sim_file|Training function"
"|Use_Validation|Use_Testing|max_i|min_i|max_i_int|min_i_int|sam_training|epoc"
"hs|minp|maxp|mint|maxt|Normalize|IW1_1|IW3_2|IW5_3|LW2_1|LW4_3|LW5_4|LW6_5|LW"
"6_2|B1|B2|B3|B4|Limit_output|min_output|max_output|Use_Previous_Weights"
      MaskStyleString	      "edit,edit,edit,edit,edit,popup(trainbfg|trainbr"
" |traincgb|traincgf|traincgp|traingd|traingdm|traingda|traingdx|trainlm |trai"
"noss|trainrp |trainscg),edit,edit,edit,edit,edit,edit,edit,edit,edit,edit,edi"
"t,edit,edit,edit,edit,edit,edit,edit,edit,edit,edit,edit,edit,edit,edit,edit,"
"edit,edit,edit"
      MaskTunableValueString  "on,on,on,on,on,on,on,on,on,on,on,on,on,on,on,on"
",on,on,on,on,on,on,on,on,on,on,on,on,on,on,on,on,on,on,on"
      MaskCallbackString      "||||||||||||||||||||||||||||||||||"
      MaskEnableString	      "on,on,on,on,on,on,on,on,on,on,on,on,on,on,on,on"
",on,on,on,on,on,on,on,on,on,on,on,on,on,on,on,on,on,on,on"
      MaskVisibilityString    "on,on,on,on,on,on,on,on,on,on,on,on,on,on,on,on"
",on,on,on,on,on,on,on,on,on,on,on,on,on,on,on,on,on,on,on"
      MaskToolTipString	      "on,on,on,on,on,on,on,on,on,on,on,on,on,on,on,on"
",on,on,on,on,on,on,on,on,on,on,on,on,on,on,on,on,on,on,on"
      MaskVarAliasString      ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,"
      MaskVariables	      "Ts=@1;S1=@2;Ni=@3;Nj=@4;sim_file=&5;trainfun=@6"
";Use_validation=@7;Use_Testing=@8;max_i=@9;min_i=@10;max_i_int=@11;min_i_int="
"@12;sam_training=@13;epochs=@14;minp=@15;maxp=@16;mint=@17;maxt=@18;Normalize"
"=@19;IW1_1=@20;IW3_2=@21;IW5_3=@22;LW2_1=@23;LW4_3=@24;LW5_4=@25;LW6_5=@26;LW"
"6_2=@27;B1=@28;B2=@29;B3=@30;B4=@31;Limit_output=@32;min_output=@33;max_outpu"
"t=@34;Use_Previous_Weights=@35;"
      MaskInitialization      "xl = [0    .4   NaN  .33  .55   .55  .33  .33  "
"NaN .80  .92 .92];\nyl = [.95 .95 NaN  .75  .75   .55  .55  .75  NaN  .95 .95"
" .65];\nx2 = [0    .43 NaN .45 .45    NaN .92 1.2 NaN .63 .85 .85 .63 .63 ];"
"\ny2 = [.39 .39 NaN  .41 .55   NaN .65 .65 NaN .75 .75  .55  .55  .75];\nx3 ="
" [.45 .45 NaN .42 .45 .48  NaN .33 .4 .33];\ny3 = [.75 .90 NaN .83 .90 .83  N"
"aN  .98 .95 .92];\nx4 = [.75 .75 NaN .72 .75 .78  NaN  .5 .7 NaN .63 .7 .63];"
"\ny4 = [.75 .90 NaN .83 .90 .83  NaN .95 .95 NaN .98 .95 .92];\nx5 = [.43 .43"
" .77 .77 .43 NaN .36 .43 .36 NaN .75 .75];\ny5 = [.37 .41 .41 .37 .37 NaN .42"
" .39 .36 NaN .41 .55];\nx6 = [.92 .92 .77 NaN .84 .77 .84];\ny6 = [.65 .39 .3"
"9 NaN .42 .39 .36];\nx1t=.03; y1t=.31;\nx2t=.03; y2t=.85;\nx8t=.03;y8t=.21;\n"
"x3t=.77; y3t=.53;\nx4t=.77; y4t=.44;\nx5t=.34; y5t=.49;\nx6t=.58; y6t=.49;\n"
"\n\nt=(0:24)/24*2*pi;\nxs = .05*cos(t);\nys = .05*sin(t);\nxs1=xs+.45;\nys1=y"
"s+.95;\nxs2=xs+.75;\nys2=ys+.95;"
      MaskDisplay	      "plot([[xl NaN x2]*.9-.075 ], [[yl  NaN y2]*.9-."
"1 ]);\nplot([[x3 NaN xs1 NaN xs2]*.9-.075 ], [[y3 NaN ys1 NaN ys2]*.9-.1 ]);"
"\nplot([x4 NaN x5]*.9-.075,[y4 NaN y5]*.9-.1);\nplot([x6 NaN ]*.9-.075,[y6 Na"
"N ]*.9-.1);\ntext(x1t,y1t,'Plant');\ntext(x8t,y8t,'Output');\ntext(x2t,y2t,'R"
"eference');\ntext(x3t,y3t,'Control');\ntext(x4t,y4t,'Signal');\ntext(x5t,y5t,"
"'f');\ntext(x6t,y6t,'g');\n"
      MaskIconFrame	      on
      MaskIconOpaque	      on
      MaskIconRotate	      "none"
      MaskIconUnits	      "normalized"
      MaskValueString	      "0.01|9|3|2|ballrepel0|trainlm |1|1|4|-1|1|0.1|1"
"0000|100|-0.98589809892637514|3.9504698574991721|-0.0016503994509919615|5.848"
"3552223055346|1|[2.8589406503354526 3.8571763260787164 2.4456184377322217 0.8"
"666607644547214;0.84908220491155217 -0.74479667271080674 0.17438611819566038 "
"-0.054598878873029347;-0.62709936825321444 -1.3691145688669635 -1.03543493213"
"63878 -2.2482593652050578;-0.61112872012274111 3.6328637614421511 -2.98192247"
"41551729 3.7430014139229799;8.2151216183173048 -0.34864518388745791 -0.638982"
"45756720395 3.2213765524683398;-0.62348046801820789 1.6654556537092802 -0.621"
"94271006861923 0.21912328150625099;0.14622178875562497 0.092672072012439946 -"
"2.0000544306046777 -1.7404534095664805;-0.016488785105071693 0.16978381724998"
"215 -0.084822329865259866 0.026867941830282197;1.9174811964991516 -1.69491959"
"23894798 0.35217636039029204 -0.12168945961699514]|[2.0947814145837365 4.1399"
"235297823935 0.45973664424051686 1.4201813933844121;-0.86879079197788289 -0.9"
"1114493693130993 -1.7736957440317072 -1.8251383343645129;-1.5220230282736409 "
"-1.9645557493380605 -0.13454356275803814 0.69198422228505774;1.10492075650723"
"56 1.1058960542907463 -1.644921307204396 -0.10202375847256849;1.7626417259934"
"55 0.12377706028660714 -0.7437018195796895 1.3293490471370206;1.3902743881456"
"05 1.2487181342609894 0.59892762333675664 1.8687582044711111;-1.2477149308688"
"809 -0.79236132307758722 0.36202987325836317 -2.3538403428029064;-1.795434452"
"809733 0.33077476751858431 1.195152886823688 -0.75536654530187719;1.595894492"
"3973373 -0.67233970442189994 2.0385698345589716 1.2983707063666041]|-0.861302"
"22828051506|[0.00015172623864271055 2.2013108252986395 -0.0004194379342446681"
"1 -0.0003479657571070474 -4.886121844237561e-005 0.048716164660783372 0.00018"
"521862399574861 4.7909859890519924 0.47215204119265081]|[1.1881559217746376 1"
".4377070715786655 -0.90278040876764909 -2.3370997753198059 -0.097223533841072"
"435 -0.63741922080667701 -2.7337228147947257 3.0132329690414466 2.17298689321"
"732]|0.599679883882549|0.00053164383570330738|1.015263173451765|[-2.050920521"
"9588469;-0.31031398693333401;-1.4045705779285507;0.015391387074643211;-3.2845"
"781323270051;1.1180253626502208;2.2612148765562523;-0.13759375641734173;1.101"
"0317884774456]|0.89897272661230299|[-1.002095836800059;-1.126799288887316;1.0"
"075534076876089;3.6052646447174865;-0.024716746631406297;1.2795222700572257;-"
"2.288460695586839;-3.073994760224549;1.7909749466641665]|0.8642380934413868|1"
"|0|Inf|1"
      MaskTabNameString	      ",,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,"
      Port {
	PortNumber		1
	Name			"Current"
	RTWStorageClass		"Auto"
	DataLoggingNameMode	"SignalName"
      }
      System {
	Name			"NARMA-L2 Controller"
	Location		[13, 149, 1258, 670]
	Open			off
	ModelBrowserVisibility	off
	ModelBrowserWidth	200
	ScreenColor		"white"
	PaperOrientation	"landscape"
	PaperPositionMode	"auto"
	PaperType		"usletter"
	PaperUnits		"inches"
	ZoomFactor		"100"
	Block {
	  BlockType		  Inport
	  Name			  "Reference"
	  Position		  [505, 45, 535, 65]
	  IconDisplay		  "Port number"
	}
	Block {
	  BlockType		  Inport
	  Name			  "Plant Output"
	  Position		  [30, 62, 60, 78]
	  Port			  "2"
	  IconDisplay		  "Port number"
	}
	Block {
	  BlockType		  Constant
	  Name			  "Constant"
	  Position		  [500, 265, 520, 285]
	  Value			  "B1"
	}
	Block {
	  BlockType		  Constant
	  Name			  "Constant1"
	  Position		  [665, 275, 685, 295]
	  Value			  "B2"
	}
	Block {
	  BlockType		  Constant
	  Name			  "Constant2"
	  Position		  [105, 255, 125, 275]
	  Value			  "Normalize"
	}
	Block {
	  BlockType		  Constant
	  Name			  "Constant3"
	  Position		  [125, 130, 145, 150]
	  Value			  "Normalize"
	}
	Block {
	  BlockType		  Constant
	  Name			  "Constant4"
	  Position		  [1080, 215, 1100, 235]
	  Value			  "Normalize"
	}
	Block {
	  BlockType		  Constant
	  Name			  "Constant5"
	  Position		  [500, 385, 520, 405]
	  Value			  "B3"
	}
	Block {
	  BlockType		  Constant
	  Name			  "Constant6"
	  Position		  [665, 415, 685, 435]
	  Value			  "B4"
	}
	Block {
	  BlockType		  Constant
	  Name			  "Constant7"
	  Position		  [635, 115, 655, 135]
	  Value			  "Normalize"
	}
	Block {
	  BlockType		  DiscreteStateSpace
	  Name			  "Discrete State-Space4"
	  Position		  [350, 201, 460, 239]
	  A			  "blkdiag([zeros(1,Nj-1);eye(Nj-2,Nj-2) zeros"
"(Nj-2,1)],[zeros(1,Ni-1);eye(Ni-2,Ni-2) zeros(Ni-2,1)])"
	  B			  "blkdiag(eye(Nj-1,1),eye(Ni-1,1))"
	  C			  "blkdiag([zeros(1,Nj-1);eye(Nj-1,Nj-1)],[zer"
"os(eye(double(Ni>1)),Ni-1);eye(Ni-2,Ni-1)])"
	  D			  "blkdiag([1;zeros(Nj-1,1)],[eye(double(Ni>1)"
");zeros(Ni-2,1)])"
	  SampleTime		  "Ts"
	}
	Block {
	  BlockType		  Fcn
	  Name			  "Fcn"
	  Position		  [105, 205, 140, 235]
	  Expr			  "(u(1)-minp)*2/(maxp-minp) - 1"
	}
	Block {
	  BlockType		  Fcn
	  Name			  "Fcn1"
	  Position		  [115, 55, 150, 85]
	  Expr			  "(u(1)-mint)*2/(maxt-mint) - 1"
	}
	Block {
	  BlockType		  Fcn
	  Name			  "Fcn2"
	  Position		  [1075, 145, 1110, 175]
	  Expr			  "(u(1)+1)*(maxp-minp)/2 + minp"
	}
	Block {
	  BlockType		  Fcn
	  Name			  "Fcn3"
	  Position		  [625, 40, 660, 70]
	  Expr			  "(u(1)-mint)*2/(maxt-mint) - 1"
	}
	Block {
	  BlockType		  Gain
	  Name			  "Matrix\nGain"
	  Position		  [490, 190, 520, 220]
	  Gain			  "IW1_1"
	  Multiplication	  "Matrix(K*u)"
	}
	Block {
	  BlockType		  Gain
	  Name			  "Matrix\nGain1"
	  Position		  [495, 325, 525, 355]
	  Gain			  "IW3_2"
	  Multiplication	  "Matrix(K*u)"
	}
	Block {
	  BlockType		  Gain
	  Name			  "Matrix\nGain2"
	  Position		  [660, 200, 690, 230]
	  Gain			  "LW2_1"
	  Multiplication	  "Matrix(K*u)"
	}
	Block {
	  BlockType		  Gain
	  Name			  "Matrix\nGain3"
	  Position		  [660, 340, 690, 370]
	  Gain			  "LW4_3"
	  Multiplication	  "Matrix(K*u)"
	}
	Block {
	  BlockType		  Gain
	  Name			  "Matrix\nGain5"
	  Position		  [815, 210, 845, 240]
	  Gain			  "LW6_2"
	  Multiplication	  "Matrix(K*u)"
	}
	Block {
	  BlockType		  Gain
	  Name			  "Matrix\nGain8"
	  Position		  [840, 350, 870, 380]
	  Gain			  "LW6_5*LW5_4*IW5_3"
	  Multiplication	  "Matrix(K*u)"
	}
	Block {
	  BlockType		  Mux
	  Name			  "Mux"
	  Ports			  [2, 1]
	  Position		  [285, 193, 330, 242]
	  ShowName		  off
	  Inputs		  "2"
	  DisplayOption		  "signals"
	}
	Block {
	  BlockType		  Product
	  Name			  "Product"
	  Ports			  [2, 1]
	  Position		  [940, 207, 970, 238]
	  Inputs		  "*/"
	  RndMeth		  "Floor"
	}
	Block {
	  BlockType		  Saturate
	  Name			  "Saturation1"
	  Position		  [1235, 210, 1265, 240]
	  UpperLimit		  "max_i"
	  LowerLimit		  "min_i"
	  ZeroCross		  off
	}
	Block {
	  BlockType		  Sum
	  Name			  "Sum"
	  Ports			  [2, 1]
	  Position		  [875, 112, 905, 143]
	  Inputs		  "+-"
	}
	Block {
	  BlockType		  Switch
	  Name			  "Switch"
	  Position		  [170, 255, 200, 285]
	  Threshold		  "0.5"
	  ZeroCross		  off
	}
	Block {
	  BlockType		  Switch
	  Name			  "Switch1"
	  Position		  [180, 130, 210, 160]
	  Threshold		  "0.5"
	  ZeroCross		  off
	}
	Block {
	  BlockType		  Switch
	  Name			  "Switch2"
	  Position		  [1140, 210, 1170, 240]
	  Threshold		  "0.5"
	  ZeroCross		  off
	}
	Block {
	  BlockType		  Switch
	  Name			  "Switch3"
	  Position		  [705, 100, 735, 130]
	  Threshold		  "0.5"
	  ZeroCross		  off
	}
	Block {
	  BlockType		  UnitDelay
	  Name			  "Unit Delay4"
	  Position		  [230, 225, 260, 255]
	  SampleTime		  "Ts"
	}
	Block {
	  BlockType		  ZeroOrderHold
	  Name			  "Zero-Order\nHold"
	  Position		  [1300, 206, 1335, 244]
	  SampleTime		  "Ts"
	}
	Block {
	  BlockType		  SubSystem
	  Name			  "netsum"
	  Ports			  [2, 1]
	  Position		  [550, 194, 575, 236]
	  TreatAsAtomicUnit	  off
	  MinAlgLoopOccurrences	  off
	  RTWSystemCode		  "Auto"
	  MaskHideContents	  off
	  MaskDisplay		  "disp('+')"
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	  System {
	    Name		    "netsum"
	    Location		    [322, 87, 822, 388]
	    Open		    off
	    ModelBrowserVisibility  off
	    ModelBrowserWidth	    200
	    ScreenColor		    "white"
	    PaperOrientation	    "landscape"
	    PaperPositionMode	    "auto"
	    PaperType		    "usletter"
	    PaperUnits		    "inches"
	    ZoomFactor		    "100"
	    Block {
	      BlockType		      Inport
	      Name		      "In1"
	      Position		      [20, 50, 40, 70]
	      IconDisplay	      "Port number"
	    }
	    Block {
	      BlockType		      Inport
	      Name		      "In2"
	      Position		      [20, 90, 40, 110]
	      Port		      "2"
	      IconDisplay	      "Port number"
	    }
	    Block {
	      BlockType		      Sum
	      Name		      "netsum"
	      Ports		      [2, 1]
	      Position		      [90, 59, 115, 101]
	      Inputs		      "2"
	    }
	    Block {
	      BlockType		      Outport
	      Name		      "Out1"
	      Position		      [145, 80, 165, 100]
	      IconDisplay	      "Port number"
	    }
	    Line {
	      SrcBlock		      "In1"
	      SrcPort		      1
	      DstBlock		      "netsum"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "In2"
	      SrcPort		      1
	      DstBlock		      "netsum"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "netsum"
	      SrcPort		      1
	      DstBlock		      "Out1"
	      DstPort		      1
	    }
	  }
	}
	Block {
	  BlockType		  SubSystem
	  Name			  "netsum1"
	  Ports			  [2, 1]
	  Position		  [720, 205, 745, 240]
	  TreatAsAtomicUnit	  off
	  MinAlgLoopOccurrences	  off
	  RTWSystemCode		  "Auto"
	  MaskHideContents	  off
	  MaskDisplay		  "disp('+')"
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	  System {
	    Name		    "netsum1"
	    Location		    [320, 85, 820, 386]
	    Open		    off
	    ModelBrowserVisibility  off
	    ModelBrowserWidth	    200
	    ScreenColor		    "white"
	    PaperOrientation	    "landscape"
	    PaperPositionMode	    "auto"
	    PaperType		    "usletter"
	    PaperUnits		    "inches"
	    ZoomFactor		    "100"
	    Block {
	      BlockType		      Inport
	      Name		      "In1"
	      Position		      [20, 65, 40, 85]
	      IconDisplay	      "Port number"
	    }
	    Block {
	      BlockType		      Inport
	      Name		      "In2"
	      Position		      [20, 105, 40, 125]
	      Port		      "2"
	      IconDisplay	      "Port number"
	    }
	    Block {
	      BlockType		      Sum
	      Name		      "netsum1"
	      Ports		      [2, 1]
	      Position		      [90, 60, 115, 95]
	      Inputs		      "2"
	    }
	    Block {
	      BlockType		      Outport
	      Name		      "Out1"
	      Position		      [145, 80, 165, 100]
	      IconDisplay	      "Port number"
	    }
	    Line {
	      SrcBlock		      "In1"
	      SrcPort		      1
	      DstBlock		      "netsum1"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "In2"
	      SrcPort		      1
	      DstBlock		      "netsum1"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "netsum1"
	      SrcPort		      1
	      DstBlock		      "Out1"
	      DstPort		      1
	    }
	  }
	}
	Block {
	  BlockType		  SubSystem
	  Name			  "netsum2"
	  Ports			  [2, 1]
	  Position		  [550, 334, 575, 376]
	  TreatAsAtomicUnit	  off
	  MinAlgLoopOccurrences	  off
	  RTWSystemCode		  "Auto"
	  MaskHideContents	  off
	  MaskDisplay		  "disp('+')"
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	  System {
	    Name		    "netsum2"
	    Location		    [322, 87, 822, 388]
	    Open		    off
	    ModelBrowserVisibility  off
	    ModelBrowserWidth	    200
	    ScreenColor		    "white"
	    PaperOrientation	    "landscape"
	    PaperPositionMode	    "auto"
	    PaperType		    "usletter"
	    PaperUnits		    "inches"
	    ZoomFactor		    "100"
	    Block {
	      BlockType		      Inport
	      Name		      "In1"
	      Position		      [20, 50, 40, 70]
	      IconDisplay	      "Port number"
	    }
	    Block {
	      BlockType		      Inport
	      Name		      "In2"
	      Position		      [20, 90, 40, 110]
	      Port		      "2"
	      IconDisplay	      "Port number"
	    }
	    Block {
	      BlockType		      Sum
	      Name		      "netsum"
	      Ports		      [2, 1]
	      Position		      [90, 59, 115, 101]
	      Inputs		      "2"
	    }
	    Block {
	      BlockType		      Outport
	      Name		      "Out1"
	      Position		      [145, 80, 165, 100]
	      IconDisplay	      "Port number"
	    }
	    Line {
	      SrcBlock		      "In1"
	      SrcPort		      1
	      DstBlock		      "netsum"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "In2"
	      SrcPort		      1
	      DstBlock		      "netsum"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "netsum"
	      SrcPort		      1
	      DstBlock		      "Out1"
	      DstPort		      1
	    }
	  }
	}
	Block {
	  BlockType		  SubSystem
	  Name			  "netsum3"
	  Ports			  [2, 1]
	  Position		  [720, 345, 745, 380]
	  TreatAsAtomicUnit	  off
	  MinAlgLoopOccurrences	  off
	  RTWSystemCode		  "Auto"
	  MaskHideContents	  off
	  MaskDisplay		  "disp('+')"
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	  System {
	    Name		    "netsum3"
	    Location		    [320, 85, 820, 386]
	    Open		    off
	    ModelBrowserVisibility  off
	    ModelBrowserWidth	    200
	    ScreenColor		    "white"
	    PaperOrientation	    "landscape"
	    PaperPositionMode	    "auto"
	    PaperType		    "usletter"
	    PaperUnits		    "inches"
	    ZoomFactor		    "100"
	    Block {
	      BlockType		      Inport
	      Name		      "In1"
	      Position		      [20, 65, 40, 85]
	      IconDisplay	      "Port number"
	    }
	    Block {
	      BlockType		      Inport
	      Name		      "In2"
	      Position		      [20, 105, 40, 125]
	      Port		      "2"
	      IconDisplay	      "Port number"
	    }
	    Block {
	      BlockType		      Sum
	      Name		      "netsum1"
	      Ports		      [2, 1]
	      Position		      [90, 60, 115, 95]
	      Inputs		      "2"
	    }
	    Block {
	      BlockType		      Outport
	      Name		      "Out1"
	      Position		      [145, 80, 165, 100]
	      IconDisplay	      "Port number"
	    }
	    Line {
	      SrcBlock		      "In1"
	      SrcPort		      1
	      DstBlock		      "netsum1"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "In2"
	      SrcPort		      1
	      DstBlock		      "netsum1"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "netsum1"
	      SrcPort		      1
	      DstBlock		      "Out1"
	      DstPort		      1
	    }
	  }
	}
	Block {
	  BlockType		  SubSystem
	  Name			  "purelin"
	  Ports			  [1, 1]
	  Position		  [770, 213, 795, 237]
	  TreatAsAtomicUnit	  off
	  MinAlgLoopOccurrences	  off
	  RTWSystemCode		  "Auto"
	  MaskHideContents	  off
	  MaskDisplay		  "plot([-1 1],[0 0],[-1 1],[-1 1])"
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	  System {
	    Name		    "purelin"
	    Location		    [146, 220, 406, 302]
	    Open		    off
	    ModelBrowserVisibility  off
	    ModelBrowserWidth	    200
	    ScreenColor		    "white"
	    PaperOrientation	    "landscape"
	    PaperPositionMode	    "auto"
	    PaperType		    "usletter"
	    PaperUnits		    "inches"
	    ZoomFactor		    "100"
	    Block {
	      BlockType		      Inport
	      Name		      "n"
	      Position		      [25, 33, 55, 47]
	      IconDisplay	      "Port number"
	    }
	    Block {
	      BlockType		      Outport
	      Name		      "a"
	      Position		      [205, 33, 235, 47]
	      IconDisplay	      "Port number"
	    }
	    Line {
	      SrcBlock		      "n"
	      SrcPort		      1
	      DstBlock		      "a"
	      DstPort		      1
	    }
	  }
	}
	Block {
	  BlockType		  SubSystem
	  Name			  "purelin1"
	  Ports			  [1, 1]
	  Position		  [770, 353, 795, 377]
	  TreatAsAtomicUnit	  off
	  MinAlgLoopOccurrences	  off
	  RTWSystemCode		  "Auto"
	  MaskHideContents	  off
	  MaskDisplay		  "plot([-1 1],[0 0],[-1 1],[-1 1])"
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	  System {
	    Name		    "purelin1"
	    Location		    [144, 218, 404, 300]
	    Open		    off
	    ModelBrowserVisibility  off
	    ModelBrowserWidth	    200
	    ScreenColor		    "white"
	    PaperOrientation	    "landscape"
	    PaperPositionMode	    "auto"
	    PaperType		    "usletter"
	    PaperUnits		    "inches"
	    ZoomFactor		    "100"
	    Block {
	      BlockType		      Inport
	      Name		      "n"
	      Position		      [25, 33, 55, 47]
	      IconDisplay	      "Port number"
	    }
	    Block {
	      BlockType		      Outport
	      Name		      "a"
	      Position		      [205, 33, 235, 47]
	      IconDisplay	      "Port number"
	    }
	    Line {
	      SrcBlock		      "n"
	      SrcPort		      1
	      DstBlock		      "a"
	      DstPort		      1
	    }
	  }
	}
	Block {
	  BlockType		  SubSystem
	  Name			  "tansig"
	  Ports			  [1, 1]
	  Position		  [600, 203, 625, 227]
	  TreatAsAtomicUnit	  off
	  MinAlgLoopOccurrences	  off
	  RTWSystemCode		  "Auto"
	  MaskHideContents	  off
	  MaskDisplay		  "plot([-1 1],[0 0],[-1 -.9 -.8 -.7 -.6 -.5 -"
".4 -.3 -.2 -.1 0 .1 .2 .3 .4 .5 .6 .7 .8 .9 1],2./(1+exp(-8*[-1 -.9 -.8 -.7 -"
".6 -.5 -.4 -.3 -.2 -.1 0 .1 .2 .3 .4 .5 .6 .7 .8 .9 1]))-1)"
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	  System {
	    Name		    "tansig"
	    Location		    [0, 38, 640, 480]
	    Open		    off
	    ModelBrowserVisibility  off
	    ModelBrowserWidth	    200
	    ScreenColor		    "white"
	    PaperOrientation	    "landscape"
	    PaperPositionMode	    "auto"
	    PaperType		    "usletter"
	    PaperUnits		    "inches"
	    ZoomFactor		    "100"
	    Block {
	      BlockType		      Inport
	      Name		      "n"
	      Position		      [25, 33, 55, 47]
	      IconDisplay	      "Port number"
	    }
	    Block {
	      BlockType		      Math
	      Name		      "Exp"
	      Ports		      [1, 1]
	      Position		      [155, 25, 185, 55]
	      MaskIconFrame	      on
	      MaskIconOpaque	      on
	      MaskIconRotate	      "none"
	      MaskIconUnits	      "autoscale"
	    }
	    Block {
	      BlockType		      Gain
	      Name		      "Gain"
	      Position		      [90, 25, 120, 55]
	      Gain		      "-2"
	    }
	    Block {
	      BlockType		      Gain
	      Name		      "Gain1"
	      Position		      [370, 30, 400, 60]
	      Gain		      "2"
	    }
	    Block {
	      BlockType		      Math
	      Name		      "Reciprocal"
	      Ports		      [1, 1]
	      Position		      [295, 30, 325, 60]
	      Operator		      "reciprocal"
	      MaskIconFrame	      on
	      MaskIconOpaque	      on
	      MaskIconRotate	      "none"
	      MaskIconUnits	      "autoscale"
	    }
	    Block {
	      BlockType		      Sum
	      Name		      "Sum"
	      Ports		      [2, 1]
	      Position		      [225, 27, 255, 58]
	    }
	    Block {
	      BlockType		      Sum
	      Name		      "Sum1"
	      Ports		      [2, 1]
	      Position		      [445, 27, 475, 58]
	      Inputs		      "+-"
	    }
	    Block {
	      BlockType		      Constant
	      Name		      "one"
	      Position		      [160, 85, 180, 105]
	    }
	    Block {
	      BlockType		      Constant
	      Name		      "one1"
	      Position		      [375, 85, 395, 105]
	    }
	    Block {
	      BlockType		      Outport
	      Name		      "a"
	      Position		      [515, 38, 545, 52]
	      IconDisplay	      "Port number"
	    }
	    Line {
	      SrcBlock		      "n"
	      SrcPort		      1
	      DstBlock		      "Gain"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Gain"
	      SrcPort		      1
	      DstBlock		      "Exp"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Exp"
	      SrcPort		      1
	      Points		      [20, 0]
	      DstBlock		      "Sum"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "one"
	      SrcPort		      1
	      Points		      [25, 0]
	      DstBlock		      "Sum"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "Sum"
	      SrcPort		      1
	      DstBlock		      "Reciprocal"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Reciprocal"
	      SrcPort		      1
	      DstBlock		      "Gain1"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Gain1"
	      SrcPort		      1
	      Points		      [25, 0]
	      DstBlock		      "Sum1"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "one1"
	      SrcPort		      1
	      Points		      [30, 0]
	      DstBlock		      "Sum1"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "Sum1"
	      SrcPort		      1
	      DstBlock		      "a"
	      DstPort		      1
	    }
	  }
	}
	Block {
	  BlockType		  SubSystem
	  Name			  "tansig1"
	  Ports			  [1, 1]
	  Position		  [600, 343, 625, 367]
	  TreatAsAtomicUnit	  off
	  MinAlgLoopOccurrences	  off
	  RTWSystemCode		  "Auto"
	  MaskHideContents	  off
	  MaskDisplay		  "plot([-1 1],[0 0],[-1 -.9 -.8 -.7 -.6 -.5 -"
".4 -.3 -.2 -.1 0 .1 .2 .3 .4 .5 .6 .7 .8 .9 1],2./(1+exp(-8*[-1 -.9 -.8 -.7 -"
".6 -.5 -.4 -.3 -.2 -.1 0 .1 .2 .3 .4 .5 .6 .7 .8 .9 1]))-1)"
	  MaskIconFrame		  on
	  MaskIconOpaque	  on
	  MaskIconRotate	  "none"
	  MaskIconUnits		  "autoscale"
	  System {
	    Name		    "tansig1"
	    Location		    [0, 38, 640, 480]
	    Open		    off
	    ModelBrowserVisibility  off
	    ModelBrowserWidth	    200
	    ScreenColor		    "white"
	    PaperOrientation	    "landscape"
	    PaperPositionMode	    "auto"
	    PaperType		    "usletter"
	    PaperUnits		    "inches"
	    ZoomFactor		    "100"
	    Block {
	      BlockType		      Inport
	      Name		      "n"
	      Position		      [25, 33, 55, 47]
	      IconDisplay	      "Port number"
	    }
	    Block {
	      BlockType		      Math
	      Name		      "Exp"
	      Ports		      [1, 1]
	      Position		      [155, 25, 185, 55]
	      MaskIconFrame	      on
	      MaskIconOpaque	      on
	      MaskIconRotate	      "none"
	      MaskIconUnits	      "autoscale"
	    }
	    Block {
	      BlockType		      Gain
	      Name		      "Gain"
	      Position		      [90, 25, 120, 55]
	      Gain		      "-2"
	    }
	    Block {
	      BlockType		      Gain
	      Name		      "Gain1"
	      Position		      [370, 30, 400, 60]
	      Gain		      "2"
	    }
	    Block {
	      BlockType		      Math
	      Name		      "Reciprocal"
	      Ports		      [1, 1]
	      Position		      [295, 30, 325, 60]
	      Operator		      "reciprocal"
	      MaskIconFrame	      on
	      MaskIconOpaque	      on
	      MaskIconRotate	      "none"
	      MaskIconUnits	      "autoscale"
	    }
	    Block {
	      BlockType		      Sum
	      Name		      "Sum"
	      Ports		      [2, 1]
	      Position		      [225, 27, 255, 58]
	    }
	    Block {
	      BlockType		      Sum
	      Name		      "Sum1"
	      Ports		      [2, 1]
	      Position		      [445, 27, 475, 58]
	      Inputs		      "+-"
	    }
	    Block {
	      BlockType		      Constant
	      Name		      "one"
	      Position		      [160, 85, 180, 105]
	    }
	    Block {
	      BlockType		      Constant
	      Name		      "one1"
	      Position		      [375, 85, 395, 105]
	    }
	    Block {
	      BlockType		      Outport
	      Name		      "a"
	      Position		      [515, 38, 545, 52]
	      IconDisplay	      "Port number"
	    }
	    Line {
	      SrcBlock		      "n"
	      SrcPort		      1
	      DstBlock		      "Gain"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Gain"
	      SrcPort		      1
	      DstBlock		      "Exp"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Exp"
	      SrcPort		      1
	      Points		      [20, 0]
	      DstBlock		      "Sum"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "one"
	      SrcPort		      1
	      Points		      [25, 0]
	      DstBlock		      "Sum"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "Sum"
	      SrcPort		      1
	      DstBlock		      "Reciprocal"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Reciprocal"
	      SrcPort		      1
	      DstBlock		      "Gain1"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "Gain1"
	      SrcPort		      1
	      Points		      [25, 0]
	      DstBlock		      "Sum1"
	      DstPort		      1
	    }
	    Line {
	      SrcBlock		      "one1"
	      SrcPort		      1
	      Points		      [30, 0]
	      DstBlock		      "Sum1"
	      DstPort		      2
	    }
	    Line {
	      SrcBlock		      "Sum1"
	      SrcPort		      1
	      DstBlock		      "a"
	      DstPort		      1
	    }
	  }
	}
	Block {
	  BlockType		  Outport
	  Name			  "Control Signal"
	  Position		  [1395, 215, 1425, 235]
	  IconDisplay		  "Port number"
	}
	Line {
	  SrcBlock		  "Constant3"
	  SrcPort		  1
	  Points		  [15, 0]
	  DstBlock		  "Switch1"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "Fcn1"
	  SrcPort		  1
	  Points		  [10, 0]
	  DstBlock		  "Switch1"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Plant Output"
	  SrcPort		  1
	  Points		  [25, 0]
	  Branch {
	    DstBlock		    "Fcn1"
	    DstPort		    1
	  }
	  Branch {
	    Points		    [0, 110; 75, 0]
	    DstBlock		    "Switch1"
	    DstPort		    3
	  }
	}
	Line {
	  SrcBlock		  "netsum1"
	  SrcPort		  1
	  DstBlock		  "purelin"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Constant1"
	  SrcPort		  1
	  Points		  [10, 0; 0, -55]
	  DstBlock		  "netsum1"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "Matrix\nGain2"
	  SrcPort		  1
	  DstBlock		  "netsum1"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "netsum"
	  SrcPort		  1
	  DstBlock		  "tansig"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Constant"
	  SrcPort		  1
	  Points		  [10, 0]
	  DstBlock		  "netsum"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "tansig"
	  SrcPort		  1
	  DstBlock		  "Matrix\nGain2"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Matrix\nGain"
	  SrcPort		  1
	  DstBlock		  "netsum"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "netsum3"
	  SrcPort		  1
	  DstBlock		  "purelin1"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Constant6"
	  SrcPort		  1
	  Points		  [10, 0; 0, -55]
	  DstBlock		  "netsum3"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "Matrix\nGain3"
	  SrcPort		  1
	  DstBlock		  "netsum3"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "netsum2"
	  SrcPort		  1
	  DstBlock		  "tansig1"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Constant5"
	  SrcPort		  1
	  Points		  [10, 0]
	  DstBlock		  "netsum2"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "tansig1"
	  SrcPort		  1
	  DstBlock		  "Matrix\nGain3"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Matrix\nGain1"
	  SrcPort		  1
	  Points		  [5, 0]
	  DstBlock		  "netsum2"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "purelin"
	  SrcPort		  1
	  DstBlock		  "Matrix\nGain5"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Matrix\nGain5"
	  SrcPort		  1
	  Points		  [10, 0]
	  DstBlock		  "Sum"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "Sum"
	  SrcPort		  1
	  Points		  [10, 0; 0, 85]
	  DstBlock		  "Product"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "purelin1"
	  SrcPort		  1
	  DstBlock		  "Matrix\nGain8"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Matrix\nGain8"
	  SrcPort		  1
	  Points		  [50, 0]
	  DstBlock		  "Product"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "Constant7"
	  SrcPort		  1
	  Points		  [30, 0]
	  DstBlock		  "Switch3"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "Fcn3"
	  SrcPort		  1
	  Points		  [25, 0]
	  DstBlock		  "Switch3"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Reference"
	  SrcPort		  1
	  Points		  [60, 0]
	  Branch {
	    DstBlock		    "Fcn3"
	    DstPort		    1
	  }
	  Branch {
	    Points		    [0, 110; 90, 0]
	    DstBlock		    "Switch3"
	    DstPort		    3
	  }
	}
	Line {
	  SrcBlock		  "Switch3"
	  SrcPort		  1
	  Points		  [120, 0]
	  DstBlock		  "Sum"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Switch1"
	  SrcPort		  1
	  Points		  [45, 0; 0, 60]
	  DstBlock		  "Mux"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Mux"
	  SrcPort		  1
	  DstBlock		  "Discrete State-Space4"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Discrete State-Space4"
	  SrcPort		  1
	  Points		  [10, 0]
	  Branch {
	    DstBlock		    "Matrix\nGain"
	    DstPort		    1
	  }
	  Branch {
	    Points		    [0, 120]
	    DstBlock		    "Matrix\nGain1"
	    DstPort		    1
	  }
	}
	Line {
	  SrcBlock		  "Zero-Order\nHold"
	  SrcPort		  1
	  Points		  [0, 0; 15, 0]
	  Branch {
	    DstBlock		    "Control Signal"
	    DstPort		    1
	  }
	  Branch {
	    Points		    [0, 250; -1210, 0]
	    Branch {
	      Points		      [-105, 0; 0, -255]
	      DstBlock		      "Fcn"
	      DstPort		      1
	    }
	    Branch {
	      Points		      [0, -195]
	      DstBlock		      "Switch"
	      DstPort		      3
	    }
	  }
	}
	Line {
	  SrcBlock		  "Fcn"
	  SrcPort		  1
	  Points		  [0, 40]
	  DstBlock		  "Switch"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Constant2"
	  SrcPort		  1
	  Points		  [25, 0]
	  DstBlock		  "Switch"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "Unit Delay4"
	  SrcPort		  1
	  Points		  [5, 0]
	  DstBlock		  "Mux"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "Switch"
	  SrcPort		  1
	  Points		  [0, -30]
	  DstBlock		  "Unit Delay4"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Saturation1"
	  SrcPort		  1
	  DstBlock		  "Zero-Order\nHold"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Product"
	  SrcPort		  1
	  Points		  [55, 0]
	  Branch {
	    Points		    [0, -65]
	    DstBlock		    "Fcn2"
	    DstPort		    1
	  }
	  Branch {
	    Points		    [0, 70; 95, 0]
	    DstBlock		    "Switch2"
	    DstPort		    3
	  }
	}
	Line {
	  SrcBlock		  "Constant4"
	  SrcPort		  1
	  DstBlock		  "Switch2"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "Switch2"
	  SrcPort		  1
	  DstBlock		  "Saturation1"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Fcn2"
	  SrcPort		  1
	  Points		  [10, 0]
	  DstBlock		  "Switch2"
	  DstPort		  1
	}
      }
    }
    Block {
      BlockType		      SubSystem
      Name		      "Plant\n(Magnet Levitation)"
      Ports		      [1, 1]
      Position		      [435, 63, 550, 127]
      TreatAsAtomicUnit	      off
      MinAlgLoopOccurrences   off
      RTWSystemCode	      "Auto"
      MaskHideContents	      off
      MaskInitialization      "x1=[-2 -2 2 2 -2 NaN -2 -2 2 2 -2];\ny1=[5 4 4 "
"5 5 NaN 2 0 0 2 2];\nx2=[-2 -2 2 2 -2 NaN -2   2  NaN -2 2 NaN 2    4    NaN "
"2  4];\ny2=[4  3  3 4  4 NaN 1.5 1  NaN 1 .5 NaN 1.5 1.5 NaN .5 .5];\nx1t = -"
".5 ; y1t = 4.4;\nx2t = -.5; y2t = 3.4;\n"
      MaskDisplay	      "plot([-10],[0],[10],[5]);\nplot([x1 NaN x2],[y1"
" NaN y2]);\ntext(x1t,y1t,'N')\ntext(x2t,y2t,'S')"
      MaskIconFrame	      on
      MaskIconOpaque	      on
      MaskIconRotate	      "none"
      MaskIconUnits	      "autoscale"
      Port {
	PortNumber		1
	Name			"Position"
	RTWStorageClass		"Auto"
	DataLoggingNameMode	"SignalName"
      }
      System {
	Name			"Plant\n(Magnet Levitation)"
	Location		[177, 189, 853, 455]
	Open			off
	ModelBrowserVisibility	off
	ModelBrowserWidth	200
	ScreenColor		"white"
	PaperOrientation	"landscape"
	PaperPositionMode	"auto"
	PaperType		"usletter"
	PaperUnits		"inches"
	ZoomFactor		"100"
	Block {
	  BlockType		  Inport
	  Name			  "Current"
	  Position		  [15, 93, 45, 107]
	  IconDisplay		  "Port number"
	}
	Block {
	  BlockType		  Product
	  Name			  "Division"
	  Ports			  [3, 1]
	  Position		  [195, 94, 225, 126]
	  Inputs		  "**/"
	  RndMeth		  "Floor"
	}
	Block {
	  BlockType		  Product
	  Name			  "Division1"
	  Ports			  [2, 1]
	  Position		  [340, 52, 370, 83]
	  Inputs		  "/*"
	  RndMeth		  "Floor"
	}
	Block {
	  BlockType		  Product
	  Name			  "Division2"
	  Ports			  [2, 1]
	  Position		  [350, 137, 380, 168]
	  Inputs		  "/*"
	  RndMeth		  "Floor"
	}
	Block {
	  BlockType		  Gain
	  Name			  "Gain"
	  Position		  [250, 95, 280, 125]
	  Gain			  "15"
	}
	Block {
	  BlockType		  Constant
	  Name			  "Gravity"
	  Position		  [225, 160, 255, 190]
	  Value			  "9.8"
	}
	Block {
	  BlockType		  Integrator
	  Name			  "Position"
	  Ports			  [1, 1]
	  Position		  [540, 100, 570, 130]
	  InitialCondition	  ".5"
	  ZeroCross		  off
	}
	Block {
	  BlockType		  Signum
	  Name			  "Sign"
	  Position		  [90, 150, 120, 180]
	  ZeroCross		  off
	}
	Block {
	  BlockType		  Fcn
	  Name			  "Square Law"
	  Position		  [85, 85, 145, 115]
	  Expr			  "u^2"
	}
	Block {
	  BlockType		  Sum
	  Name			  "Sum"
	  Ports			  [3, 1]
	  Position		  [405, 93, 430, 137]
	  ShowName		  off
	  Inputs		  "|+--"
	}
	Block {
	  BlockType		  Integrator
	  Name			  "Velocity"
	  Ports			  [1, 1]
	  Position		  [470, 100, 500, 130]
	  ZeroCross		  off
	}
	Block {
	  BlockType		  Gain
	  Name			  "Viscous Friction"
	  Position		  [440, 175, 470, 205]
	  Orientation		  "left"
	  Gain			  "12"
	}
	Block {
	  BlockType		  Constant
	  Name			  "mass"
	  Position		  [235, 35, 265, 65]
	  Value			  "3"
	}
	Block {
	  BlockType		  Outport
	  Name			  "Output"
	  Position		  [620, 108, 650, 122]
	  IconDisplay		  "Port number"
	}
	Line {
	  SrcBlock		  "Square Law"
	  SrcPort		  1
	  DstBlock		  "Division"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Division"
	  SrcPort		  1
	  DstBlock		  "Gain"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Gravity"
	  SrcPort		  1
	  Points		  [35, 0; 0, -55]
	  DstBlock		  "Sum"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "Velocity"
	  SrcPort		  1
	  Points		  [5, 0]
	  Branch {
	    Points		    [0, 0]
	    DstBlock		    "Position"
	    DstPort		    1
	  }
	  Branch {
	    Points		    [0, 75]
	    DstBlock		    "Viscous Friction"
	    DstPort		    1
	  }
	}
	Line {
	  SrcBlock		  "Sum"
	  SrcPort		  1
	  DstBlock		  "Velocity"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Gain"
	  SrcPort		  1
	  Points		  [40, 0]
	  DstBlock		  "Division1"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "Division1"
	  SrcPort		  1
	  Points		  [15, 0]
	  DstBlock		  "Sum"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "mass"
	  SrcPort		  1
	  Points		  [40, 0]
	  Branch {
	    Points		    [15, 0]
	    DstBlock		    "Division1"
	    DstPort		    1
	  }
	  Branch {
	    Points		    [0, 95]
	    DstBlock		    "Division2"
	    DstPort		    1
	  }
	}
	Line {
	  SrcBlock		  "Viscous Friction"
	  SrcPort		  1
	  Points		  [-110, 0; 0, -30]
	  DstBlock		  "Division2"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "Division2"
	  SrcPort		  1
	  Points		  [5, 0]
	  DstBlock		  "Sum"
	  DstPort		  3
	}
	Line {
	  SrcBlock		  "Current"
	  SrcPort		  1
	  Points		  [10, 0]
	  Branch {
	    DstBlock		    "Square Law"
	    DstPort		    1
	  }
	  Branch {
	    Points		    [0, 65]
	    DstBlock		    "Sign"
	    DstPort		    1
	  }
	}
	Line {
	  SrcBlock		  "Position"
	  SrcPort		  1
	  Points		  [15, 0]
	  Branch {
	    DstBlock		    "Output"
	    DstPort		    1
	  }
	  Branch {
	    Points		    [0, 120; -410, 0]
	    DstBlock		    "Division"
	    DstPort		    3
	  }
	}
	Line {
	  SrcBlock		  "Sign"
	  SrcPort		  1
	  Points		  [25, 0; 0, -55]
	  DstBlock		  "Division"
	  DstPort		  2
	}
      }
    }
    Block {
      BlockType		      UniformRandomNumber
      Name		      "Random Reference"
      Position		      [45, 44, 75, 76]
      Minimum		      "0.5"
      Maximum		      "4"
      Seed		      "round(now)"
      SampleTime	      "5"
    }
    Block {
      BlockType		      SubSystem
      Name		      "X(2Y)\n Graph"
      Ports		      [3]
      Position		      [685, 72, 720, 118]
      CopyFcn		      "sfunxy2([],[],[],'CopyBlock')"
      DeleteFcn		      "sfunxy2([],[],[],'DeleteBlock')"
      LoadFcn		      "sfunxy2([],[],[],'LoadBlock')"
      StartFcn		      "sfunxy2([],[],[],'Start')"
      StopFcn		      "sfunxy2([],[],[],'Stop')"
      NameChangeFcn	      "sfunxy2([],[],[],'NameChange')"
      TreatAsAtomicUnit	      off
      MinAlgLoopOccurrences   off
      RTWSystemCode	      "Auto"
      MaskHideContents	      off
      MaskType		      "X(2Y) scope."
      MaskDescription	      "X(2Y) scope using MATLAB graph window.  First i"
"nput is used as time base.  Enter plotting ranges."
      MaskHelp		      "This block can be used to explore limit cycles."
" Look at the m-file sfunxy.m to see how it works."
      MaskPromptString	      "x-min:|x-max:|y-min:|y-max:|Sample time:"
      MaskStyleString	      "edit,edit,edit,edit,edit"
      MaskTunableValueString  "on,on,on,on,on"
      MaskCallbackString      "||||"
      MaskEnableString	      "on,on,on,on,on"
      MaskVisibilityString    "on,on,on,on,on"
      MaskToolTipString	      "on,on,on,on,on"
      MaskVarAliasString      ",,,,"
      MaskVariables	      "xmin=@1;xmax=@2;ymin=@3;ymax=@4;st=@5;"
      MaskDisplay	      "plot([.05 .95 .95 .05 .05],[.45 .45 .95 .95 .45"
"], 0.5+cos(0:0.1:2*pi)*0.3,0.7+sin(0:0.1:2*pi)*0.2)"
      MaskSelfModifiable      on
      MaskIconFrame	      on
      MaskIconOpaque	      on
      MaskIconRotate	      "none"
      MaskIconUnits	      "normalized"
      MaskValueString	      "0|5|-1|1|-1"
      MaskTabNameString	      ",,,,"
      System {
	Name			"X(2Y)\n Graph"
	Location		[82, 157, 342, 335]
	Open			off
	ModelBrowserVisibility	off
	ModelBrowserWidth	200
	ScreenColor		"white"
	PaperOrientation	"landscape"
	PaperPositionMode	"auto"
	PaperType		"usletter"
	PaperUnits		"inches"
	ZoomFactor		"100"
	Block {
	  BlockType		  Inport
	  Name			  "x"
	  Position		  [25, 27, 55, 43]
	  IconDisplay		  "Port number"
	}
	Block {
	  BlockType		  Inport
	  Name			  "y1"
	  Position		  [25, 67, 55, 83]
	  Port			  "2"
	  IconDisplay		  "Port number"
	}
	Block {
	  BlockType		  Inport
	  Name			  "y2"
	  Position		  [25, 107, 55, 123]
	  Port			  "3"
	  IconDisplay		  "Port number"
	}
	Block {
	  BlockType		  Mux
	  Name			  "Mux"
	  Ports			  [3, 1]
	  Position		  [105, 48, 135, 102]
	  ShowName		  off
	  Inputs		  "3"
	}
	Block {
	  BlockType		  "S-Function"
	  Name			  "sfunxy"
	  Ports			  [1]
	  Position		  [175, 65, 225, 85]
	  ShowName		  off
	  FunctionName		  "sfunxy2"
	  Parameters		  "[xmin xmax ymin ymax], st"
	}
	Line {
	  SrcBlock		  "y2"
	  SrcPort		  1
	  Points		  [15, 0; 0, -20]
	  DstBlock		  "Mux"
	  DstPort		  3
	}
	Line {
	  SrcBlock		  "y1"
	  SrcPort		  1
	  DstBlock		  "Mux"
	  DstPort		  2
	}
	Line {
	  SrcBlock		  "x"
	  SrcPort		  1
	  Points		  [15, 0; 0, 20]
	  DstBlock		  "Mux"
	  DstPort		  1
	}
	Line {
	  SrcBlock		  "Mux"
	  SrcPort		  1
	  DstBlock		  "sfunxy"
	  DstPort		  1
	}
      }
    }
    Line {
      SrcBlock		      "Clock"
      SrcPort		      1
      Points		      [15, 0; 0, 25]
      DstBlock		      "X(2Y)\n Graph"
      DstPort		      1
    }
    Line {
      Labels		      [1, 0]
      SrcBlock		      "Random Reference"
      SrcPort		      1
      Points		      [50, 0]
      Branch {
	Points			[0, 140; 530, 0; 0, -90]
	DstBlock		"X(2Y)\n Graph"
	DstPort			3
      }
      Branch {
	DstBlock		"NARMA-L2 Controller"
	DstPort			1
      }
    }
    Line {
      Name		      "Current"
      Labels		      [0, 0]
      SrcBlock		      "NARMA-L2 Controller"
      SrcPort		      1
      DstBlock		      "Plant\n(Magnet Levitation)"
      DstPort		      1
    }
    Line {
      Name		      "Position"
      Labels		      [0, 0]
      SrcBlock		      "Plant\n(Magnet Levitation)"
      SrcPort		      1
      Points		      [60, 0]
      Branch {
	Points			[0, 80; -445, 0; 0, -50]
	DstBlock		"NARMA-L2 Controller"
	DstPort			2
      }
      Branch {
	DstBlock		"X(2Y)\n Graph"
	DstPort			2
      }
    }
    Annotation {
      Name		      "NARMA-L2 Control of a Magnet Levitation System"
"\n(Double click on the \"?\" for more info)"
      Position		      [198, 232]
      UseDisplayTextAsClickCallback off
    }
    Annotation {
      Name		      "To start and stop the simulation, use the \"Sta"
"rt/Stop\"\nselection in the \"Simulation\" pull-down menu"
      Position		      [201, 277]
      UseDisplayTextAsClickCallback off
    }
  }
}
