Модуль суммы использовал внутренне во время симуляции, когда 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 |
| Тип данных | Символьный вектор |
| Значения данных | Вектор символов, задающий любой модуль суммы. Значением по умолчанию является |
| Доступ | Чтение-запись для свойств |