exponenta event banner

sbiolasterror

SimBiology последнее сообщение об ошибке

Синтаксис

sbiolasterror
diagstruct = sbiolasterror
sbiolasterror([])
sbiolasterror(diagstruct)

Аргументы

diagstructДиагностическая структура, содержащая Type, Message ID и Message для ошибок.

Описание

sbiolasterror или diagstruct = sbiolasterror возвратите массив структур диагностики SimBiology®, содержащий последнюю ошибку (ошибки), сгенерированную программным обеспечением. Поля диагностической структуры:

Ввод 'error'
MessageID Идентификатор сообщения для ошибки (например, 'SimBiology:ConfigSetNameClash')
Сообщение Сообщение об ошибке

sbiolasterror([]) сбрасывает SimBiology последняя ошибка так, чтобы это возвратило пустой массив, пока со следующей ошибкой SimBiology не столкнутся.

sbiolasterror(diagstruct) установит SimBiology последняя ошибка (ошибки) на заданных в диагностической структуре (diagstruct).

Примеры

Этот пример показывает, как использовать verify и sbiolasterror.

  1. Импортируйте модель.

      a = sbmlimport('radiodecay.xml')
      SimBiology Model - RadioactiveDecay 
    
       Model Components:
         Models:            0
         Parameters:        1
         Reactions:         1
         Rules:             0
         Species:           2
    
  2. Измените ReactionRate реакции сделать модель недопустимой.

      a.reactions(1).reactionrate = 'x*y'
    
      SimBiology Model - RadioactiveDecay 
    
       Model Components:
         Models:            0
         Parameters:        1
         Reactions:         1
         Rules:             0
         Species:           2
    
  3. Используйте функциональный verify, чтобы подтвердить модель.

      a.verify
    
    ??? Error using==>simbio\private\odebuilder>buildPatternSubStrings
    The object y does not resolve on reaction with expression'x*y'.
      
    Error in ==> sbiogate at 22
    feval(varargin{:});
      
    ??? --> Error reported from Expression Validation : 
    The object 'y' in reaction 'Reaction1' does not resolve
    to any in-scope species or parameters.
    --> Error reported from Dimensional Analysis : 
    Could not resolve species, parameter or model object 'y' 
    during dimensional analysis.
    --> Error reported from ODE Compilation:
    Error using==>simbio\private\odebuilder>buildPatternSubStrings
    The object y does not resolve on reaction with expression 'x*y'.
  4. Получите ошибочную диагностику struct.

      p = sbiolasterror
      p = 
    
      1x3 struct array with fields:
        Type
        MessageID
        Message
  5. Отобразите первую ошибку ID и Message.

    p(1)
    ans = 
    
         Type: 'Error'
    MessageID: 'SimBiology:ReactionObjectDoesNotResolve'
      Message: 'The object 'y' in reaction 'Reaction1' 
    							does not resolve to any in-scope 
    							species or parameters.'
  6. Сбросьте sbiolasterror.

    sbiolasterror([])
    
    
    ans =
    
         []
  7. Установите sbiolasterror на диагностический struct.

sbiolasterror(p)


ans = 

1x3 struct array with fields:
    Type
    MessageID
    Message

Смотрите также

|

Темы

Представленный в R2006a