pv_boost_mpp_Iref.mdl
上传用户:liuztt
上传日期:2019-06-09
资源大小:15k
文件大小:143k
开发平台:

Matlab

  1. Model {
  2.   Name   "pv_boost_mpp_Iref"
  3.   Version   7.1
  4.   MdlSubVersion   0
  5.   GraphicalInterface {
  6.     NumRootInports     0
  7.     NumRootOutports     0
  8.     ParameterArgumentNames  ""
  9.     ComputedModelVersion    "1.982"
  10.     NumModelReferences     0
  11.     NumTestPointedSignals   0
  12.   }
  13.   SavedCharacterEncoding  "windows-1252"
  14.   SaveDefaultBlockParams  on
  15.   SampleTimeColors   off
  16.   LibraryLinkDisplay   "none"
  17.   WideLines   off
  18.   ShowLineDimensions   off
  19.   ShowPortDataTypes   off
  20.   ShowLoopsOnError   on
  21.   IgnoreBidirectionalLines off
  22.   ShowStorageClass   off
  23.   ShowTestPointIcons   on
  24.   ShowSignalResolutionIcons on
  25.   ShowViewerIcons   on
  26.   SortedOrder   off
  27.   ExecutionContextIcon   off
  28.   ShowLinearizationAnnotations on
  29.   ScopeRefreshTime   0.035000
  30.   OverrideScopeRefreshTime on
  31.   DisableAllScopes   off
  32.   DataTypeOverride   "UseLocalSettings"
  33.   MinMaxOverflowLogging   "UseLocalSettings"
  34.   MinMaxOverflowArchiveMode "Overwrite"
  35.   BlockNameDataTip   off
  36.   BlockParametersDataTip  off
  37.   BlockDescriptionStringDataTip off
  38.   ToolBar   on
  39.   StatusBar   on
  40.   BrowserShowLibraryLinks off
  41.   BrowserLookUnderMasks   off
  42.   Created   "Thu Jan 03 09:08:53 2008"
  43.   Creator   "Mama"
  44.   UpdateHistory   "UpdateHistoryNever"
  45.   ModifiedByFormat   "%<Auto>"
  46.   LastModifiedBy   "Nagesh"
  47.   ModifiedDateFormat   "%<Auto>"
  48.   LastModifiedDate   "Wed Nov 04 10:29:57 2009"
  49.   RTWModifiedTimeStamp   0
  50.   ModelVersionFormat   "1.%<AutoIncrement:982>"
  51.   ConfigurationManager   "None"
  52.   SimulationMode   "normal"
  53.   LinearizationMsg   "none"
  54.   Profile   off
  55.   ParamWorkspaceSource   "MATLABWorkspace"
  56.   AccelSystemTargetFile   "accel.tlc"
  57.   AccelTemplateMakefile   "accel_default_tmf"
  58.   AccelMakeCommand   "make_rtw"
  59.   TryForcingSFcnDF   off
  60.   RecordCoverage   off
  61.   CovPath   "/"
  62.   CovSaveName   "covdata"
  63.   CovMetricSettings   "dw"
  64.   CovNameIncrementing   off
  65.   CovHtmlReporting   on
  66.   covSaveCumulativeToWorkspaceVar on
  67.   CovSaveSingleToWorkspaceVar on
  68.   CovCumulativeVarName   "covCumulativeData"
  69.   CovCumulativeReport   off
  70.   CovReportOnPause   on
  71.   CovModelRefEnable   "Off"
  72.   ExtModeBatchMode   off
  73.   ExtModeEnableFloating   on
  74.   ExtModeTrigType   "manual"
  75.   ExtModeTrigMode   "normal"
  76.   ExtModeTrigPort   "1"
  77.   ExtModeTrigElement   "any"
  78.   ExtModeTrigDuration   1000
  79.   ExtModeTrigDurationFloating "auto"
  80.   ExtModeTrigHoldOff   0
  81.   ExtModeTrigDelay   0
  82.   ExtModeTrigDirection   "rising"
  83.   ExtModeTrigLevel   0
  84.   ExtModeArchiveMode   "off"
  85.   ExtModeAutoIncOneShot   off
  86.   ExtModeIncDirWhenArm   off
  87.   ExtModeAddSuffixToVar   off
  88.   ExtModeWriteAllDataToWs off
  89.   ExtModeArmWhenConnect   on
  90.   ExtModeSkipDownloadWhenConnect off
  91.   ExtModeLogAll   on
  92.   ExtModeAutoUpdateStatusClock on
  93.   BufferReuse   on
  94.   ShowModelReferenceBlockVersion off
  95.   ShowModelReferenceBlockIO off
  96.   Array {
  97.     Type     "Handle"
  98.     Dimension     1
  99.     Simulink.ConfigSet {
  100.       $ObjectID       1
  101.       Version       "1.4.0"
  102.       Array {
  103. Type "Handle"
  104. Dimension 7
  105. Simulink.SolverCC {
  106.   $ObjectID   2
  107.   Version   "1.4.0"
  108.   StartTime   "0.0"
  109.   StopTime   "60*8"
  110.   AbsTol   "auto"
  111.   FixedStep   "auto"
  112.   InitialStep   "auto"
  113.   MaxNumMinSteps   "-1"
  114.   MaxOrder   5
  115.   ZcThreshold   "auto"
  116.   ConsecutiveZCsStepRelTol "10*128*eps"
  117.   MaxConsecutiveZCs   "1000"
  118.   ExtrapolationOrder   4
  119.   NumberNewtonIterations  1
  120.   MaxStep   "0.1"
  121.   MinStep   "auto"
  122.   MaxConsecutiveMinStep   "2"
  123.   RelTol   "1e-3"
  124.   SolverMode   "Auto"
  125.   Solver   "ode45"
  126.   SolverName   "ode45"
  127.   ShapePreserveControl   "DisableAll"
  128.   ZeroCrossControl   "UseLocalSettings"
  129.   ZeroCrossAlgorithm   "Non-adaptive"
  130.   AlgebraicLoopSolver   "TrustRegion"
  131.   SolverResetMethod   "Fast"
  132.   PositivePriorityOrder   off
  133.   AutoInsertRateTranBlk   off
  134.   SampleTimeConstraint   "Unconstrained"
  135.   InsertRTBMode   "Whenever possible"
  136. }
  137. Simulink.DataIOCC {
  138.   $ObjectID   3
  139.   Version   "1.4.0"
  140.   Decimation   "1"
  141.   ExternalInput   "[t, u]"
  142.   FinalStateName   "xFinal"
  143.   InitialState   "xInitial"
  144.   LimitDataPoints   on
  145.   MaxDataPoints   "1000"
  146.   LoadExternalInput   off
  147.   LoadInitialState   off
  148.   SaveFinalState   off
  149.   SaveFormat   "Array"
  150.   SaveOutput   on
  151.   SaveState   off
  152.   SignalLogging   on
  153.   InspectSignalLogs   off
  154.   SaveTime   on
  155.   StateSaveName   "xout"
  156.   TimeSaveName   "tout"
  157.   OutputSaveName   "yout"
  158.   SignalLoggingName   "logsout"
  159.   OutputOption   "RefineOutputTimes"
  160.   OutputTimes   "[]"
  161.   Refine   "1"
  162. }
  163. Simulink.OptimizationCC {
  164.   $ObjectID   4
  165.   Array {
  166.     Type     "Cell"
  167.     Dimension     5
  168.     Cell     "ZeroExternalMemoryAtStartup"
  169.     Cell     "ZeroInternalMemoryAtStartup"
  170.     Cell     "InitFltsAndDblsToZero"
  171.     Cell     "OptimizeModelRefInitCode"
  172.     Cell     "NoFixptDivByZeroProtection"
  173.     PropName     "DisabledProps"
  174.   }
  175.   Version   "1.4.0"
  176.   BlockReduction   on
  177.   BooleanDataType   on
  178.   ConditionallyExecuteInputs on
  179.   InlineParams   off
  180.   InlineInvariantSignals  off
  181.   OptimizeBlockIOStorage  on
  182.   BufferReuse   on
  183.   EnhancedBackFolding   off
  184.   EnforceIntegerDowncast  on
  185.   ExpressionFolding   on
  186.   ExpressionDepthLimit   2147483647
  187.   FoldNonRolledExpr   on
  188.   LocalBlockOutputs   on
  189.   RollThreshold   5
  190.   SystemCodeInlineAuto   off
  191.   StateBitsets   off
  192.   DataBitsets   off
  193.   UseTempVars   off
  194.   ZeroExternalMemoryAtStartup on
  195.   ZeroInternalMemoryAtStartup on
  196.   InitFltsAndDblsToZero   on
  197.   NoFixptDivByZeroProtection off
  198.   EfficientFloat2IntCast  off
  199.   OptimizeModelRefInitCode off
  200.   LifeSpan   "inf"
  201.   BufferReusableBoundary  on
  202.   SimCompilerOptimization "Off"
  203.   AccelVerboseBuild   off
  204. }
  205. Simulink.DebuggingCC {
  206.   $ObjectID   5
  207.   Version   "1.4.0"
  208.   RTPrefix   "error"
  209.   ConsistencyChecking   "none"
  210.   ArrayBoundsChecking   "none"
  211.   SignalInfNanChecking   "none"
  212.   SignalRangeChecking   "none"
  213.   ReadBeforeWriteMsg   "UseLocalSettings"
  214.   WriteAfterWriteMsg   "UseLocalSettings"
  215.   WriteAfterReadMsg   "UseLocalSettings"
  216.   AlgebraicLoopMsg   "none"
  217.   ArtificialAlgebraicLoopMsg "warning"
  218.   SaveWithDisabledLinksMsg "warning"
  219.   SaveWithParameterizedLinksMsg "none"
  220.   CheckSSInitialOutputMsg on
  221.   CheckExecutionContextPreStartOutputMsg off
  222.   CheckExecutionContextRuntimeOutputMsg off
  223.   SignalResolutionControl "TryResolveAllWithWarning"
  224.   BlockPriorityViolationMsg "warning"
  225.   MinStepSizeMsg   "warning"
  226.   TimeAdjustmentMsg   "none"
  227.   MaxConsecutiveZCsMsg   "error"
  228.   SolverPrmCheckMsg   "none"
  229.   InheritedTsInSrcMsg   "warning"
  230.   DiscreteInheritContinuousMsg "warning"
  231.   MultiTaskDSMMsg   "error"
  232.   MultiTaskCondExecSysMsg "error"
  233.   MultiTaskRateTransMsg   "error"
  234.   SingleTaskRateTransMsg  "none"
  235.   TasksWithSamePriorityMsg "warning"
  236.   SigSpecEnsureSampleTimeMsg "warning"
  237.   CheckMatrixSingularityMsg "none"
  238.   IntegerOverflowMsg   "warning"
  239.   Int32ToFloatConvMsg   "warning"
  240.   ParameterDowncastMsg   "error"
  241.   ParameterOverflowMsg   "error"
  242.   ParameterUnderflowMsg   "none"
  243.   ParameterPrecisionLossMsg "warning"
  244.   ParameterTunabilityLossMsg "warning"
  245.   UnderSpecifiedDataTypeMsg "none"
  246.   UnnecessaryDatatypeConvMsg "none"
  247.   VectorMatrixConversionMsg "none"
  248.   InvalidFcnCallConnMsg   "error"
  249.   FcnCallInpInsideContextMsg "Use local settings"
  250.   SignalLabelMismatchMsg  "none"
  251.   UnconnectedInputMsg   "warning"
  252.   UnconnectedOutputMsg   "none"
  253.   UnconnectedLineMsg   "warning"
  254.   SFcnCompatibilityMsg   "none"
  255.   UniqueDataStoreMsg   "none"
  256.   BusObjectLabelMismatch  "warning"
  257.   RootOutportRequireBusObject "warning"
  258.   AssertControl   "UseLocalSettings"
  259.   EnableOverflowDetection off
  260.   ModelReferenceIOMsg   "none"
  261.   ModelReferenceVersionMismatchMessage "none"
  262.   ModelReferenceIOMismatchMessage "none"
  263.   ModelReferenceCSMismatchMessage "none"
  264.   ModelReferenceSimTargetVerbose off
  265.   UnknownTsInhSupMsg   "warning"
  266.   ModelReferenceDataLoggingMessage "warning"
  267.   ModelReferenceSymbolNameMessage "warning"
  268.   ModelReferenceExtraNoncontSigs "error"
  269.   StateNameClashWarn   "warning"
  270.   StrictBusMsg   "Warning"
  271.   LoggingUnavailableSignals "error"
  272.   BlockIODiagnostic   "none"
  273. }
  274. Simulink.HardwareCC {
  275.   $ObjectID   6
  276.   Version   "1.4.0"
  277.   ProdBitPerChar   8
  278.   ProdBitPerShort   16
  279.   ProdBitPerInt   32
  280.   ProdBitPerLong   32
  281.   ProdIntDivRoundTo   "Undefined"
  282.   ProdEndianess   "Unspecified"
  283.   ProdWordSize   32
  284.   ProdShiftRightIntArith  on
  285.   ProdHWDeviceType   "32-bit Generic"
  286.   TargetBitPerChar   8
  287.   TargetBitPerShort   16
  288.   TargetBitPerInt   32
  289.   TargetBitPerLong   32
  290.   TargetShiftRightIntArith on
  291.   TargetIntDivRoundTo   "Undefined"
  292.   TargetEndianess   "Unspecified"
  293.   TargetWordSize   32
  294.   TargetTypeEmulationWarnSuppressLevel 0
  295.   TargetPreprocMaxBitsSint 32
  296.   TargetPreprocMaxBitsUint 32
  297.   TargetHWDeviceType   "Specified"
  298.   TargetUnknown   off
  299.   ProdEqTarget   on
  300. }
  301. Simulink.ModelReferenceCC {
  302.   $ObjectID   7
  303.   Version   "1.4.0"
  304.   UpdateModelReferenceTargets "IfOutOfDateOrStructuralChange"
  305.   CheckModelReferenceTargetMessage "error"
  306.   ModelReferenceNumInstancesAllowed "Multi"
  307.   ModelReferenceSigSizeVariationType "Always allowed"
  308.   ModelReferencePassRootInputsByReference on
  309.   ModelReferenceMinAlgLoopOccurrences off
  310. }
  311. Simulink.RTWCC {
  312.   $BackupClass   "Simulink.RTWCC"
  313.   $ObjectID   8
  314.   Array {
  315.     Type     "Cell"
  316.     Dimension     1
  317.     Cell     "IncludeHyperlinkInReport"
  318.     PropName     "DisabledProps"
  319.   }
  320.   Version   "1.4.0"
  321.   SystemTargetFile   "grt.tlc"
  322.   GenCodeOnly   off
  323.   MakeCommand   "make_rtw"
  324.   GenerateMakefile   on
  325.   TemplateMakefile   "grt_default_tmf"
  326.   GenerateReport   off
  327.   SaveLog   off
  328.   RTWVerbose   on
  329.   RetainRTWFile   off
  330.   ProfileTLC   off
  331.   TLCDebug   off
  332.   TLCCoverage   off
  333.   TLCAssert   off
  334.   ProcessScriptMode   "Default"
  335.   ConfigurationMode   "Optimized"
  336.   ConfigAtBuild   off
  337.   IncludeHyperlinkInReport off
  338.   LaunchReport   off
  339.   TargetLang   "C"
  340.   IncludeBusHierarchyInRTWFileBlockHierarchyMap off
  341.   IncludeERTFirstTime   off
  342.   GenerateTraceInfo   off
  343.   GenerateTraceReport   off
  344.   GenerateTraceReportSl   off
  345.   GenerateTraceReportSf   off
  346.   GenerateTraceReportEml  off
  347.   GenerateCodeInfo   off
  348.   RTWCompilerOptimization "Off"
  349.   Array {
  350.     Type     "Handle"
  351.     Dimension     2
  352.     Simulink.CodeAppCC {
  353.       $ObjectID       9
  354.       Array {
  355. Type "Cell"
  356. Dimension 16
  357. Cell "IgnoreCustomStorageClasses"
  358. Cell "InsertBlockDesc"
  359. Cell "SFDataObjDesc"
  360. Cell "SimulinkDataObjDesc"
  361. Cell "DefineNamingRule"
  362. Cell "SignalNamingRule"
  363. Cell "ParamNamingRule"
  364. Cell "InlinedPrmAccess"
  365. Cell "CustomSymbolStr"
  366. Cell "CustomSymbolStrGlobalVar"
  367. Cell "CustomSymbolStrType"
  368. Cell "CustomSymbolStrField"
  369. Cell "CustomSymbolStrFcn"
  370. Cell "CustomSymbolStrBlkIO"
  371. Cell "CustomSymbolStrTmpVar"
  372. Cell "CustomSymbolStrMacro"
  373. PropName "DisabledProps"
  374.       }
  375.       Version       "1.4.0"
  376.       ForceParamTrailComments off
  377.       GenerateComments       on
  378.       IgnoreCustomStorageClasses on
  379.       IncHierarchyInIds       off
  380.       MaxIdLength       31
  381.       PreserveName       off
  382.       PreserveNameWithParent  off
  383.       ShowEliminatedStatement off
  384.       IncAutoGenComments      off
  385.       SimulinkDataObjDesc     off
  386.       SFDataObjDesc       off
  387.       IncDataTypeInIds       off
  388.       MangleLength       1
  389.       CustomSymbolStrGlobalVar "$R$N$M"
  390.       CustomSymbolStrType     "$N$R$M"
  391.       CustomSymbolStrField    "$N$M"
  392.       CustomSymbolStrFcn      "$R$N$M$F"
  393.       CustomSymbolStrBlkIO    "rtb_$N$M"
  394.       CustomSymbolStrTmpVar   "$N$M"
  395.       CustomSymbolStrMacro    "$R$N$M"
  396.       DefineNamingRule       "None"
  397.       ParamNamingRule       "None"
  398.       SignalNamingRule       "None"
  399.       InsertBlockDesc       off
  400.       SimulinkBlockComments   on
  401.       EnableCustomComments    off
  402.       InlinedPrmAccess       "Literals"
  403.       ReqsInCode       off
  404.     }
  405.     Simulink.GRTTargetCC {
  406.       $BackupClass       "Simulink.TargetCC"
  407.       $ObjectID       10
  408.       Array {
  409. Type "Cell"
  410. Dimension 13
  411. Cell "IncludeMdlTerminateFcn"
  412. Cell "CombineOutputUpdateFcns"
  413. Cell "SuppressErrorStatus"
  414. Cell "ERTCustomFileBanners"
  415. Cell "GenerateSampleERTMain"
  416. Cell "GenerateTestInterfaces"
  417. Cell "MultiInstanceERTCode"
  418. Cell "PurelyIntegerCode"
  419. Cell "SupportNonFinite"
  420. Cell "SupportComplex"
  421. Cell "SupportAbsoluteTime"
  422. Cell "SupportContinuousTime"
  423. Cell "SupportNonInlinedSFcns"
  424. PropName "DisabledProps"
  425.       }
  426.       Version       "1.4.0"
  427.       TargetFcnLib       "ansi_tfl_tmw.mat"
  428.       TargetLibSuffix       ""
  429.       TargetPreCompLibLocation ""
  430.       TargetFunctionLibrary   "ANSI_C"
  431.       UtilityFuncGeneration   "Auto"
  432.       GenerateFullHeader      on
  433.       GenerateSampleERTMain   off
  434.       GenerateTestInterfaces  off
  435.       IsPILTarget       off
  436.       ModelReferenceCompliant on
  437.       CompOptLevelCompliant   on
  438.       IncludeMdlTerminateFcn  on
  439.       CombineOutputUpdateFcns off
  440.       SuppressErrorStatus     off
  441.       ERTFirstTimeCompliant   off
  442.       IncludeFileDelimiter    "Auto"
  443.       ERTCustomFileBanners    off
  444.       SupportAbsoluteTime     on
  445.       LogVarNameModifier      "rt_"
  446.       MatFileLogging       on
  447.       MultiInstanceERTCode    off
  448.       SupportNonFinite       on
  449.       SupportComplex       on
  450.       PurelyIntegerCode       off
  451.       SupportContinuousTime   on
  452.       SupportNonInlinedSFcns  on
  453.       EnableShiftOperators    on
  454.       ParenthesesLevel       "Nominal"
  455.       PortableWordSizes       off
  456.       ModelStepFunctionPrototypeControlCompliant off
  457.       AutosarCompliant       off
  458.       ExtMode       off
  459.       ExtModeStaticAlloc      off
  460.       ExtModeTesting       off
  461.       ExtModeStaticAllocSize  1000000
  462.       ExtModeTransport       0
  463.       ExtModeMexFile       "ext_comm"
  464.       ExtModeIntrfLevel       "Level1"
  465.       RTWCAPISignals       off
  466.       RTWCAPIParams       off
  467.       RTWCAPIStates       off
  468.       GenerateASAP2       off
  469.     }
  470.     PropName     "Components"
  471.   }
  472. }
  473. PropName "Components"
  474.       }
  475.       Name       "Configuration"
  476.       CurrentDlgPage       "Solver"
  477.     }
  478.     PropName     "ConfigurationSets"
  479.   }
  480.   Simulink.ConfigSet {
  481.     $PropName     "ActiveConfigurationSet"
  482.     $ObjectID     1
  483.   }
  484.   BlockDefaults {
  485.     Orientation     "right"
  486.     ForegroundColor     "black"
  487.     BackgroundColor     "white"
  488.     DropShadow     off
  489.     NamePlacement     "normal"
  490.     FontName     "Arial"
  491.     FontSize     10
  492.     FontWeight     "normal"
  493.     FontAngle     "normal"
  494.     ShowName     on
  495.   }
  496.   BlockParameterDefaults {
  497.     Block {
  498.       BlockType       Clock
  499.       DisplayTime       off
  500.     }
  501.     Block {
  502.       BlockType       Display
  503.       Format       "short"
  504.       Decimation       "10"
  505.       Floating       off
  506.       SampleTime       "-1"
  507.     }
  508.     Block {
  509.       BlockType       Fcn
  510.       Expr       "sin(u[1])"
  511.       SampleTime       "-1"
  512.     }
  513.     Block {
  514.       BlockType       Gain
  515.       Gain       "1"
  516.       Multiplication       "Element-wise(K.*u)"
  517.       ParamMin       "[]"
  518.       ParamMax       "[]"
  519.       ParameterDataTypeMode   "Same as input"
  520.       ParameterDataType       "fixdt(1,16,0)"
  521.       ParameterScalingMode    "Best Precision: Matrix-wise"
  522.       ParameterScaling       "[]"
  523.       ParamDataTypeStr       "Inherit: Same as input"
  524.       OutMin       "[]"
  525.       OutMax       "[]"
  526.       OutDataTypeMode       "Same as input"
  527.       OutDataType       "fixdt(1,16,0)"
  528.       OutScaling       "[]"
  529.       OutDataTypeStr       "Inherit: Same as input"
  530.       LockScale       off
  531.       RndMeth       "Floor"
  532.       SaturateOnIntegerOverflow on
  533.       SampleTime       "-1"
  534.     }
  535.     Block {
  536.       BlockType       SignalConversion
  537.       OverrideOpt       off
  538.     }
  539.     Block {
  540.       BlockType       InitialCondition
  541.       Value       "1"
  542.       SampleTime       "-1"
  543.     }
  544.     Block {
  545.       BlockType       Inport
  546.       Port       "1"
  547.       UseBusObject       off
  548.       BusObject       "BusObject"
  549.       BusOutputAsStruct       off
  550.       PortDimensions       "-1"
  551.       SampleTime       "-1"
  552.       OutMin       "[]"
  553.       OutMax       "[]"
  554.       DataType       "auto"
  555.       OutDataType       "fixdt(1,16,0)"
  556.       OutScaling       "[]"
  557.       OutDataTypeStr       "Inherit: auto"
  558.       SignalType       "auto"
  559.       SamplingMode       "auto"
  560.       LatchByDelayingOutsideSignal off
  561.       LatchByCopyingInsideSignal off
  562.       Interpolate       on
  563.     }
  564.     Block {
  565.       BlockType       Integrator
  566.       ExternalReset       "none"
  567.       InitialConditionSource  "internal"
  568.       InitialCondition       "0"
  569.       LimitOutput       off
  570.       UpperSaturationLimit    "inf"
  571.       LowerSaturationLimit    "-inf"
  572.       ShowSaturationPort      off
  573.       ShowStatePort       off
  574.       AbsoluteTolerance       "auto"
  575.       IgnoreLimit       off
  576.       ZeroCross       on
  577.       ContinuousStateAttributes "''"
  578.     }
  579.     Block {
  580.       BlockType       MATLABFcn
  581.       MATLABFcn       "sin"
  582.       OutputDimensions       "-1"
  583.       OutputSignalType       "auto"
  584.       Output1D       on
  585.       SampleTime       "-1"
  586.     }
  587.     Block {
  588.       BlockType       Mux
  589.       Inputs       "4"
  590.       DisplayOption       "none"
  591.       UseBusObject       off
  592.       BusObject       "BusObject"
  593.       NonVirtualBus       off
  594.     }
  595.     Block {
  596.       BlockType       Outport
  597.       Port       "1"
  598.       UseBusObject       off
  599.       BusObject       "BusObject"
  600.       BusOutputAsStruct       off
  601.       PortDimensions       "-1"
  602.       SampleTime       "-1"
  603.       OutMin       "[]"
  604.       OutMax       "[]"
  605.       DataType       "auto"
  606.       OutDataType       "fixdt(1,16,0)"
  607.       OutScaling       "[]"
  608.       OutDataTypeStr       "Inherit: auto"
  609.       SignalType       "auto"
  610.       SamplingMode       "auto"
  611.       OutputWhenDisabled      "held"
  612.       InitialOutput       "[]"
  613.     }
  614.     Block {
  615.       BlockType       Product
  616.       Inputs       "2"
  617.       Multiplication       "Element-wise(.*)"
  618.       CollapseMode       "All dimensions"
  619.       CollapseDim       "1"
  620.       InputSameDT       on
  621.       OutMin       "[]"
  622.       OutMax       "[]"
  623.       OutDataTypeMode       "Same as first input"
  624.       OutDataType       "fixdt(1,16,0)"
  625.       OutScaling       "[]"
  626.       OutDataTypeStr       "Inherit: Same as first input"
  627.       LockScale       off
  628.       RndMeth       "Zero"
  629.       SaturateOnIntegerOverflow on
  630.       SampleTime       "-1"
  631.     }
  632.     Block {
  633.       BlockType       Scope
  634.       ModelBased       off
  635.       TickLabels       "OneTimeTick"
  636.       ZoomMode       "on"
  637.       Grid       "on"
  638.       TimeRange       "auto"
  639.       YMin       "-5"
  640.       YMax       "5"
  641.       SaveToWorkspace       off
  642.       SaveName       "ScopeData"
  643.       LimitDataPoints       on
  644.       MaxDataPoints       "5000"
  645.       Decimation       "1"
  646.       SampleInput       off
  647.       SampleTime       "-1"
  648.     }
  649.     Block {
  650.       BlockType       "S-Function"
  651.       FunctionName       "system"
  652.       SFunctionModules       "''"
  653.       PortCounts       "[]"
  654.       SFunctionDeploymentMode off
  655.     }
  656.     Block {
  657.       BlockType       SubSystem
  658.       ShowPortLabels       "FromPortIcon"
  659.       Permissions       "ReadWrite"
  660.       PermitHierarchicalResolution "All"
  661.       TreatAsAtomicUnit       off
  662.       CheckFcnCallInpInsideContextMsg off
  663.       SystemSampleTime       "-1"
  664.       RTWFcnNameOpts       "Auto"
  665.       RTWFileNameOpts       "Auto"
  666.       RTWMemSecFuncInitTerm   "Inherit from model"
  667.       RTWMemSecFuncExecute    "Inherit from model"
  668.       RTWMemSecDataConstants  "Inherit from model"
  669.       RTWMemSecDataInternal   "Inherit from model"
  670.       RTWMemSecDataParameters "Inherit from model"
  671.       SimViewingDevice       off
  672.       DataTypeOverride       "UseLocalSettings"
  673.       MinMaxOverflowLogging   "UseLocalSettings"
  674.     }
  675.     Block {
  676.       BlockType       Sum
  677.       IconShape       "rectangular"
  678.       Inputs       "++"
  679.       CollapseMode       "All dimensions"
  680.       CollapseDim       "1"
  681.       InputSameDT       on
  682.       AccumDataTypeStr       "Inherit: Inherit via internal rule"
  683.       OutMin       "[]"
  684.       OutMax       "[]"
  685.       OutDataTypeMode       "Same as first input"
  686.       OutDataType       "fixdt(1,16,0)"
  687.       OutScaling       "[]"
  688.       OutDataTypeStr       "Inherit: Same as first input"
  689.       LockScale       off
  690.       RndMeth       "Floor"
  691.       SaturateOnIntegerOverflow on
  692.       SampleTime       "-1"
  693.     }
  694.     Block {
  695.       BlockType       Switch
  696.       Criteria       "u2 >= Threshold"
  697.       Threshold       "0"
  698.       InputSameDT       on
  699.       OutMin       "[]"
  700.       OutMax       "[]"
  701.       OutDataTypeMode       "Inherit via internal rule"
  702.       OutDataType       "fixdt(1,16,0)"
  703.       OutScaling       "[]"
  704.       OutDataTypeStr       "Inherit: Inherit via internal rule"
  705.       LockScale       off
  706.       RndMeth       "Floor"
  707.       SaturateOnIntegerOverflow on
  708.       ZeroCross       on
  709.       SampleTime       "-1"
  710.     }
  711.     Block {
  712.       BlockType       TransportDelay
  713.       DelayTime       "1"
  714.       InitialOutput       "0"
  715.       BufferSize       "1024"
  716.       FixedBuffer       off
  717.       TransDelayFeedthrough   off
  718.       PadeOrder       "0"
  719.     }
  720.     Block {
  721.       BlockType       ZeroOrderHold
  722.       SampleTime       "1"
  723.     }
  724.     Block {
  725.       BlockType       Constant
  726.       Value       "1"
  727.       VectorParams1D       on
  728.       SamplingMode       "Sample based"
  729.       OutMin       "[]"
  730.       OutMax       "[]"
  731.       OutDataTypeMode       "Inherit from 'Constant value'"
  732.       OutDataType       "fixdt(1,16,0)"
  733.       ConRadixGroup       "Use specified scaling"
  734.       OutScaling       "[]"
  735.       OutDataTypeStr       "Inherit: Inherit from 'Constant value'"
  736.       SampleTime       "inf"
  737.       FramePeriod       "inf"
  738.     }
  739.     Block {
  740.       BlockType       Lookup
  741.       InputValues       "[-4:5]"
  742.       Table       " rand(1,10)-0.5"
  743.       LookUpMeth       "Interpolation-Extrapolation"
  744.       OutMin       "[]"
  745.       OutMax       "[]"
  746.       OutDataTypeMode       "Same as input"
  747.       OutDataType       "fixdt(1,16,0)"
  748.       OutScaling       "[]"
  749.       OutDataTypeStr       "Inherit: Same as input"
  750.       LockScale       off
  751.       RndMeth       "Floor"
  752.       SaturateOnIntegerOverflow on
  753.       SampleTime       "-1"
  754.       LUTDesignTableMode      "Redesign Table"
  755.       LUTDesignDataSource     "Block Dialog"
  756.       LUTDesignFunctionName   "sqrt(x)"
  757.       LUTDesignUseExistingBP  on
  758.       LUTDesignRelError       "0.01"
  759.       LUTDesignAbsError       "1e-6"
  760.     }
  761.     Block {
  762.       BlockType       MinMax
  763.       Function       "min"
  764.       Inputs       "1"
  765.       InputSameDT       on
  766.       OutMin       "[]"
  767.       OutMax       "[]"
  768.       OutDataTypeMode       "Inherit via internal rule"
  769.       OutDataType       "fixdt(1,16,0)"
  770.       OutScaling       "[]"
  771.       OutDataTypeStr       "Inherit: Inherit via internal rule"
  772.       LockScale       off
  773.       RndMeth       "Floor"
  774.       SaturateOnIntegerOverflow on
  775.       ZeroCross       on
  776.       SampleTime       "-1"
  777.     }
  778.     Block {
  779.       BlockType       Saturate
  780.       UpperLimit       "0.5"
  781.       LowerLimit       "-0.5"
  782.       LinearizeAsGain       on
  783.       ZeroCross       on
  784.       SampleTime       "-1"
  785.       OutMin       "[]"
  786.       OutMax       "[]"
  787.       OutDataTypeMode       "Same as input"
  788.       OutDataType       "fixdt(1,16,0)"
  789.       OutScaling       "[]"
  790.       OutDataTypeStr       "Inherit: Same as input"
  791.       LockScale       off
  792.       RndMeth       "Floor"
  793.     }
  794.   }
  795.   AnnotationDefaults {
  796.     HorizontalAlignment     "center"
  797.     VerticalAlignment     "middle"
  798.     ForegroundColor     "black"
  799.     BackgroundColor     "white"
  800.     DropShadow     off
  801.     FontName     "Arial"
  802.     FontSize     10
  803.     FontWeight     "normal"
  804.     FontAngle     "normal"
  805.     UseDisplayTextAsClickCallback off
  806.   }
  807.   LineDefaults {
  808.     FontName     "Arial"
  809.     FontSize     9
  810.     FontWeight     "normal"
  811.     FontAngle     "normal"
  812.   }
  813.   System {
  814.     Name     "pv_boost_mpp_Iref"
  815.     Location     [2, 72, 1261, 719]
  816.     Open     on
  817.     ModelBrowserVisibility  off
  818.     ModelBrowserWidth     200
  819.     ScreenColor     "white"
  820.     PaperOrientation     "landscape"
  821.     PaperPositionMode     "auto"
  822.     PaperType     "usletter"
  823.     PaperUnits     "inches"
  824.     TiledPaperMargins     [0.500000, 0.500000, 0.500000, 0.500000]
  825.     TiledPageScale     1
  826.     ShowPageBoundaries     off
  827.     ZoomFactor     "100"
  828.     ReportName     "simulink-default.rpt"
  829.     Block {
  830.       BlockType       Gain
  831.       Name       "1 module"
  832.       Position       [185, 691, 225, 729]
  833.       ParameterDataTypeMode   "Inherit via internal rule"
  834.       ParameterDataType       "sfix(16)"
  835.       ParameterScaling       "2^0"
  836.       ParamDataTypeStr       "Inherit: Inherit via internal rule"
  837.       OutDataTypeMode       "Inherit via internal rule"
  838.       OutDataType       "sfix(16)"
  839.       OutScaling       "2^0"
  840.       OutDataTypeStr       "Inherit: Inherit via internal rule"
  841.       SaturateOnIntegerOverflow off
  842.     }
  843.     Block {
  844.       BlockType       Gain
  845.       Name       "5 modules"
  846.       Position       [185, 636, 225, 674]
  847.       Gain       "5"
  848.       ParameterDataTypeMode   "Inherit via internal rule"
  849.       ParameterDataType       "sfix(16)"
  850.       ParameterScaling       "2^0"
  851.       ParamDataTypeStr       "Inherit: Inherit via internal rule"
  852.       OutDataTypeMode       "Inherit via internal rule"
  853.       OutDataType       "sfix(16)"
  854.       OutScaling       "2^0"
  855.       OutDataTypeStr       "Inherit: Inherit via internal rule"
  856.       SaturateOnIntegerOverflow off
  857.     }
  858.     Block {
  859.       BlockType       Gain
  860.       Name       "85/1000"
  861.       Position       [300, 660, 340, 700]
  862.       Gain       "85.14/1000"
  863.       ParameterDataTypeMode   "Inherit via internal rule"
  864.       ParameterDataType       "sfix(16)"
  865.       ParameterScaling       "2^0"
  866.       ParamDataTypeStr       "Inherit: Inherit via internal rule"
  867.       OutDataTypeMode       "Inherit via internal rule"
  868.       OutDataType       "sfix(16)"
  869.       OutScaling       "2^0"
  870.       OutDataTypeStr       "Inherit: Inherit via internal rule"
  871.       SaturateOnIntegerOverflow off
  872.       Port {
  873. PortNumber 1
  874. Name "Ppvnideal"
  875. RTWStorageClass "Auto"
  876. DataLoggingNameMode "SignalName"
  877.       }
  878.     }
  879.     Block {
  880.       BlockType       Sum
  881.       Name       "Add"
  882.       Ports       [6, 1]
  883.       Position       [315, 23, 345, 557]
  884.       Inputs       "++++++"
  885.       InputSameDT       off
  886.       OutDataTypeMode       "Inherit via internal rule"
  887.       OutDataType       "sfix(16)"
  888.       OutScaling       "2^-10"
  889.       OutDataTypeStr       "Inherit: Inherit via internal rule"
  890.       SaturateOnIntegerOverflow off
  891.       Port {
  892. PortNumber 1
  893. Name "Vpv"
  894. RTWStorageClass "Auto"
  895. DataLoggingNameMode "SignalName"
  896.       }
  897.     }
  898.     Block {
  899.       BlockType       SubSystem
  900.       Name       "Boost DC-DC"
  901.       Ports       [3, 4]
  902.       Position       [665, 98, 765, 212]
  903.       MinAlgLoopOccurrences   off
  904.       PropExecContextOutsideSubsystem off
  905.       RTWSystemCode       "Auto"
  906.       FunctionWithSeparateData off
  907.       Opaque       off
  908.       RequestExecContextInheritance off
  909.       MaskHideContents       off
  910.       MaskDescription       " Averaged model of a boost (step-up) DC-DC converter with input current control. Model includes RL (conduction loss model) in series with the input port and Isw (model of switching and other loss) in parallel with the output port "
  911.       MaskPromptString       "Input port series resistance RL|Switching loss current Isw "
  912.       MaskStyleString       "edit,edit"
  913.       MaskTunableValueString  "on,on"
  914.       MaskCallbackString      "|"
  915.       MaskEnableString       "on,on"
  916.       MaskVisibilityString    "on,on"
  917.       MaskToolTipString       "on,on"
  918.       MaskVarAliasString      ","
  919.       MaskVariables       "RL=@1;Isw=@2;"
  920.       MaskDisplay       "text(0.5,0.9,'Boost','horizontalAlignment', 'center');ntext(0.5,0.8,'DC-DC','horizontalAlignment', 'center');ntext(0.5,0.7,'(averaged)','horizontalAlignment', 'center');ntext(0.5,0.6,'Iref control','horizontalAlignment', 'center');"
  921.       MaskIconFrame       on
  922.       MaskIconOpaque       off
  923.       MaskIconRotate       "none"
  924.       MaskIconUnits       "normalized"
  925.       MaskValueString       "0.5|0.03"
  926.       MaskTabNameString       ","
  927.       Port {
  928. PortNumber 1
  929. Name "Iout"
  930. PropagatedSignals "Iout"
  931. RTWStorageClass "Auto"
  932. DataLoggingNameMode "SignalName"
  933.       }
  934.       Port {
  935. PortNumber 2
  936. Name "Pout"
  937. PropagatedSignals "Pout"
  938. RTWStorageClass "Auto"
  939. DataLoggingNameMode "SignalName"
  940.       }
  941.       Port {
  942. PortNumber 3
  943. Name "efficiency"
  944. RTWStorageClass "Auto"
  945. DataLoggingNameMode "SignalName"
  946.       }
  947.       Port {
  948. PortNumber 4
  949. Name "Duty"
  950. PropagatedSignals "D"
  951. RTWStorageClass "Auto"
  952. DataLoggingNameMode "SignalName"
  953.       }
  954.       System {
  955. Name "Boost DC-DC"
  956. Location [147, 464, 1149, 898]
  957. Open off
  958. ModelBrowserVisibility off
  959. ModelBrowserWidth 200
  960. ScreenColor "white"
  961. PaperOrientation "landscape"
  962. PaperPositionMode "auto"
  963. PaperType "usletter"
  964. PaperUnits "inches"
  965. TiledPaperMargins [0.500000, 0.500000, 0.500000, 0.500000]
  966. TiledPageScale 1
  967. ShowPageBoundaries off
  968. ZoomFactor "100"
  969. Block {
  970.   BlockType   Inport
  971.   Name   "Vout"
  972.   Position   [40, 253, 70, 267]
  973.   IconDisplay   "Port number"
  974.   OutDataType   "sfix(16)"
  975.   OutScaling   "2^0"
  976. }
  977. Block {
  978.   BlockType   Inport
  979.   Name   "Vg"
  980.   Position   [40, 113, 70, 127]
  981.   Port   "2"
  982.   IconDisplay   "Port number"
  983.   OutDataType   "sfix(16)"
  984.   OutScaling   "2^0"
  985.   Port {
  986.     PortNumber     1
  987.     Name     "Vg"
  988.     PropagatedSignals     "Vpv"
  989.     RTWStorageClass     "Auto"
  990.     DataLoggingNameMode     "SignalName"
  991.   }
  992. }
  993. Block {
  994.   BlockType   Inport
  995.   Name   "Iref"
  996.   Position   [40, 53, 70, 67]
  997.   Port   "3"
  998.   IconDisplay   "Port number"
  999.   OutDataType   "sfix(16)"
  1000.   OutScaling   "2^0"
  1001. }
  1002. Block {
  1003.   BlockType   Product
  1004.   Name   "(1-D)Ig"
  1005.   Ports   [2, 1]
  1006.   Position   [530, 152, 560, 183]
  1007.   Inputs   "**"
  1008.   InputSameDT   off
  1009.   OutDataTypeMode   "Inherit via internal rule"
  1010.   OutDataType   "sfix(16)"
  1011.   OutScaling   "2^0"
  1012.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1013.   SaturateOnIntegerOverflow off
  1014. }
  1015. Block {
  1016.   BlockType   Saturate
  1017.   Name   "0 <= D <= 1"
  1018.   Position   [440, 55, 470, 85]
  1019.   UpperLimit   "1"
  1020.   LowerLimit   "0"
  1021.   Port {
  1022.     PortNumber     1
  1023.     Name     "1-D"
  1024.     RTWStorageClass     "Auto"
  1025.     DataLoggingNameMode     "SignalName"
  1026.   }
  1027. }
  1028. Block {
  1029.   BlockType   Saturate
  1030.   Name   "0 <= eta <= 1"
  1031.   Position   [850, 325, 880, 355]
  1032.   UpperLimit   "1"
  1033.   LowerLimit   "0"
  1034. }
  1035. Block {
  1036.   BlockType   Constant
  1037.   Name   "1"
  1038.   Position   [510, 15, 540, 45]
  1039.   OutDataType   "sfix(16)"
  1040.   OutScaling   "2^0"
  1041. }
  1042. Block {
  1043.   BlockType   Product
  1044.   Name   "Calculaten1-D"
  1045.   Ports   [2, 1]
  1046.   Position   [370, 52, 400, 83]
  1047.   Inputs   "*/"
  1048.   InputSameDT   off
  1049.   OutDataTypeMode   "Inherit via internal rule"
  1050.   OutDataType   "sfix(16)"
  1051.   OutScaling   "2^0"
  1052.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1053.   SaturateOnIntegerOverflow off
  1054. }
  1055. Block {
  1056.   BlockType   Product
  1057.   Name   "Efficiencyncalculation"
  1058.   Ports   [2, 1]
  1059.   Position   [775, 311, 810, 369]
  1060.   Inputs   "*/"
  1061.   InputSameDT   off
  1062.   OutDataTypeMode   "Inherit via internal rule"
  1063.   OutDataType   "sfix(16)"
  1064.   OutScaling   "2^0"
  1065.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1066.   SaturateOnIntegerOverflow off
  1067. }
  1068. Block {
  1069.   BlockType   Saturate
  1070.   Name   "Iref >= 0"
  1071.   Position   [110, 45, 140, 75]
  1072.   UpperLimit   "inf"
  1073.   LowerLimit   "0"
  1074.   Port {
  1075.     PortNumber     1
  1076.     Name     "Ig"
  1077.     RTWStorageClass     "Auto"
  1078.     DataLoggingNameMode     "SignalName"
  1079.   }
  1080. }
  1081. Block {
  1082.   BlockType   Product
  1083.   Name   "Pinput = Vg*Ig"
  1084.   Ports   [2, 1]
  1085.   Position   [590, 337, 620, 368]
  1086.   Inputs   "**"
  1087.   InputSameDT   off
  1088.   OutDataTypeMode   "Inherit via internal rule"
  1089.   OutDataType   "sfix(16)"
  1090.   OutScaling   "2^0"
  1091.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1092.   SaturateOnIntegerOverflow off
  1093. }
  1094. Block {
  1095.   BlockType   Product
  1096.   Name   "Pout=Vout*Iout"
  1097.   Ports   [2, 1]
  1098.   Position   [610, 237, 640, 268]
  1099.   Inputs   "**"
  1100.   InputSameDT   off
  1101.   OutDataTypeMode   "Inherit via internal rule"
  1102.   OutDataType   "sfix(16)"
  1103.   OutScaling   "2^0"
  1104.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1105.   SaturateOnIntegerOverflow off
  1106.   Port {
  1107.     PortNumber     1
  1108.     Name     "Pout"
  1109.     RTWStorageClass     "Auto"
  1110.     DataLoggingNameMode     "SignalName"
  1111.   }
  1112. }
  1113. Block {
  1114.   BlockType   Gain
  1115.   Name   "RL"
  1116.   Position   [190, 38, 240, 82]
  1117.   Gain   "RL"
  1118.   ParameterDataTypeMode   "Inherit via internal rule"
  1119.   ParameterDataType   "sfix(16)"
  1120.   ParameterScaling   "2^0"
  1121.   ParamDataTypeStr   "Inherit: Inherit via internal rule"
  1122.   OutDataTypeMode   "Inherit via internal rule"
  1123.   OutDataType   "sfix(16)"
  1124.   OutScaling   "2^0"
  1125.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1126.   SaturateOnIntegerOverflow off
  1127. }
  1128. Block {
  1129.   BlockType   Sum
  1130.   Name   "Sum"
  1131.   Ports   [2, 1]
  1132.   Position   [290, 50, 310, 70]
  1133.   ShowName   off
  1134.   IconShape   "round"
  1135.   Inputs   "|-+"
  1136.   InputSameDT   off
  1137.   OutDataTypeMode   "Inherit via internal rule"
  1138.   OutDataType   "sfix(16)"
  1139.   OutScaling   "2^0"
  1140.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1141.   SaturateOnIntegerOverflow off
  1142. }
  1143. Block {
  1144.   BlockType   Sum
  1145.   Name   "Sum3"
  1146.   Ports   [2, 1]
  1147.   Position   [665, 160, 685, 180]
  1148.   ShowName   off
  1149.   IconShape   "round"
  1150.   Inputs   "-+|"
  1151.   InputSameDT   off
  1152.   OutDataTypeMode   "Inherit via internal rule"
  1153.   OutDataType   "sfix(16)"
  1154.   OutScaling   "2^0"
  1155.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1156.   SaturateOnIntegerOverflow off
  1157.   Port {
  1158.     PortNumber     1
  1159.     Name     "Iout"
  1160.     RTWStorageClass     "Auto"
  1161.     DataLoggingNameMode     "SignalName"
  1162.   }
  1163. }
  1164. Block {
  1165.   BlockType   Sum
  1166.   Name   "Sum4"
  1167.   Ports   [2, 1]
  1168.   Position   [565, 60, 585, 80]
  1169.   ShowName   off
  1170.   IconShape   "round"
  1171.   Inputs   "+-|"
  1172.   InputSameDT   off
  1173.   OutDataTypeMode   "Inherit via internal rule"
  1174.   OutDataType   "sfix(16)"
  1175.   OutScaling   "2^0"
  1176.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1177.   SaturateOnIntegerOverflow off
  1178.   Port {
  1179.     PortNumber     1
  1180.     Name     "D"
  1181.     RTWStorageClass     "Auto"
  1182.     DataLoggingNameMode     "SignalName"
  1183.   }
  1184. }
  1185. Block {
  1186.   BlockType   Constant
  1187.   Name   "Switching loss current"
  1188.   Position   [610, 105, 640, 135]
  1189.   Value   "Isw"
  1190.   OutDataType   "sfix(16)"
  1191.   OutScaling   "2^0"
  1192. }
  1193. Block {
  1194.   BlockType   Saturate
  1195.   Name   "prevent ndiv by zero"
  1196.   Position   [695, 340, 725, 370]
  1197.   UpperLimit   "inf"
  1198.   LowerLimit   "eps"
  1199. }
  1200. Block {
  1201.   BlockType   Outport
  1202.   Name   "Iout"
  1203.   Position   [930, 163, 960, 177]
  1204.   IconDisplay   "Port number"
  1205.   OutDataType   "sfix(16)"
  1206.   OutScaling   "2^0"
  1207. }
  1208. Block {
  1209.   BlockType   Outport
  1210.   Name   "Pout"
  1211.   Position   [930, 248, 960, 262]
  1212.   Port   "2"
  1213.   IconDisplay   "Port number"
  1214.   OutDataType   "sfix(16)"
  1215.   OutScaling   "2^0"
  1216. }
  1217. Block {
  1218.   BlockType   Outport
  1219.   Name   "efficiency"
  1220.   Position   [925, 333, 955, 347]
  1221.   Port   "3"
  1222.   IconDisplay   "Port number"
  1223.   OutDataType   "sfix(16)"
  1224.   OutScaling   "2^0"
  1225. }
  1226. Block {
  1227.   BlockType   Outport
  1228.   Name   "D"
  1229.   Position   [925, 63, 955, 77]
  1230.   Port   "4"
  1231.   IconDisplay   "Port number"
  1232.   OutDataType   "sfix(16)"
  1233.   OutScaling   "2^0"
  1234. }
  1235. Line {
  1236.   SrcBlock   "Efficiencyncalculation"
  1237.   SrcPort   1
  1238.   DstBlock   "0 <= eta <= 1"
  1239.   DstPort   1
  1240. }
  1241. Line {
  1242.   SrcBlock   "Iref"
  1243.   SrcPort   1
  1244.   DstBlock   "Iref >= 0"
  1245.   DstPort   1
  1246. }
  1247. Line {
  1248.   SrcBlock   "Vout"
  1249.   SrcPort   1
  1250.   Points   [255, 0]
  1251.   Branch {
  1252.     DstBlock     "Pout=Vout*Iout"
  1253.     DstPort     2
  1254.   }
  1255.   Branch {
  1256.     Points     [0, -185]
  1257.     DstBlock     "Calculaten1-D"
  1258.     DstPort     2
  1259.   }
  1260. }
  1261. Line {
  1262.   SrcBlock   "Switching loss current"
  1263.   SrcPort   1
  1264.   Points   [30, 0]
  1265.   DstBlock   "Sum3"
  1266.   DstPort   1
  1267. }
  1268. Line {
  1269.   Name   "Iout"
  1270.   Labels   [0, 0]
  1271.   SrcBlock   "Sum3"
  1272.   SrcPort   1
  1273.   Points   [35, 0]
  1274.   Branch {
  1275.     DstBlock     "Iout"
  1276.     DstPort     1
  1277.   }
  1278.   Branch {
  1279.     Points     [0, 30; -150, 0; 0, 45]
  1280.     DstBlock     "Pout=Vout*Iout"
  1281.     DstPort     1
  1282.   }
  1283. }
  1284. Line {
  1285.   Name   "Pout"
  1286.   Labels   [0, 0]
  1287.   SrcBlock   "Pout=Vout*Iout"
  1288.   SrcPort   1
  1289.   Points   [65, 0]
  1290.   Branch {
  1291.     DstBlock     "Pout"
  1292.     DstPort     1
  1293.   }
  1294.   Branch {
  1295.     Labels     [1, 0]
  1296.     Points     [0, 70]
  1297.     DstBlock     "Efficiencyncalculation"
  1298.     DstPort     1
  1299.   }
  1300. }
  1301. Line {
  1302.   SrcBlock   "0 <= eta <= 1"
  1303.   SrcPort   1
  1304.   DstBlock   "efficiency"
  1305.   DstPort   1
  1306. }
  1307. Line {
  1308.   Name   "Ig"
  1309.   Labels   [0, 0]
  1310.   SrcBlock   "Iref >= 0"
  1311.   SrcPort   1
  1312.   Points   [20, 0]
  1313.   Branch {
  1314.     DstBlock     "RL"
  1315.     DstPort     1
  1316.   }
  1317.   Branch {
  1318.     Points     [0, 115; 340, 0]
  1319.     Branch {
  1320.       DstBlock       "(1-D)Ig"
  1321.       DstPort       2
  1322.     }
  1323.     Branch {
  1324.       Points       [0, 170]
  1325.       DstBlock       "Pinput = Vg*Ig"
  1326.       DstPort       1
  1327.     }
  1328.   }
  1329. }
  1330. Line {
  1331.   SrcBlock   "RL"
  1332.   SrcPort   1
  1333.   DstBlock   "Sum"
  1334.   DstPort   1
  1335. }
  1336. Line {
  1337.   Name   "Vg"
  1338.   Labels   [0, 0]
  1339.   SrcBlock   "Vg"
  1340.   SrcPort   1
  1341.   Points   [225, 0]
  1342.   Branch {
  1343.     DstBlock     "Sum"
  1344.     DstPort     2
  1345.   }
  1346.   Branch {
  1347.     Points     [0, 240]
  1348.     DstBlock     "Pinput = Vg*Ig"
  1349.     DstPort     2
  1350.   }
  1351. }
  1352. Line {
  1353.   SrcBlock   "Sum"
  1354.   SrcPort   1
  1355.   DstBlock   "Calculaten1-D"
  1356.   DstPort   1
  1357. }
  1358. Line {
  1359.   SrcBlock   "Calculaten1-D"
  1360.   SrcPort   1
  1361.   DstBlock   "0 <= D <= 1"
  1362.   DstPort   1
  1363. }
  1364. Line {
  1365.   Name   "1-D"
  1366.   Labels   [0, 0]
  1367.   SrcBlock   "0 <= D <= 1"
  1368.   SrcPort   1
  1369.   Points   [30, 0]
  1370.   Branch {
  1371.     DstBlock     "Sum4"
  1372.     DstPort     2
  1373.   }
  1374.   Branch {
  1375.     Points     [0, 90]
  1376.     DstBlock     "(1-D)Ig"
  1377.     DstPort     1
  1378.   }
  1379. }
  1380. Line {
  1381.   SrcBlock   "1"
  1382.   SrcPort   1
  1383.   Points   [30, 0]
  1384.   DstBlock   "Sum4"
  1385.   DstPort   1
  1386. }
  1387. Line {
  1388.   Name   "D"
  1389.   Labels   [0, 0]
  1390.   SrcBlock   "Sum4"
  1391.   SrcPort   1
  1392.   DstBlock   "D"
  1393.   DstPort   1
  1394. }
  1395. Line {
  1396.   SrcBlock   "(1-D)Ig"
  1397.   SrcPort   1
  1398.   DstBlock   "Sum3"
  1399.   DstPort   2
  1400. }
  1401. Line {
  1402.   SrcBlock   "prevent ndiv by zero"
  1403.   SrcPort   1
  1404.   DstBlock   "Efficiencyncalculation"
  1405.   DstPort   2
  1406. }
  1407. Line {
  1408.   SrcBlock   "Pinput = Vg*Ig"
  1409.   SrcPort   1
  1410.   DstBlock   "prevent ndiv by zero"
  1411.   DstPort   1
  1412. }
  1413. Annotation {
  1414.   Name   "ECEN2060 Switched-mode Boost (step-up) DC-DC averaged converter model"
  1415.   Position   [269, 14]
  1416. }
  1417. Annotation {
  1418.   Name   "output current"
  1419.   Position   [776, 154]
  1420. }
  1421. Annotation {
  1422.   Name   "output voltage"
  1423.   Position   [59, 240]
  1424. }
  1425. Annotation {
  1426.   Name   "input voltage"
  1427.   Position   [60, 105]
  1428. }
  1429. Annotation {
  1430.   Name   "Referenceninput current"
  1431.   Position   [53, 37]
  1432. }
  1433. Annotation {
  1434.   Name   "duty cycle"
  1435.   Position   [776, 53]
  1436. }
  1437. Annotation {
  1438.   Name   "output power"
  1439.   Position   [842, 235]
  1440. }
  1441.       }
  1442.     }
  1443.     Block {
  1444.       BlockType       Display
  1445.       Name       "Boost efficiency"
  1446.       Ports       [1]
  1447.       Position       [825, 84, 910, 116]
  1448.       Decimation       "1"
  1449.       Lockdown       off
  1450.     }
  1451.     Block {
  1452.       BlockType       Product
  1453.       Name       "ComputenPpv"
  1454.       Ports       [2, 1]
  1455.       Position       [405, 282, 435, 313]
  1456.       InputSameDT       off
  1457.       OutDataTypeMode       "Inherit via internal rule"
  1458.       OutDataType       "sfix(16)"
  1459.       OutScaling       "2^0"
  1460.       OutDataTypeStr       "Inherit: Inherit via internal rule"
  1461.       SaturateOnIntegerOverflow off
  1462.       Port {
  1463. PortNumber 1
  1464. Name "Ppv"
  1465. RTWStorageClass "Auto"
  1466. DataLoggingNameMode "SignalName"
  1467.       }
  1468.     }
  1469.     Block {
  1470.       BlockType       Gain
  1471.       Name       "Convert tonkWh"
  1472.       Position       [430, 660, 470, 700]
  1473.       Gain       "1/60/1000"
  1474.       ParameterDataTypeMode   "Inherit via internal rule"
  1475.       ParameterDataType       "sfix(16)"
  1476.       ParameterScaling       "2^0"
  1477.       ParamDataTypeStr       "Inherit: Inherit via internal rule"
  1478.       OutDataTypeMode       "Inherit via internal rule"
  1479.       OutDataType       "sfix(16)"
  1480.       OutScaling       "2^0"
  1481.       OutDataTypeStr       "Inherit: Inherit via internal rule"
  1482.       SaturateOnIntegerOverflow off
  1483.     }
  1484.     Block {
  1485.       BlockType       Display
  1486.       Name       "Eideal"
  1487.       Ports       [1]
  1488.       Position       [485, 665, 570, 695]
  1489.       BackgroundColor       "green"
  1490.       Decimation       "1"
  1491.       Lockdown       off
  1492.     }
  1493.     Block {
  1494.       BlockType       Display
  1495.       Name       "Eout"
  1496.       Ports       [1]
  1497.       Position       [815, 670, 900, 700]
  1498.       BackgroundColor       "green"
  1499.       Decimation       "1"
  1500.       Lockdown       off
  1501.     }
  1502.     Block {
  1503.       BlockType       Display
  1504.       Name       "Epv"
  1505.       Ports       [1]
  1506.       Position       [540, 505, 625, 535]
  1507.       BackgroundColor       "green"
  1508.       Decimation       "1"
  1509.       Lockdown       off
  1510.     }
  1511.     Block {
  1512.       BlockType       Integrator
  1513.       Name       "Integrate nPideal"
  1514.       Ports       [1, 1]
  1515.       Position       [380, 665, 410, 695]
  1516.     }
  1517.     Block {
  1518.       BlockType       Integrator
  1519.       Name       "Integrate nPout"
  1520.       Ports       [1, 1]
  1521.       Position       [690, 670, 720, 700]
  1522.       NamePlacement       "alternate"
  1523.     }
  1524.     Block {
  1525.       BlockType       Integrator
  1526.       Name       "Integrate nPpv"
  1527.       Ports       [1, 1]
  1528.       Position       [435, 505, 465, 535]
  1529.     }
  1530.     Block {
  1531.       BlockType       Display
  1532.       Name       "Ipv"
  1533.       Ports       [1]
  1534.       Position       [420, 100, 510, 130]
  1535.       Decimation       "1"
  1536.       Lockdown       off
  1537.     }
  1538.     Block {
  1539.       BlockType       Gain
  1540.       Name       "Ipv = Iref"
  1541.       Position       [245, 566, 285, 604]
  1542.       Orientation       "left"
  1543.       ParameterDataTypeMode   "Inherit via internal rule"
  1544.       ParameterDataType       "sfix(16)"
  1545.       ParameterScaling       "2^0"
  1546.       ParamDataTypeStr       "Inherit: Inherit via internal rule"
  1547.       OutDataTypeMode       "Inherit via internal rule"
  1548.       OutDataType       "sfix(16)"
  1549.       OutScaling       "2^0"
  1550.       OutDataTypeStr       "Inherit: Inherit via internal rule"
  1551.       SaturateOnIntegerOverflow off
  1552.       Port {
  1553. PortNumber 1
  1554. Name "Ipv"
  1555. RTWStorageClass "Auto"
  1556. DataLoggingNameMode "SignalName"
  1557.       }
  1558.     }
  1559.     Block {
  1560.       BlockType       Constant
  1561.       Name       "Irefn(constant)"
  1562.       Position       [500, 345, 530, 375]
  1563.       Value       "4"
  1564.       OutDataType       "sfix(16)"
  1565.       OutScaling       "2^0"
  1566.     }
  1567.     Block {
  1568.       BlockType       SubSystem
  1569.       Name       "MPP trackingncontrollernMPPtrackIref.m"
  1570.       Ports       [1, 1]
  1571.       Position       [475, 278, 555, 322]
  1572.       BackgroundColor       "yellow"
  1573.       NamePlacement       "alternate"
  1574.       MinAlgLoopOccurrences   off
  1575.       PropExecContextOutsideSubsystem off
  1576.       RTWSystemCode       "Auto"
  1577.       FunctionWithSeparateData off
  1578.       Opaque       off
  1579.       RequestExecContextInheritance off
  1580.       MaskHideContents       off
  1581.       MaskPromptString       "Sample interval"
  1582.       MaskStyleString       "edit"
  1583.       MaskTunableValueString  "on"
  1584.       MaskEnableString       "on"
  1585.       MaskVisibilityString    "on"
  1586.       MaskToolTipString       "on"
  1587.       MaskVariables       "Tsample=@1;"
  1588.       MaskInitialization      "InitializeMPPtrackIref"
  1589.       MaskDisplay       "text(0.5,0.5,'MPPT','horizontalAlignment', 'center');"
  1590.       MaskIconFrame       on
  1591.       MaskIconOpaque       off
  1592.       MaskIconRotate       "none"
  1593.       MaskIconUnits       "normalized"
  1594.       MaskValueString       "0.2"
  1595.       Port {
  1596. PortNumber 1
  1597. Name "Iref1"
  1598. RTWStorageClass "Auto"
  1599. DataLoggingNameMode "SignalName"
  1600.       }
  1601.       System {
  1602. Name "MPP trackingncontrollernMPPtrackIref.m"
  1603. Location [542, 416, 1144, 643]
  1604. Open off
  1605. ModelBrowserVisibility off
  1606. ModelBrowserWidth 200
  1607. ScreenColor "white"
  1608. PaperOrientation "landscape"
  1609. PaperPositionMode "auto"
  1610. PaperType "usletter"
  1611. PaperUnits "inches"
  1612. TiledPaperMargins [0.500000, 0.500000, 0.500000, 0.500000]
  1613. TiledPageScale 1
  1614. ShowPageBoundaries off
  1615. ZoomFactor "100"
  1616. Block {
  1617.   BlockType   Inport
  1618.   Name   "P"
  1619.   Position   [60, 103, 90, 117]
  1620.   IconDisplay   "Port number"
  1621.   OutDataType   "sfix(16)"
  1622.   OutScaling   "2^0"
  1623. }
  1624. Block {
  1625.   BlockType   TransportDelay
  1626.   Name   "Delay"
  1627.   Position   [400, 95, 430, 125]
  1628.   DelayTime   "Tsample/2"
  1629. }
  1630. Block {
  1631.   BlockType   MATLABFcn
  1632.   Name   "MPP trackingnalgorithmn(MPPtrackIref.m)"
  1633.   Ports   [1, 1]
  1634.   Position   [270, 95, 330, 125]
  1635.   MATLABFcn   "MPPtrackIref"
  1636. }
  1637. Block {
  1638.   BlockType   ZeroOrderHold
  1639.   Name   "Measure (sample)nPower"
  1640.   Position   [160, 95, 195, 125]
  1641.   SampleTime   "Tsample"
  1642. }
  1643. Block {
  1644.   BlockType   Outport
  1645.   Name   "Iref"
  1646.   Position   [490, 103, 520, 117]
  1647.   IconDisplay   "Port number"
  1648.   OutDataType   "sfix(16)"
  1649.   OutScaling   "2^0"
  1650. }
  1651. Line {
  1652.   SrcBlock   "P"
  1653.   SrcPort   1
  1654.   DstBlock   "Measure (sample)nPower"
  1655.   DstPort   1
  1656. }
  1657. Line {
  1658.   SrcBlock   "Measure (sample)nPower"
  1659.   SrcPort   1
  1660.   DstBlock   "MPP trackingnalgorithmn(MPPtrackIref.m)"
  1661.   DstPort   1
  1662. }
  1663. Line {
  1664.   SrcBlock   "MPP trackingnalgorithmn(MPPtrackIref.m)"
  1665.   SrcPort   1
  1666.   DstBlock   "Delay"
  1667.   DstPort   1
  1668. }
  1669. Line {
  1670.   SrcBlock   "Delay"
  1671.   SrcPort   1
  1672.   DstBlock   "Iref"
  1673.   DstPort   1
  1674. }
  1675. Annotation {
  1676.   Name   "ECEN 2060 MPP Tracking controller"
  1677.   Position   [332, 48]
  1678. }
  1679.       }
  1680.     }
  1681.     Block {
  1682.       BlockType       Mux
  1683.       Name       "Mux"
  1684.       Ports       [3, 1]
  1685.       Position       [750, 581, 755, 619]
  1686.       ShowName       off
  1687.       Inputs       "3"
  1688.       DisplayOption       "bar"
  1689.       Port {
  1690. PortNumber 1
  1691. Name "Pout, Ppv, Pideal"
  1692. PropagatedSignals "Pout, Ppv, Ppvnideal"
  1693. RTWStorageClass "Auto"
  1694. DataLoggingNameMode "SignalName"
  1695.       }
  1696.     }
  1697.     Block {
  1698.       BlockType       Scope
  1699.       Name       "PV MPPnscope"
  1700.       Ports       [5]
  1701.       Position       [855, 151, 885, 309]
  1702.       Floating       off
  1703.       Location       [1, 46, 1281, 739]
  1704.       Open       off
  1705.       NumInputPorts       "5"
  1706.       List {
  1707. ListType AxesTitles
  1708. axes1 "%<SignalLabel>"
  1709. axes2 "%<SignalLabel>"
  1710. axes3 "%<SignalLabel>"
  1711. axes4 "%<SignalLabel>"
  1712. axes5 "%<SignalLabel>"
  1713.       }
  1714.       TimeRange       "500"
  1715.       YMin       "0~0.4~-50~0~-500"
  1716.       YMax       "1~1~150~6~1000"
  1717.       SaveName       "ScopeData1"
  1718.       DataFormat       "StructureWithTime"
  1719.       LimitDataPoints       off
  1720.       SampleTime       "0"
  1721.     }
  1722.     Block {
  1723.       BlockType       SubSystem
  1724.       Name       "PV1"
  1725.       Ports       [2, 2]
  1726.       Position       [175, 52, 285, 103]
  1727.       MinAlgLoopOccurrences   off
  1728.       PropExecContextOutsideSubsystem off
  1729.       RTWSystemCode       "Auto"
  1730.       FunctionWithSeparateData off
  1731.       Opaque       off
  1732.       RequestExecContextInheritance off
  1733.       MaskHideContents       off
  1734.       MaskDescription       "PV module model based on module data-sheet parameters. This model has Ipv input, which is suitable for series connections. Limitations: no temperature dependance, static model"
  1735.       MaskPromptString       "Short-circuit current|Open-circuit voltage|Current at Pmax|Voltage at Pmax|By-pass diode?"
  1736.       MaskStyleString       "edit,edit,edit,edit,checkbox"
  1737.       MaskTunableValueString  "on,on,on,on,on"
  1738.       MaskCallbackString      "||||"
  1739.       MaskEnableString       "on,on,on,on,on"
  1740.       MaskVisibilityString    "on,on,on,on,on"
  1741.       MaskToolTipString       "on,on,on,on,on"
  1742.       MaskVarAliasString      ",,,,"
  1743.       MaskVariables       "Isc=@1;Voc=@2;Ir=@3;Vr=@4;Diode=@5;"
  1744.       MaskInitialization      "% calculation of PV module parametersn% limitation: constant temperaturenNs = round(Voc/0.61); % default number of cells in seriesnVt = 26e-3; % thermal voltagenG = Isc/1000; % irradiation to short-circuit current gainnVmpc = Vr/Ns; % cell voltage at rated PmaxnVocc = Voc/Ns; % cell open-circuit voltagenRmpp = Vmpc/Ir; % cell load resistance at Pmaxn%nRp = 100*Vocc/Isc; % initial value for RpnVdm = Vocc; % initial value for Vdmn%n% iterative solution for model parameters: Io, Rs, Rpnfor i=1:10n%n Idm = Isc - Ir - Vdm/Rp; % pn-junction (diode) current at MPPn Io = (Isc-Vocc/Rp)/(exp(Vocc/Vt)-1); % pn-junction reverse saturation currentn Vdm = Vt*log(Idm/Io+1); % pn-junction (diode) voltage at MPPn Rs = (Vdm-Vmpc)/Ir; % cell series resistancen Rd = (Rmpp - Rs)*Rp/(Rp-Rmpp+Rs); % diode incremental resistance at MPPn Idm = Vt/Rd; % diode current at MPP based on incremental resistancen Rp = Vdm/(Isc-Ir-Idm); % cell parallel resistancen%nendn%"
  1745.       MaskDisplay       "plot([0.3 0.4],[0.4 0.8]);nplot([0.4 0.5],[0.4 0.8]);nplot([0.5 0.6],[0.4 0.8]);nplot([0.6 0.7],[0.4 0.8]);nplot([0.3 0.6],[0.4 0.4]);nplot([0.325 0.625],[0.5 0.5]);nplot([0.35 0.65],[0.6 0.6]);nplot([0.375 0.675],[0.7 0.7]);nplot([0.4 0.7],[0.8 0.8]);ntext(0.5,0.9,'PV module (I)','horizontalAlignment', 'center');n"
  1746.       MaskIconFrame       on
  1747.       MaskIconOpaque       off
  1748.       MaskIconRotate       "none"
  1749.       MaskIconUnits       "normalized"
  1750.       MaskValueString       "5.45|22.2|4.95|17.2|on"
  1751.       MaskTabNameString       ",,,,"
  1752.       System {
  1753. Name "PV1"
  1754. Location [332, 390, 1368, 851]
  1755. Open off
  1756. ModelBrowserVisibility off
  1757. ModelBrowserWidth 200
  1758. ScreenColor "white"
  1759. PaperOrientation "landscape"
  1760. PaperPositionMode "auto"
  1761. PaperType "usletter"
  1762. PaperUnits "inches"
  1763. TiledPaperMargins [0.500000, 0.500000, 0.500000, 0.500000]
  1764. TiledPageScale 1
  1765. ShowPageBoundaries off
  1766. ZoomFactor "100"
  1767. Block {
  1768.   BlockType   Inport
  1769.   Name   "Ipv"
  1770.   Position   [25, 168, 55, 182]
  1771.   IconDisplay   "Port number"
  1772.   OutDataType   "sfix(16)"
  1773.   OutScaling   "2^0"
  1774.   Port {
  1775.     PortNumber     1
  1776.     Name     "Ipv"
  1777.     PropagatedSignals     "Ipv"
  1778.     RTWStorageClass     "Auto"
  1779.     DataLoggingNameMode     "SignalName"
  1780.   }
  1781. }
  1782. Block {
  1783.   BlockType   Inport
  1784.   Name   "Insolation"
  1785.   Position   [25, 273, 55, 287]
  1786.   Port   "2"
  1787.   IconDisplay   "Port number"
  1788.   OutDataType   "sfix(16)"
  1789.   OutScaling   "2^0"
  1790. }
  1791. Block {
  1792.   BlockType   Gain
  1793.   Name   "1/Rp"
  1794.   Position   [445, 390, 490, 420]
  1795.   Orientation   "left"
  1796.   Gain   "1/Rp"
  1797.   ParameterDataTypeMode   "Inherit via internal rule"
  1798.   ParameterDataType   "sfix(16)"
  1799.   ParameterScaling   "2^0"
  1800.   ParamDataTypeStr   "Inherit: Inherit via internal rule"
  1801.   OutDataTypeMode   "Inherit via internal rule"
  1802.   OutDataType   "sfix(16)"
  1803.   OutScaling   "2^0"
  1804.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1805.   SaturateOnIntegerOverflow off
  1806.   Port {
  1807.     PortNumber     1
  1808.     Name     "Vd/Rp"
  1809.     RTWStorageClass     "Auto"
  1810.     DataLoggingNameMode     "SignalName"
  1811.   }
  1812. }
  1813. Block {
  1814.   BlockType   Reference
  1815.   Name   "Algebraic Constraint"
  1816.   Ports   [1, 1]
  1817.   Position   [410, 265, 490, 295]
  1818.   SourceBlock   "simulink/MathnOperations/Algebraic Constraint"
  1819.   SourceType   "Algebraic Constraint"
  1820.   ShowPortLabels   "FromPortIcon"
  1821.   SystemSampleTime   "-1"
  1822.   FunctionWithSeparateData off
  1823.   RTWMemSecFuncInitTerm   "Inherit from model"
  1824.   RTWMemSecFuncExecute   "Inherit from model"
  1825.   RTWMemSecDataConstants  "Inherit from model"
  1826.   RTWMemSecDataInternal   "Inherit from model"
  1827.   RTWMemSecDataParameters "Inherit from model"
  1828.   z0   "0"
  1829.   Port {
  1830.     PortNumber     1
  1831.     Name     "Vd"
  1832.     RTWStorageClass     "Auto"
  1833.     DataLoggingNameMode     "SignalName"
  1834.   }
  1835. }
  1836. Block {
  1837.   BlockType   Fcn
  1838.   Name   "By-pass diode"
  1839.   Position   [420, 67, 550, 103]
  1840.   Expr   "-Vt*log((u/Io)+1)"
  1841. }
  1842. Block {
  1843.   BlockType   Constant
  1844.   Name   "Constant"
  1845.   Position   [745, 190, 775, 220]
  1846.   Value   "Diode"
  1847.   OutDataType   "sfix(16)"
  1848.   OutScaling   "2^0"
  1849. }
  1850. Block {
  1851.   BlockType   Gain
  1852.   Name   "Insolation to ncurrent gain"
  1853.   Position   [115, 264, 160, 296]
  1854.   Gain   "G"
  1855.   ParameterDataTypeMode   "Inherit via internal rule"
  1856.   ParameterDataType   "sfix(16)"
  1857.   ParameterScaling   "2^0"
  1858.   ParamDataTypeStr   "Inherit: Inherit via internal rule"
  1859.   OutDataTypeMode   "Inherit via internal rule"
  1860.   OutDataType   "sfix(16)"
  1861.   OutScaling   "2^0"
  1862.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1863.   SaturateOnIntegerOverflow off
  1864.   Port {
  1865.     PortNumber     1
  1866.     Name     "Iph"
  1867.     RTWStorageClass     "Auto"
  1868.     DataLoggingNameMode     "SignalName"
  1869.   }
  1870. }
  1871. Block {
  1872.   BlockType   MinMax
  1873.   Name   "MinMax"
  1874.   Ports   [2, 1]
  1875.   Position   [750, 77, 780, 108]
  1876.   Function   "max"
  1877.   Inputs   "2"
  1878.   InputSameDT   off
  1879.   OutDataType   "sfix(16)"
  1880.   OutScaling   "2^0"
  1881.   SaturateOnIntegerOverflow off
  1882. }
  1883. Block {
  1884.   BlockType   Gain
  1885.   Name   "Ns"
  1886.   Position   [655, 262, 695, 298]
  1887.   Gain   "Ns"
  1888.   ParameterDataTypeMode   "Inherit via internal rule"
  1889.   ParameterDataType   "sfix(16)"
  1890.   ParameterScaling   "2^0"
  1891.   ParamDataTypeStr   "Inherit: Inherit via internal rule"
  1892.   OutDataTypeMode   "Inherit via internal rule"
  1893.   OutDataType   "sfix(16)"
  1894.   OutScaling   "2^0"
  1895.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1896.   SaturateOnIntegerOverflow off
  1897. }
  1898. Block {
  1899.   BlockType   Fcn
  1900.   Name   "PN-junction characteristic"
  1901.   Position   [430, 334, 510, 366]
  1902.   Orientation   "left"
  1903.   Expr   "Io*(exp(u/Vt)-1)"
  1904.   Port {
  1905.     PortNumber     1
  1906.     Name     "Id"
  1907.     RTWStorageClass     "Auto"
  1908.     DataLoggingNameMode     "SignalName"
  1909.   }
  1910. }
  1911. Block {
  1912.   BlockType   Product
  1913.   Name   "Product"
  1914.   Ports   [2, 1]
  1915.   Position   [905, 152, 935, 183]
  1916.   InputSameDT   off
  1917.   OutDataTypeMode   "Inherit via internal rule"
  1918.   OutDataType   "sfix(16)"
  1919.   OutScaling   "2^0"
  1920.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1921.   SaturateOnIntegerOverflow off
  1922. }
  1923. Block {
  1924.   BlockType   Gain
  1925.   Name   "Rs"
  1926.   Position   [420, 160, 460, 190]
  1927.   NamePlacement   "alternate"
  1928.   Gain   "Rs"
  1929.   ParameterDataTypeMode   "Inherit via internal rule"
  1930.   ParameterDataType   "sfix(16)"
  1931.   ParameterScaling   "2^0"
  1932.   ParamDataTypeStr   "Inherit: Inherit via internal rule"
  1933.   OutDataTypeMode   "Inherit via internal rule"
  1934.   OutDataType   "sfix(16)"
  1935.   OutScaling   "2^0"
  1936.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1937.   SaturateOnIntegerOverflow off
  1938. }
  1939. Block {
  1940.   BlockType   Saturate
  1941.   Name   "Saturation"
  1942.   Position   [290, 35, 320, 65]
  1943.   UpperLimit   "inf"
  1944.   LowerLimit   "0"
  1945. }
  1946. Block {
  1947.   BlockType   Sum
  1948.   Name   "Sum1"
  1949.   Ports   [2, 1]
  1950.   Position   [575, 270, 595, 290]
  1951.   ShowName   off
  1952.   IconShape   "round"
  1953.   Inputs   "-+|"
  1954.   InputSameDT   off
  1955.   OutDataTypeMode   "Inherit via internal rule"
  1956.   OutDataType   "sfix(16)"
  1957.   OutScaling   "2^0"
  1958.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1959.   SaturateOnIntegerOverflow off
  1960.   Port {
  1961.     PortNumber     1
  1962.     Name     "Vpvcell"
  1963.     RTWStorageClass     "Auto"
  1964.     DataLoggingNameMode     "SignalName"
  1965.   }
  1966. }
  1967. Block {
  1968.   BlockType   Sum
  1969.   Name   "Sum2"
  1970.   Ports   [2, 1]
  1971.   Position   [325, 340, 345, 360]
  1972.   Orientation   "left"
  1973.   ShowName   off
  1974.   IconShape   "round"
  1975.   Inputs   "|++"
  1976.   InputSameDT   off
  1977.   OutDataTypeMode   "Inherit via internal rule"
  1978.   OutDataType   "sfix(16)"
  1979.   OutScaling   "2^0"
  1980.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1981.   SaturateOnIntegerOverflow off
  1982. }
  1983. Block {
  1984.   BlockType   Sum
  1985.   Name   "Sum3"
  1986.   Ports   [2, 1]
  1987.   Position   [225, 270, 245, 290]
  1988.   ShowName   off
  1989.   IconShape   "round"
  1990.   Inputs   "-+|"
  1991.   InputSameDT   off
  1992.   OutDataTypeMode   "Inherit via internal rule"
  1993.   OutDataType   "sfix(16)"
  1994.   OutScaling   "2^0"
  1995.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  1996.   SaturateOnIntegerOverflow off
  1997. }
  1998. Block {
  1999.   BlockType   Sum
  2000.   Name   "Sum4"
  2001.   Ports   [2, 1]
  2002.   Position   [285, 270, 305, 290]
  2003.   ShowName   off
  2004.   IconShape   "round"
  2005.   Inputs   "|+-"
  2006.   InputSameDT   off
  2007.   OutDataTypeMode   "Inherit via internal rule"
  2008.   OutDataType   "sfix(16)"
  2009.   OutScaling   "2^0"
  2010.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  2011.   SaturateOnIntegerOverflow off
  2012. }
  2013. Block {
  2014.   BlockType   Switch
  2015.   Name   "Switch"
  2016.   Position   [840, 255, 870, 285]
  2017.   Criteria   "u2 > Threshold"
  2018.   InputSameDT   off
  2019.   SaturateOnIntegerOverflow off
  2020. }
  2021. Block {
  2022.   BlockType   Outport
  2023.   Name   "Vpv"
  2024.   Position   [980, 263, 1010, 277]
  2025.   IconDisplay   "Port number"
  2026.   OutDataType   "sfix(16)"
  2027.   OutScaling   "2^0"
  2028. }
  2029. Block {
  2030.   BlockType   Outport
  2031.   Name   "Ppv"
  2032.   Position   [980, 163, 1010, 177]
  2033.   Port   "2"
  2034.   IconDisplay   "Port number"
  2035.   OutDataType   "sfix(16)"
  2036.   OutScaling   "2^0"
  2037. }
  2038. Line {
  2039.   SrcBlock   "Insolation"
  2040.   SrcPort   1
  2041.   DstBlock   "Insolation to ncurrent gain"
  2042.   DstPort   1
  2043. }
  2044. Line {
  2045.   Name   "Iph"
  2046.   Labels   [1, 0]
  2047.   SrcBlock   "Insolation to ncurrent gain"
  2048.   SrcPort   1
  2049.   DstBlock   "Sum3"
  2050.   DstPort   2
  2051. }
  2052. Line {
  2053.   Name   "Ipv"
  2054.   Labels   [0, 0]
  2055.   SrcBlock   "Ipv"
  2056.   SrcPort   1
  2057.   Points   [30, 0]
  2058.   Branch {
  2059.     Points     [0, -125]
  2060.     DstBlock     "Saturation"
  2061.     DstPort     1
  2062.   }
  2063.   Branch {
  2064.     Points     [145, 0]
  2065.     Branch {
  2066.       Labels       [1, 0]
  2067.       DstBlock       "Sum3"
  2068.       DstPort       1
  2069.     }
  2070.     Branch {
  2071.       DstBlock       "Rs"
  2072.       DstPort       1
  2073.     }
  2074.   }
  2075. }
  2076. Line {
  2077.   SrcBlock   "Product"
  2078.   SrcPort   1
  2079.   DstBlock   "Ppv"
  2080.   DstPort   1
  2081. }
  2082. Line {
  2083.   SrcBlock   "Sum4"
  2084.   SrcPort   1
  2085.   DstBlock   "Algebraic Constraint"
  2086.   DstPort   1
  2087. }
  2088. Line {
  2089.   Name   "Vd"
  2090.   Labels   [0, 0]
  2091.   SrcBlock   "Algebraic Constraint"
  2092.   SrcPort   1
  2093.   Points   [50, 0]
  2094.   Branch {
  2095.     DstBlock     "Sum1"
  2096.     DstPort     2
  2097.   }
  2098.   Branch {
  2099.     Points     [0, 70]
  2100.     Branch {
  2101.       Points       [0, 55]
  2102.       DstBlock       "1/Rp"
  2103.       DstPort       1
  2104.     }
  2105.     Branch {
  2106.       DstBlock       "PN-junction characteristic"
  2107.       DstPort       1
  2108.     }
  2109.   }
  2110. }
  2111. Line {
  2112.   Name   "Vpvcell"
  2113.   Labels   [0, 0]
  2114.   SrcBlock   "Sum1"
  2115.   SrcPort   1
  2116.   DstBlock   "Ns"
  2117.   DstPort   1
  2118. }
  2119. Line {
  2120.   SrcBlock   "Rs"
  2121.   SrcPort   1
  2122.   Points   [120, 0]
  2123.   DstBlock   "Sum1"
  2124.   DstPort   1
  2125. }
  2126. Line {
  2127.   SrcBlock   "By-pass diode"
  2128.   SrcPort   1
  2129.   DstBlock   "MinMax"
  2130.   DstPort   1
  2131. }
  2132. Line {
  2133.   SrcBlock   "Ns"
  2134.   SrcPort   1
  2135.   Points   [20, 0]
  2136.   Branch {
  2137.     Points     [0, -180]
  2138.     DstBlock     "MinMax"
  2139.     DstPort     2
  2140.   }
  2141.   Branch {
  2142.     DstBlock     "Switch"
  2143.     DstPort     3
  2144.   }
  2145. }
  2146. Line {
  2147.   SrcBlock   "MinMax"
  2148.   SrcPort   1
  2149.   Points   [30, 0; 0, 165]
  2150.   DstBlock   "Switch"
  2151.   DstPort   1
  2152. }
  2153. Line {
  2154.   SrcBlock   "Constant"
  2155.   SrcPort   1
  2156.   Points   [10, 0; 0, 65]
  2157.   DstBlock   "Switch"
  2158.   DstPort   2
  2159. }
  2160. Line {
  2161.   SrcBlock   "Switch"
  2162.   SrcPort   1
  2163.   Points   [15, 0]
  2164.   Branch {
  2165.     DstBlock     "Vpv"
  2166.     DstPort     1
  2167.   }
  2168.   Branch {
  2169.     DstBlock     "Product"
  2170.     DstPort     2
  2171.   }
  2172. }
  2173. Line {
  2174.   SrcBlock   "Saturation"
  2175.   SrcPort   1
  2176.   Points   [55, 0]
  2177.   Branch {
  2178.     Points     [500, 0; 0, 110]
  2179.     DstBlock     "Product"
  2180.     DstPort     1
  2181.   }
  2182.   Branch {
  2183.     Points     [0, 35]
  2184.     DstBlock     "By-pass diode"
  2185.     DstPort     1
  2186.   }
  2187. }
  2188. Line {
  2189.   SrcBlock   "Sum3"
  2190.   SrcPort   1
  2191.   DstBlock   "Sum4"
  2192.   DstPort   1
  2193. }
  2194. Line {
  2195.   SrcBlock   "Sum2"
  2196.   SrcPort   1
  2197.   Points   [-25, 0]
  2198.   DstBlock   "Sum4"
  2199.   DstPort   2
  2200. }
  2201. Line {
  2202.   Name   "Id"
  2203.   Labels   [0, 0]
  2204.   SrcBlock   "PN-junction characteristic"
  2205.   SrcPort   1
  2206.   DstBlock   "Sum2"
  2207.   DstPort   1
  2208. }
  2209. Line {
  2210.   Name   "Vd/Rp"
  2211.   Labels   [0, 0]
  2212.   SrcBlock   "1/Rp"
  2213.   SrcPort   1
  2214.   Points   [-105, 0]
  2215.   DstBlock   "Sum2"
  2216.   DstPort   2
  2217. }
  2218.       }
  2219.     }
  2220.     Block {
  2221.       BlockType       SubSystem
  2222.       Name       "PV2"
  2223.       Ports       [2, 2]
  2224.       Position       [175, 142, 285, 193]
  2225.       MinAlgLoopOccurrences   off
  2226.       PropExecContextOutsideSubsystem off
  2227.       RTWSystemCode       "Auto"
  2228.       FunctionWithSeparateData off
  2229.       Opaque       off
  2230.       RequestExecContextInheritance off
  2231.       MaskHideContents       off
  2232.       MaskDescription       "PV module model based on module data-sheet parameters. This model has Ipv input, which is suitable for series connections. Limitations: no temperature dependance, static model"
  2233.       MaskPromptString       "Short-circuit current|Open-circuit voltage|Current at Pmax|Voltage at Pmax|By-pass diode?"
  2234.       MaskStyleString       "edit,edit,edit,edit,checkbox"
  2235.       MaskTunableValueString  "on,on,on,on,on"
  2236.       MaskCallbackString      "||||"
  2237.       MaskEnableString       "on,on,on,on,on"
  2238.       MaskVisibilityString    "on,on,on,on,on"
  2239.       MaskToolTipString       "on,on,on,on,on"
  2240.       MaskVarAliasString      ",,,,"
  2241.       MaskVariables       "Isc=@1;Voc=@2;Ir=@3;Vr=@4;Diode=@5;"
  2242.       MaskInitialization      "% calculation of PV module parametersn% limitation: constant temperaturenNs = round(Voc/0.61); % default number of cells in seriesnVt = 26e-3; % thermal voltagenG = Isc/1000; % irradiation to short-circuit current gainnVmpc = Vr/Ns; % cell voltage at rated PmaxnVocc = Voc/Ns; % cell open-circuit voltagenRmpp = Vmpc/Ir; % cell load resistance at Pmaxn%nRp = 100*Vocc/Isc; % initial value for RpnVdm = Vocc; % initial value for Vdmn%n% iterative solution for model parameters: Io, Rs, Rpnfor i=1:10n%n Idm = Isc - Ir - Vdm/Rp; % pn-junction (diode) current at MPPn Io = (Isc-Vocc/Rp)/(exp(Vocc/Vt)-1); % pn-junction reverse saturation currentn Vdm = Vt*log(Idm/Io+1); % pn-junction (diode) voltage at MPPn Rs = (Vdm-Vmpc)/Ir; % cell series resistancen Rd = (Rmpp - Rs)*Rp/(Rp-Rmpp+Rs); % diode incremental resistance at MPPn Idm = Vt/Rd; % diode current at MPP based on incremental resistancen Rp = Vdm/(Isc-Ir-Idm); % cell parallel resistancen%nendn%"
  2243.       MaskDisplay       "plot([0.3 0.4],[0.4 0.8]);nplot([0.4 0.5],[0.4 0.8]);nplot([0.5 0.6],[0.4 0.8]);nplot([0.6 0.7],[0.4 0.8]);nplot([0.3 0.6],[0.4 0.4]);nplot([0.325 0.625],[0.5 0.5]);nplot([0.35 0.65],[0.6 0.6]);nplot([0.375 0.675],[0.7 0.7]);nplot([0.4 0.7],[0.8 0.8]);ntext(0.5,0.9,'PV module (I)','horizontalAlignment', 'center');n"
  2244.       MaskIconFrame       on
  2245.       MaskIconOpaque       off
  2246.       MaskIconRotate       "none"
  2247.       MaskIconUnits       "normalized"
  2248.       MaskValueString       "5.45|22.2|4.95|17.2|on"
  2249.       MaskTabNameString       ",,,,"
  2250.       System {
  2251. Name "PV2"
  2252. Location [164, 268, 1200, 729]
  2253. Open off
  2254. ModelBrowserVisibility off
  2255. ModelBrowserWidth 200
  2256. ScreenColor "white"
  2257. PaperOrientation "landscape"
  2258. PaperPositionMode "auto"
  2259. PaperType "usletter"
  2260. PaperUnits "inches"
  2261. TiledPaperMargins [0.500000, 0.500000, 0.500000, 0.500000]
  2262. TiledPageScale 1
  2263. ShowPageBoundaries off
  2264. ZoomFactor "100"
  2265. Block {
  2266.   BlockType   Inport
  2267.   Name   "Ipv"
  2268.   Position   [25, 168, 55, 182]
  2269.   IconDisplay   "Port number"
  2270.   OutDataType   "sfix(16)"
  2271.   OutScaling   "2^0"
  2272.   Port {
  2273.     PortNumber     1
  2274.     Name     "Ipv"
  2275.     PropagatedSignals     "Ipv"
  2276.     RTWStorageClass     "Auto"
  2277.     DataLoggingNameMode     "SignalName"
  2278.   }
  2279. }
  2280. Block {
  2281.   BlockType   Inport
  2282.   Name   "Insolation"
  2283.   Position   [25, 273, 55, 287]
  2284.   Port   "2"
  2285.   IconDisplay   "Port number"
  2286.   OutDataType   "sfix(16)"
  2287.   OutScaling   "2^0"
  2288. }
  2289. Block {
  2290.   BlockType   Gain
  2291.   Name   "1/Rp"
  2292.   Position   [445, 390, 490, 420]
  2293.   Orientation   "left"
  2294.   Gain   "1/Rp"
  2295.   ParameterDataTypeMode   "Inherit via internal rule"
  2296.   ParameterDataType   "sfix(16)"
  2297.   ParameterScaling   "2^0"
  2298.   ParamDataTypeStr   "Inherit: Inherit via internal rule"
  2299.   OutDataTypeMode   "Inherit via internal rule"
  2300.   OutDataType   "sfix(16)"
  2301.   OutScaling   "2^0"
  2302.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  2303.   SaturateOnIntegerOverflow off
  2304.   Port {
  2305.     PortNumber     1
  2306.     Name     "Vd/Rp"
  2307.     RTWStorageClass     "Auto"
  2308.     DataLoggingNameMode     "SignalName"
  2309.   }
  2310. }
  2311. Block {
  2312.   BlockType   Reference
  2313.   Name   "Algebraic Constraint"
  2314.   Ports   [1, 1]
  2315.   Position   [410, 265, 490, 295]
  2316.   SourceBlock   "simulink/MathnOperations/Algebraic Constraint"
  2317.   SourceType   "Algebraic Constraint"
  2318.   ShowPortLabels   "FromPortIcon"
  2319.   SystemSampleTime   "-1"
  2320.   FunctionWithSeparateData off
  2321.   RTWMemSecFuncInitTerm   "Inherit from model"
  2322.   RTWMemSecFuncExecute   "Inherit from model"
  2323.   RTWMemSecDataConstants  "Inherit from model"
  2324.   RTWMemSecDataInternal   "Inherit from model"
  2325.   RTWMemSecDataParameters "Inherit from model"
  2326.   z0   "0"
  2327.   Port {
  2328.     PortNumber     1
  2329.     Name     "Vd"
  2330.     RTWStorageClass     "Auto"
  2331.     DataLoggingNameMode     "SignalName"
  2332.   }
  2333. }
  2334. Block {
  2335.   BlockType   Fcn
  2336.   Name   "By-pass diode"
  2337.   Position   [420, 67, 550, 103]
  2338.   Expr   "-Vt*log((u/Io)+1)"
  2339. }
  2340. Block {
  2341.   BlockType   Constant
  2342.   Name   "Constant"
  2343.   Position   [745, 190, 775, 220]
  2344.   Value   "Diode"
  2345.   OutDataType   "sfix(16)"
  2346.   OutScaling   "2^0"
  2347. }
  2348. Block {
  2349.   BlockType   Gain
  2350.   Name   "Insolation to ncurrent gain"
  2351.   Position   [115, 264, 160, 296]
  2352.   Gain   "G"
  2353.   ParameterDataTypeMode   "Inherit via internal rule"
  2354.   ParameterDataType   "sfix(16)"
  2355.   ParameterScaling   "2^0"
  2356.   ParamDataTypeStr   "Inherit: Inherit via internal rule"
  2357.   OutDataTypeMode   "Inherit via internal rule"
  2358.   OutDataType   "sfix(16)"
  2359.   OutScaling   "2^0"
  2360.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  2361.   SaturateOnIntegerOverflow off
  2362.   Port {
  2363.     PortNumber     1
  2364.     Name     "Iph"
  2365.     RTWStorageClass     "Auto"
  2366.     DataLoggingNameMode     "SignalName"
  2367.   }
  2368. }
  2369. Block {
  2370.   BlockType   MinMax
  2371.   Name   "MinMax"
  2372.   Ports   [2, 1]
  2373.   Position   [750, 77, 780, 108]
  2374.   Function   "max"
  2375.   Inputs   "2"
  2376.   InputSameDT   off
  2377.   OutDataType   "sfix(16)"
  2378.   OutScaling   "2^0"
  2379.   SaturateOnIntegerOverflow off
  2380. }
  2381. Block {
  2382.   BlockType   Gain
  2383.   Name   "Ns"
  2384.   Position   [655, 262, 695, 298]
  2385.   Gain   "Ns"
  2386.   ParameterDataTypeMode   "Inherit via internal rule"
  2387.   ParameterDataType   "sfix(16)"
  2388.   ParameterScaling   "2^0"
  2389.   ParamDataTypeStr   "Inherit: Inherit via internal rule"
  2390.   OutDataTypeMode   "Inherit via internal rule"
  2391.   OutDataType   "sfix(16)"
  2392.   OutScaling   "2^0"
  2393.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  2394.   SaturateOnIntegerOverflow off
  2395. }
  2396. Block {
  2397.   BlockType   Fcn
  2398.   Name   "PN-junction characteristic"
  2399.   Position   [430, 334, 510, 366]
  2400.   Orientation   "left"
  2401.   Expr   "Io*(exp(u/Vt)-1)"
  2402.   Port {
  2403.     PortNumber     1
  2404.     Name     "Id"
  2405.     RTWStorageClass     "Auto"
  2406.     DataLoggingNameMode     "SignalName"
  2407.   }
  2408. }
  2409. Block {
  2410.   BlockType   Product
  2411.   Name   "Product"
  2412.   Ports   [2, 1]
  2413.   Position   [905, 152, 935, 183]
  2414.   InputSameDT   off
  2415.   OutDataTypeMode   "Inherit via internal rule"
  2416.   OutDataType   "sfix(16)"
  2417.   OutScaling   "2^0"
  2418.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  2419.   SaturateOnIntegerOverflow off
  2420. }
  2421. Block {
  2422.   BlockType   Gain
  2423.   Name   "Rs"
  2424.   Position   [420, 160, 460, 190]
  2425.   NamePlacement   "alternate"
  2426.   Gain   "Rs"
  2427.   ParameterDataTypeMode   "Inherit via internal rule"
  2428.   ParameterDataType   "sfix(16)"
  2429.   ParameterScaling   "2^0"
  2430.   ParamDataTypeStr   "Inherit: Inherit via internal rule"
  2431.   OutDataTypeMode   "Inherit via internal rule"
  2432.   OutDataType   "sfix(16)"
  2433.   OutScaling   "2^0"
  2434.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  2435.   SaturateOnIntegerOverflow off
  2436. }
  2437. Block {
  2438.   BlockType   Saturate
  2439.   Name   "Saturation"
  2440.   Position   [290, 35, 320, 65]
  2441.   UpperLimit   "inf"
  2442.   LowerLimit   "0"
  2443. }
  2444. Block {
  2445.   BlockType   Sum
  2446.   Name   "Sum1"
  2447.   Ports   [2, 1]
  2448.   Position   [575, 270, 595, 290]
  2449.   ShowName   off
  2450.   IconShape   "round"
  2451.   Inputs   "-+|"
  2452.   InputSameDT   off
  2453.   OutDataTypeMode   "Inherit via internal rule"
  2454.   OutDataType   "sfix(16)"
  2455.   OutScaling   "2^0"
  2456.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  2457.   SaturateOnIntegerOverflow off
  2458.   Port {
  2459.     PortNumber     1
  2460.     Name     "Vpvcell"
  2461.     RTWStorageClass     "Auto"
  2462.     DataLoggingNameMode     "SignalName"
  2463.   }
  2464. }
  2465. Block {
  2466.   BlockType   Sum
  2467.   Name   "Sum2"
  2468.   Ports   [2, 1]
  2469.   Position   [325, 340, 345, 360]
  2470.   Orientation   "left"
  2471.   ShowName   off
  2472.   IconShape   "round"
  2473.   Inputs   "|++"
  2474.   InputSameDT   off
  2475.   OutDataTypeMode   "Inherit via internal rule"
  2476.   OutDataType   "sfix(16)"
  2477.   OutScaling   "2^0"
  2478.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  2479.   SaturateOnIntegerOverflow off
  2480. }
  2481. Block {
  2482.   BlockType   Sum
  2483.   Name   "Sum3"
  2484.   Ports   [2, 1]
  2485.   Position   [225, 270, 245, 290]
  2486.   ShowName   off
  2487.   IconShape   "round"
  2488.   Inputs   "-+|"
  2489.   InputSameDT   off
  2490.   OutDataTypeMode   "Inherit via internal rule"
  2491.   OutDataType   "sfix(16)"
  2492.   OutScaling   "2^0"
  2493.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  2494.   SaturateOnIntegerOverflow off
  2495. }
  2496. Block {
  2497.   BlockType   Sum
  2498.   Name   "Sum4"
  2499.   Ports   [2, 1]
  2500.   Position   [285, 270, 305, 290]
  2501.   ShowName   off
  2502.   IconShape   "round"
  2503.   Inputs   "|+-"
  2504.   InputSameDT   off
  2505.   OutDataTypeMode   "Inherit via internal rule"
  2506.   OutDataType   "sfix(16)"
  2507.   OutScaling   "2^0"
  2508.   OutDataTypeStr   "Inherit: Inherit via internal rule"
  2509.   SaturateOnIntegerOverflow off
  2510. }
  2511. Block {
  2512.   BlockType   Switch
  2513.   Name   "Switch"
  2514.   Position   [840, 255, 870, 285]
  2515.   Criteria   "u2 > Threshold"
  2516.   InputSameDT   off
  2517.   SaturateOnIntegerOverflow off
  2518. }
  2519. Block {
  2520.   BlockType   Outport
  2521.   Name   "Vpv"
  2522.   Position   [980, 263, 1010, 277]
  2523.   IconDisplay   "Port number"
  2524.   OutDataType   "sfix(16)"
  2525.   OutScaling   "2^0"
  2526. }
  2527. Block {
  2528.   BlockType   Outport
  2529.   Name   "Ppv"
  2530.   Position   [980, 163, 1010, 177]
  2531.   Port   "2"
  2532.   IconDisplay   "Port number"
  2533.   OutDataType   "sfix(16)"
  2534.   OutScaling   "2^0"
  2535. }
  2536. Line {
  2537.   SrcBlock   "Insolation"
  2538.   SrcPort   1
  2539.   DstBlock   "Insolation to ncurrent gain"
  2540.   DstPort   1
  2541. }
  2542. Line {
  2543.   Name   "Iph"
  2544.   Labels   [1, 0]
  2545.   SrcBlock   "Insolation to ncurrent gain"
  2546.   SrcPort   1
  2547.   DstBlock   "Sum3"
  2548.   DstPort   2
  2549. }
  2550. Line {
  2551.   Name   "Ipv"
  2552.   Labels   [0, 0]
  2553.   SrcBlock   "Ipv"
  2554.   SrcPort   1
  2555.   Points   [30, 0]
  2556.   Branch {
  2557.     Points     [0, -125]
  2558.     DstBlock     "Saturation"
  2559.     DstPort     1
  2560.   }
  2561.   Branch {
  2562.     Points     [145, 0]
  2563.     Branch {
  2564.       Labels       [1, 0]
  2565.       DstBlock       "Sum3"
  2566.       DstPort       1
  2567.     }
  2568.     Branch {
  2569.       DstBlock       "Rs"
  2570.       DstPort       1
  2571.     }
  2572.   }
  2573. }
  2574. Line {
  2575.   SrcBlock   "Product"
  2576.   SrcPort   1
  2577.   DstBlock   "Ppv"
  2578.   DstPort   1
  2579. }
  2580. Line {
  2581.   SrcBlock   "Sum4"
  2582.   SrcPort   1
  2583.   DstBlock   "Algebraic Constraint"
  2584.   DstPort   1
  2585. }
  2586. Line {
  2587.   Name   "Vd"
  2588.   Labels   [0, 0]
  2589.   SrcBlock   "Algebraic Constraint"
  2590.   SrcPort   1
  2591.   Points   [50, 0]
  2592.   Branch {
  2593.     DstBlock     "Sum1"
  2594.     DstPort     2
  2595.   }
  2596.   Branch {
  2597.     Points     [0, 70]
  2598.     Branch {
  2599.       Points       [0, 55]
  2600.       DstBlock       "1/Rp"
  2601.       DstPort       1
  2602.     }
  2603.     Branch {
  2604.       DstBlock       "PN-junction characteristic"
  2605.       DstPort       1
  2606.     }
  2607.   }
  2608. }
  2609. Line {
  2610.   Name   "Vpvcell"
  2611.   Labels   [0, 0]
  2612.   SrcBlock   "Sum1"
  2613.   SrcPort   1
  2614.   DstBlock   "Ns"
  2615.   DstPort   1
  2616. }
  2617. Line {
  2618.   SrcBlock   "Rs"
  2619.   SrcPort   1
  2620.   Points   [120, 0]
  2621.   DstBlock   "Sum1"
  2622.   DstPort   1
  2623. }
  2624. Line {
  2625.   SrcBlock   "By-pass diode"
  2626.   SrcPort   1
  2627.   DstBlock   "MinMax"
  2628.   DstPort   1
  2629. }
  2630. Line {
  2631.   SrcBlock   "Ns"
  2632.   SrcPort   1
  2633.   Points   [20, 0]
  2634.   Branch {
  2635.     Points     [0, -180]
  2636.     DstBlock     "MinMax"
  2637.     DstPort     2
  2638.   }
  2639.   Branch {
  2640.     DstBlock     "Switch"
  2641.     DstPort     3
  2642.   }
  2643. }
  2644. Line {
  2645.   SrcBlock   "MinMax"
  2646.   SrcPort   1
  2647.   Points   [30, 0; 0, 165]
  2648.   DstBlock   "Switch"
  2649.   DstPort   1
  2650. }
  2651. Line {
  2652.   SrcBlock   "Constant"
  2653.   SrcPort   1
  2654.   Points   [10, 0; 0, 65]
  2655.   DstBlock   "Switch"
  2656.   DstPort   2
  2657. }
  2658. Line {
  2659.   SrcBlock   "Switch"
  2660.   SrcPort   1
  2661.   Points   [15, 0]
  2662.   Branch {
  2663.     DstBlock     "Vpv"
  2664.     DstPort     1
  2665.   }
  2666.   Branch {
  2667.     DstBlock     "Product"
  2668.     DstPort     2
  2669.   }
  2670. }
  2671. Line {
  2672.   SrcBlock   "Saturation"
  2673.   SrcPort   1
  2674.   Points   [55, 0]
  2675.   Branch {
  2676.     Points     [500, 0; 0, 110]
  2677.     DstBlock     "Product"
  2678.     DstPort     1
  2679.   }
  2680.   Branch {