AmountUnits

Модуль суммы использовал внутренне в процессе моделирования, когда UnitConversion включен

Описание

Это свойство задает модуль суммы, который SimBiology использует внутренне во время симуляции модели когда UnitConversion включен. Можно установить это на любой вектор символов, представляющий модуль суммы, такой как молекула, родинка или родинка с любым допустимым префиксом. Это может также быть пользовательский модуль, если это сопоставимо с суммой как своя размерность. Значением по умолчанию является <automatic>, что означает, что SimBiology автоматически выбирает модуль суммы для симуляции. SimBiology исследует модули на всех состояниях и выбирает модуль суммы, таким образом что AbsoluteTolerance из состояний в сумме или сумме на объем является, по крайней мере, столь строгим как абсолютная погрешность симуляции, умноженная на самый маленький модуль суммы. Эта строгость ослабляется соответственно для состояний, которые становятся большими когда AbsoluteToleranceScaling включен.

Примечание

Рекомендуется, чтобы вы использовали модуль по умолчанию (<automatic>) или выберите модули для состояний, таким образом, что симулированные значения не являются ни один слишком большими (больше, чем 106) или слишком маленький (меньше чем 10-6).

Однако для некоторых случаев ребра, вы, возможно, должны изменить AmountUnits. Предположим, что у вас есть модель с состоянием, которое берет значения приблизительно 10-12 родинок для целой симуляции, и необходимо использовать mole как его модуль. Затем может быть уместно установить AmountUnits к picomole. В этом случае внутренние значения симуляции были бы приблизительно 1 вместо приблизительно 10-12 как в случае по умолчанию. AbsoluteTolerance из симуляции определяется с помощью этого внутреннего значения. Таким образом путем выбора picomole как модуль суммы, вы эффективно уменьшаете размер AbsoluteTolerance. Изменение AmountUnits свойство тесно связано с изменением AbsoluteTolerance при рассмотрении эффектов на результатах симуляции.

Даже когда с помощью модуля по умолчанию, может быть все еще необходимо изменить AbsoluteTolerance. Для получения дополнительной информации смотрите Absolute Tolerance Выбора и Relative Tolerance for Simulation.

Если необходимо восстановить поведение симуляции с релизов до R2015b:

  • Установите AmountUnit к mole. Однако, если модель имеет модули количества в molecule, установите модуль на molecule вместо этого.

  • Установите MassUnits к kilogram.

Совет

Если у вас есть пользовательская функция и UnitConversion включен (используете ли вы модуль по умолчанию <automatic>), следуйте рекомендации ниже.

  • Не определите размерность параметры, которые передаются функции, если они не являются уже безразмерными.

    Предположим, что у вас есть пользовательская функция, определяемая как y = f(t) где t время в час и y концентрация разновидности при родинке/литр. Когда вы будете использовать эту функцию в своей модели, чтобы задать повторное правило присвоения, например, задайте его как: s1 = f(time/t0)*s0, где time время симуляции, t0 параметр, заданный как 1,0 часа, s0 параметр, заданный как 1,0 родинки/литр и s1 концентрация разновидности при родинке/литр. Обратите внимание на то, что time и s1 не должны быть в тех же модулях как t0 и s0, но они должны быть размерностно сопоставимыми. Например, time и s1 модули могут быть установлены в минуту и picomole/liter, соответственно.

Характеристики

ПрименяетсяОбъект: Configset
Тип данныхСимвольный вектор
Значения данных

Вектор символов, задающий любой модуль суммы. Значением по умолчанию является <automatic>.

Доступ

Чтение-запись для свойств Configset

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

Configset object, MassUnits