SimFunction object

Функциональный интерфейс для выполнения моделей SimBiology

Описание

The SimFunction объект предоставляет интерфейс, который позволяет вам выполнять SimBiology® модель, подобная функции и рабочему процессу, для выполнения сканов параметров (параллельно, если доступна Toolbox™ Parallel Computing), симуляций Монте-Карло и сканирований с множественными или векторизованными дозами. Начиная с SimFunction объект может быть выполнен как указатель на функцию, можно настроить его, чтобы интегрировать модели SimBiology с другими MATLAB® продукты и другие пользовательские анализы (такие как визуальные прогнозирующие проверки).

Используйте createSimFunction метод для создания объекта SimFunction. Объекты SimFunction являются неизменяемыми после создания и автоматически ускоряются при первом выполнении функции.

Синтаксис

Если вы указали какую-либо информацию о дозах при вызове createSimFunction чтобы создать SimFunction F объекта, затем F имеет следующие синтаксисы.

simdata = F(phi,t_stop,u,t_output) возвращает a SimData object simdata после симуляции модели SimBiology с использованием начальных условий или сценариев симуляции, заданных в phi, время остановки симуляции, t_stop, информация о дозах, u, и время выхода, t_output.

simdata = F(phi,t_stop,u) выполняет симуляции с использованием входных параметров phi, t_stop, и u.

Если вы не указали какую-либо информацию о дозах при вызове createSimFunction, затем F имеет следующие синтаксисы:

simdata = F(phi,t_stop) возвращает a SimData object simdata после симуляции модели с использованием начальных условий или сценариев симуляции, заданных в phi, и время остановки симуляции, t_stop.

simdata = F(phi,t_stop,[],t_output) использует входные параметры phi, t_stop, пустой дозированный аргумент [], и t_output. Вы должны задать u, информацию о дозах, как пустой массив [] для этой подписи. Когда t_output пуст и t_stop задано, что симуляции сообщают о временных точках решателя до t_stop. Когда t_output задан и t_stop пуст, только время, точки в t_output сообщаются. Когда оба заданы, сообщенные временные точки являются объединением временных точек решателя и временных точек в t_output. Если последняя t_output больше, чем соответствующий t_stop, затем симуляция продолжается до последней временной точки в t_output.

simdata = F(phi,tbl) использует входные параметры phi и tbl. Использование этой подписи позволяет вам задать время выхода как одну из переменных tbl. Любая строка данных в tbl где все зависимые столбцы переменных, имеющие NaN значения игнорируются.

[T,Y] = F(_) возвращает T, массив ячеек с числовым вектором и Y, массив ячеек из 2-D числовых матриц, с использованием любого из входных параметров в предыдущих синтаксисах.

Входные параметры

phi

Одно из следующих:

  • Пустые [] массива или пустой массив ячеек {}, означающее выполнение симуляций с использованием начальных значений базовой линии, то есть значений, перечисленных в Parameter свойство SimFunction объект, не меняя их.

  • Матрица размера S -by - P, где S - количество симуляций для выполнения и P - количество параметров, заданное в params аргумент при вызове createSimFunction для создания F. Каждая симуляция выполняется с параметрами, заданными в соответствующей строке phi.

  • S -by - V матрица вариантов объектов или вектор-столбец камеры с S длины, где каждый элемент состоит из вектора-строки вариантов объектов. S - количество выполняемых симуляций, а V - количество вариантов объектов. Этим вариантам разрешено изменять только SimFunction входные параметры, то есть элементы модели, которые были заданы как params входной параметр при вызове createSimFunction. Другими словами, вы должны задать параметры варианта как входные параметры, когда вы создаете SimFunction объект. Любой SimFunction входные параметры, которые не заданы в вариантах, используют свои базовые начальные значения.

    Если в строке вариантов несколько записей относятся к одному и тому же элементу модели, последнее вхождение используется для симуляции.

  • Скалярные SimBiology.Scenarios объект S содержащий количество сценариев.

Когда phi задается как 1-by - P или 1-by - V матрица (или Scenarios объект только с одним сценарием), затем все симуляции используют одни и те же параметры, а количество симуляций определяется из t_stop, u, или t_output аргумент в таком порядке. Для примера, если phi и t_stop иметь одну строку и u является матрицей размера N -by - DoseTargets, количество симуляций определяется как N.

Когда phi задается как SimBiology.Scenarios объект, все сценарии моделируются. Варианты применяются до установки значений из сценариев.

t_stop

  • Скаляр, задающий одно и то же время остановки для всех симуляций

  • Вектор размера N, задающий время остановки для каждой симуляции для всех N симуляций

u

  • Пустые [] массива не применять никаких доз во время симуляции, если вы не задаете phi как Scenarios объект, который имеет дозы, определенные в его записях.

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

    u.Properties.VariableNames = {'Time','Amount','Rate'};

    Если UnitConversion on, задайте модули для каждой переменной. Для образца можно задать модули следующим образом.

    u.Properties.VariableUnits = {'second','molecule','molecule/second'};

    Эта таблица может иметь несколько строк, где каждая строка представляет дозу, применяемую к целевой дозе в заданное время дозы с заданным количеством и частотой, если она доступна.

  • table с одной строкой и пятью переменными, содержащими RepeatDose данные (RepeatDose таблица). Переменная скорости дозы опциональна. Назовите переменные следующим образом.

    u.Properties.VariableNames = {'StartTime','Amount','Rate','Interval','RepeatCount'};

    Если UnitConversion on, задайте модули для каждой переменной. Модули для 'RepeatCount' переменная может быть пустой '' или 'dimensionless'. Область модуля 'Amount' переменная должна быть размерно совместима с размерностью видов-мишеней. Например, если модуль измерения видов-мишеней находится в модуле количества (такой как моль или молекула), то 'Amount' переменный модуль измерения должна иметь ту же размерность, т.е. ее модуль измерения должна быть модулем измерения величины и не может быть модулем массы (такой как грамм или килограмм). Область модуля для 'Rate' переменная также должна быть размерно последовательной.

    u.Properties.VariableUnits = {'second','molecule','molecule/second','second','dimensionless'};

    Совет

    Если у вас уже есть объект дозы (ScheduleDose или RepeatDose), вы можете получить эту таблицу доз при помощи getTable метод объекта.

  • Массив ячеек из таблиц размера 1-by-N, где N - количество мишеней дозы. Каждая камера может представлять любую таблицу, как описано выше.

  • Массив ячеек из таблиц размера S-на-N, где S - количество симуляций, а N - количество мишеней дозы. Каждая камера представляет таблицу. S равно количеству строк в phi.

Если u - массив ячеек из таблиц, затем:

  • Если phi также является Scenarios объект, совокупное количество доз в Scenarios объект и количество столбцов в u должно равняться количеству элементов в Dosed свойство SimFunction объект. Другими словами, информация о дозах, которую вы указали во время создания SimFunction объект должен соответствовать информации о дозах, заданной при выполнении объекта. Общее количество элементов для Dosed свойство равно комбинации любых доз от входа Scenarios объект и дозы в дозированном входном параметре createSimFunction.

  • Если phi не является Scenarios объект, количество столбцов (N) в массиве ячеек u должно быть равно количеству элементов в Dosed свойство SimFunction объект. Порядок таблиц доз должен также совпадать с порядком дозированных видов в createSimFunction. То есть SimBiology принимает соответствие один к одному между столбцами u и целевые дозы, указанные в Dosed свойство SimFunction объект, означающий дозы (таблицы доз) в первом столбце u применяются к первой дозе мишени в Dosed свойство и так далее.

  • i доза для j-й цели дозы игнорируется, если u{i,j} = [].

  • Если i доза не параметризована, u{i,j} можно [] или любого типа таблицы (ScheduleDose или RepeatDose таблица).

  • Если i доза параметризирована, u{i,j} должен быть [] или RepeatDose таблица с одной строкой и столбцом для каждого свойства (StartTime, Amount, Rate, Interval, RepeatCount), который не параметризован. Не требуется создавать столбец для параметризованного свойства дозы. Если все свойства параметризованы, можно передать в таблице с одной строкой и никакие столбцы для определения параметризованной дозы не применяются во время симуляций. Чтобы создать такую таблицу, используйте table.empty(1,0).

t_output

  • Вектор монотонно увеличивающегося времени выхода, который применяется ко всем симуляциям

  • Массив ячеек, содержащий один временной вектор, который применяется ко всем симуляциям

  • Массив ячеек из векторов, представляющих выходное время. Элемент i-й камеры обеспечивает выход для i-й симуляции. Количество элементов в массиве ячеек должно совпадать с количеством строк (симуляций) в phi.

tbl

table или dataset (Statistics and Machine Learning Toolbox), который имеет такую информацию о времени и дозировании, как метки группы, независимая переменная, зависимые переменные (переменные ), величины и скорости. Вы должны назвать переменные таблицы или набора данных следующим 'GROUP','TIME','DEPENDENTVAR1','DEPENDENTVAR2',...,'AMOUNT1','RATE1','AMOUNT2','RATE2',.... Переменная скорости опциональна для каждой дозы.

Если на Dosed свойство объекта SimFunction F пуст, тогда переменные, связанные с суммой и скоростью, не требуются. Количество групп в tbl должно быть равно количеству строк или количеству сценариев в phi. Объединенная информация о дозах в phi, если phi является SimBiology.Scenarios объект, и количество столбцов количества и скорости в tbl должно быть равно количеству доз в Dosed свойство объекта F. Если tbl имеет дополнительные столбцы, они игнорируются.

Если UnitConversion on, задайте модуль для каждой переменной. Область модуля 'Amount' переменная должна быть размерно совместима с размерностью видов-мишеней. См. описание входного параметра u для получения дополнительной информации.

Выходные аргументы

simdata

Массив объектов SimData, который содержит результаты выполнения SimFunction F. Количество элементов в simdata массив совпадает с количеством строк в phi. Количество столбцов в каждом элементе simdata массив, то есть simdata(i).Data, равно количеству элементов в observed массив ячеек, заданный при создании F.

T

Массив ячеек, содержащий числовой вектор размера S x 1. S количество симуляций. i-й элемент T содержит временную точку от i-й симуляции.

Y

Массив ячеек 2-D числовых матриц. Яth элемент Y содержит данные из ith симуляция. Количество строк в T{i} равно количеству строк в Y{i}.

Сводные данные конструкторов

createSimFunction (модель)Создайте объект SimFunction

Сводные данные по методам

ускорение (SimFunction)Подготовьте объект SimFunction для ускоренных симуляций
isAccelerated (SimFunction)Определите, ускоряется ли объект SimFunction

Сводные данные свойств

Parameters

table с переменными с именем:

  • 'Name'

  • 'Value'

  • 'Type'

  • 'Units' (только если UnitConversion включен)

Таблица содержит информацию о величинах модели (видах, отсеках или параметрах), которые определяют входы SimFunction object. Например, эта таблица может содержать параметры или виды, значения которых сканируются SimFunction object. Это свойство доступно только для чтения.

Observables

table с переменными с именем:

  • 'Name'

  • 'Type'

  • 'Units' (только если UnitConversion включен)

Эта таблица содержит информацию о величинах модели (видах, отсеках или параметрах), которые определяют выход SimFunction object. Это свойство доступно только для чтения.

Dosed

table содержащая информацию о дозах с переменными с именем:

  • 'TargetName'

  • 'TargetDimension' (только если UnitConversion включен)

В сложении таблица также содержит переменные для каждого параметризованного свойства. Для каждого параметризованного свойства в эту таблицу добавляются две переменные. Первая переменная имеет то же имя что и имя свойства, а значение является именем заданного параметра. Вторая переменная имеет имя свойства, суффиксированное Value (PropertyNameValue), и значение является значением по умолчанию параметра. Если на UnitConversion on, модуль столбец также добавляется с именем PropertyNameUnits.

Предположим, что Amount свойство повторной дозы, нацеленной на вид Drug, параметризовано путем установки его в параметр модели, называемый AmountParam со значением 10 миллиграмм и UnitConversion включен. The Dosed таблица содержит следующие переменные:

TargetNameTargetDimensionСуммаAmountValueAmountUnits
'Drug''Mass (e.g., gram)' 'AmountParam'10'milligram'
UseParallel

Логический. Если true и Parallel Computing Toolbox доступен, SimFunction выполняется параллельно. Это свойство доступно только для чтения.

UnitConversion

Логический. Если true:

  • Во время выполнения SimFunction объект, phi принято в тех же модулях, что и модулях для соответствующих величин модели, заданных в params аргумент, когда объект был создан с помощью createSimFunction способ.

  • Время (t_output или t_stop) принято в том же модуле, что и TimeUnits свойство активного configset object модели SimBiology, из которой F был создан.

  • Переменные таблиц доз (u) должны иметь модули, заданные настройкой u.Properties.VariableUnits в массив ячеек с соответствующими модулями. Размерность целевой дозы, такой как количество (молекула, моль и т.д.) или масса (грамм, килограмм и т.д.), хранится на Dosed свойство F.

  • Результат симуляции находится в тех же модулях измерения, что и указанные на соответствующих величинах в модели SimBiology, из которой F был создан.

Это свойство доступно только для чтения.

AutoAccelerate

Логический. Когда true, модель ускоряется при первой оценке SimFunction объект.

Это свойство доступно только для чтения.

DependentFiles

Массив ячеек из символьных векторов, содержащий имена файлов, от которых зависит модель. Это свойство используется для развертывания. Это свойство доступно только для чтения.

Примеры

свернуть все

Этот пример показывает, как моделировать глюкозо-инсулиновые ответы для нормальных и диабетических субъектов.

Загрузите модель глюкозо-инсулиновой реакции. Для получения дополнительной информации о модели смотрите раздел «Фон» в Симуляции ответа глюкозы-инсулина.

sbioloadproject('insulindemo', 'm1')

Модель содержит различные начальные условия, сохраненные в различных вариантах.

variants = getvariant(m1);

Получите начальные условия для пациента с диабетом 2 типа.

type2 = variants(1)
type2 = 
   SimBiology Variant - Type 2 diabetic (inactive)

   ContentIndex:     Type:        Name:             Property:           Value:
   1                 parameter    Plasma Volume ... Value               1.49
   2                 parameter    k1                Value               0.042
   3                 parameter    k2                Value               0.071
   4                 parameter    Plasma Volume ... Value               0.04
   5                 parameter    m1                Value               0.379
   6                 parameter    m2                Value               0.673
   7                 parameter    m4                Value               0.269
   8                 parameter    m5                Value               0.0526
   9                 parameter    m6                Value               0.8118
   10                parameter    Hepatic Extrac... Value               0.6
   11                parameter    kmax              Value               0.0465
   12                parameter    kmin              Value               0.0076
   13                parameter    kabs              Value               0.023
   14                parameter    kgri              Value               0.0465
   15                parameter    f                 Value               0.9
   16                parameter    a                 Value               6e-05
   17                parameter    b                 Value               0.68
   18                parameter    c                 Value               0.00023
   19                parameter    d                 Value               0.09
   20                parameter    Stomach Glu Af... Value               125
   21                parameter    kp1               Value               3.09
   22                parameter    kp2               Value               0.0007
   23                parameter    kp3               Value               0.005
   24                parameter    kp4               Value               0.0786
   25                parameter    ki                Value               0.0066
   26                parameter    [Ins Ind Glu U... Value               1
   27                parameter    Vm0               Value               4.65
   28                parameter    Vmx               Value               0.034
   29                parameter    Km                Value               466.21
   30                parameter    p2U               Value               0.084
   31                parameter    K                 Value               0.99
   32                parameter    alpha             Value               0.013
   33                parameter    beta              Value               0.05
   34                parameter    gamma             Value               0.5
   35                parameter    ke1               Value               0.0007
   36                parameter    ke2               Value               269
   37                parameter    Basal Plasma G... Value               164.18
   38                parameter    Basal Plasma I... Value               54.81

Подавить информационное предупреждение, которое выдается во время симуляций.

warnSettings = warning('off','SimBiology:DimAnalysisNotDone_MatlabFcn_Dimensionless');

Создайте объекты SimFunction, чтобы симулировать ответ глюкоза-инсулин для нормальных и диабетических субъектов.

  • Задайте пустой массив {} для второго входного параметра, чтобы обозначить, что модель будет моделироваться с помощью базовых значений параметров (то есть сканирование параметра не будет выполнено).

  • Укажите концентрации глюкозы и инсулина в плазме в качестве ответов (выходы функции, которая будет нанесена).

  • Определите вид Dose в качестве дозированного вида. Этот вид представляет начальную концентрацию глюкозы в начале симуляции.

normSim = createSimFunction(m1,{},...
             {'[Plasma Glu Conc]','[Plasma Ins Conc]'},'Dose')
normSim = 
SimFunction

Parameters:

Observables: 

            Name                Type                 Units         
    _____________________    ___________    _______________________

    {'[Plasma Glu Conc]'}    {'species'}    {'milligram/deciliter'}
    {'[Plasma Ins Conc]'}    {'species'}    {'picomole/liter'     }

Dosed: 

    TargetName       TargetDimension   
    __________    _____________________

     {'Dose'}     {'Mass (e.g., gram)'}

Для диабетического пациента укажите начальные условия с помощью варианта type2.

diabSim = createSimFunction(m1,{},...
             {'[Plasma Glu Conc]','[Plasma Ins Conc]'},'Dose',type2)
diabSim = 
SimFunction

Parameters:

Observables: 

            Name                Type                 Units         
    _____________________    ___________    _______________________

    {'[Plasma Glu Conc]'}    {'species'}    {'milligram/deciliter'}
    {'[Plasma Ins Conc]'}    {'species'}    {'picomole/liter'     }

Dosed: 

    TargetName       TargetDimension   
    __________    _____________________

     {'Dose'}     {'Mass (e.g., gram)'}

Выберите дозу, которая представляет один прием пищи из 78 граммов глюкозы в начале симуляции.

singleMeal = sbioselect(m1,'Name','Single Meal');

Преобразуйте информацию о дозах в формат таблицы.

mealTable  = getTable(singleMeal);

Моделируйте ответ глюкоза-инсулин для нормального субъекта в течение 24 часов.

sbioplot(normSim([],24,mealTable));

Figure contains an axes. The axes with title States versus Time contains 2 objects of type line. These objects represent Glucose appearance.Plasma Glu Conc, Insulin secretion.Plasma Ins Conc.

Моделируйте ответ глюкоза-инсулин для субъекта с диабетом в течение 24 часов.

sbioplot(diabSim([],24,mealTable));

Figure contains an axes. The axes with title States versus Time contains 2 objects of type line. These objects represent Glucose appearance.Plasma Glu Conc, Insulin secretion.Plasma Ins Conc.

Выполните скан с использованием вариантов

Предположим, что вы хотите выполнить скан параметра, используя массив вариантов, которые содержат различные начальные условия для различных нарушений инсулина. Для примера, модель m1 имеет варианты, которые соответствуют низкой чувствительности к инсулину и высокой чувствительности к инсулину. Можно симулировать модель для обоих условий через один вызов объекта SimFunction.

Выберите варианты для сканирования.

varToScan = sbioselect(m1,'Name',...
                    {'Low insulin sensitivity','High insulin sensitivity'});

Проверьте, какие параметры модели хранятся в каждом варианте.

varToScan(1)
ans = 
   SimBiology Variant - Low insulin sensitivity (inactive)

   ContentIndex:     Type:        Name:             Property:           Value:
   1                 parameter    Vmx               Value               0.0235
   2                 parameter    kp3               Value               0.0045

varToScan(2)
ans = 
   SimBiology Variant - High insulin sensitivity (inactive)

   ContentIndex:     Type:        Name:             Property:           Value:
   1                 parameter    Vmx               Value               0.094
   2                 parameter    kp3               Value               0.018

Оба варианта хранят альтернативные значения для Vmx и kp3 параметры. Вы должны задать их как входные параметры, когда вы создаете объект SimFunction.

Создайте объект SimFunction для сканирования вариантов.

variantScan = createSimFunction(m1,{'Vmx','kp3'},...
          {'[Plasma Glu Conc]','[Plasma Ins Conc]'},'Dose');

Симулируйте модель и постройте график результатов. Run 1 включите результаты симуляции низкой чувствительности к инсулину и Run 2 для высокой чувствительности к инсулину.

sbioplot(variantScan(varToScan,24,mealTable));

Figure contains an axes. The axes with title States versus Time contains 4 objects of type line. These objects represent Run 1 - Glucose appearance.Plasma Glu Conc, Run 1 - Insulin secretion.Plasma Ins Conc, Run 2 - Glucose appearance.Plasma Glu Conc, Run 2 - Insulin secretion.Plasma Ins Conc.

Низкая чувствительность к инсулину приводит к повышенной и длительной концентрации глюкозы в плазме.

Восстановите параметры предупреждения.

warning(warnSettings);

Этот пример показывает, как сканировать начальные количества вида из модели радиоактивного распада с реакцией первого порядка dzdt=cx, где x и z являются видами и c - константа прямой скорости.

Загрузите образец проекта, содержащий модель radiodecay m1.

sbioloadproject radiodecay;

Создайте SimFunction f объекта для сканирования начальных количеств видов x.

f = createSimFunction(m1,{'x'},{'x','z'},[])
f = 
SimFunction

Parameters:

    Name     Value       Type           Units    
    _____    _____    ___________    ____________

    {'x'}    1000     {'species'}    {'molecule'}

Observables: 

    Name        Type           Units    
    _____    ___________    ____________

    {'x'}    {'species'}    {'molecule'}
    {'z'}    {'species'}    {'molecule'}

Dosed: None

Задайте четыре различных начальных количества видов x для сканирования. Количество строк указывает общее количество симуляций, и в каждой симуляции используется значение параметров, заданное в каждой строке вектора.

phi = [200; 400; 600; 800];

Выполняйте симуляции до тех пор, пока время остановки не составит 20, и стройте график результатов симуляции.

sbioplot(f(phi, 20));

Figure contains an axes. The axes with title States versus Time contains 8 objects of type line. These objects represent Run 1 - x, Run 1 - z, Run 2 - x, Run 2 - z, Run 3 - x, Run 3 - z, Run 4 - x, Run 4 - z.

Этот пример показывает, как моделировать и сканировать параметр модели radiodecay во время дозировки вида.

Загрузите образец проекта, содержащий модель radiodecay m1.

sbioloadproject radiodecay;

Создайте SimFunction f объекта установка параметров Reaction1.c подлежащих сканированию и видовых x в качестве дозированной мишени.

f = createSimFunction(m1,{'Reaction1.c'},{'x','z'},{'x'});

Определяют скалярную дозу в количестве 200 молекул, вводимых в три временных точек (5, 10 и 15 секунд).

dosetime = [5 10 15];
dose = [200 200 200];
u = table(dosetime', dose');
u.Properties.VariableNames = {'Time','Amount'};
u.Properties.VariableUnits = {'second','molecule'};

Задайте значения параметров для Reaction1.c для сканирования.

phi = [0.1 0.2 0.5]';

Симулируйте модель в течение 20 секунд и постройте график результатов.

sbioplot(f(phi,20,u));

Figure contains an axes. The axes with title States versus Time contains 6 objects of type line. These objects represent Run 1 - x, Run 1 - z, Run 2 - x, Run 2 - z, Run 3 - x, Run 3 - z.

Вы также можете задать различные суммарные дозы в разное время.

d1 = table(5,100);
d1.Properties.VariableNames = {'Time','Amount'};
d1.Properties.VariableUnits = {'second','molecule'};
d2 = table(10,300);
d2.Properties.VariableNames = {'Time','Amount'};
d2.Properties.VariableUnits = {'second','molecule'};
d3 = table(15,600);
d3.Properties.VariableNames = {'Time','Amount'};
d3.Properties.VariableUnits = {'second','molecule'};

Симулируйте модель с помощью этих доз и постройте график результатов.

sbioplot(f(phi,20,{d1;d2;d3}));

Figure contains an axes. The axes with title States versus Time contains 6 objects of type line. These objects represent Run 1 - x, Run 1 - z, Run 2 - x, Run 2 - z, Run 3 - x, Run 3 - z.

Можно также задать массив ячеек из таблиц доз.

u = cell(3,1);
dosetime = [5 10 15];
dose = [200 200 200];
u{1} = table(dosetime',dose');
u{1}.Properties.VariableNames = {'Time','Amount'};
u{1}.Properties.VariableUnits = {'second','molecule'};
dosetime2 = [2 6 12];
dose2 = [500 500 500];
u{2} = table(dosetime2', dose2');
u{2}.Properties.VariableNames = {'Time','Amount'};
u{2}.Properties.VariableUnits = {'second','molecule'};
dosetime3 = [3 8 18];
dose3 = [100 100 100];
u{3} = table(dosetime3', dose3');
u{3}.Properties.VariableNames = {'Time','Amount'};
u{3}.Properties.VariableUnits = {'second','molecule'};

Симулируйте модель с помощью таблиц доз и постройте график результатов.

sbioplot(f(phi,20,u));

Figure contains an axes. The axes with title States versus Time contains 6 objects of type line. These objects represent Run 1 - x, Run 1 - z, Run 2 - x, Run 2 - z, Run 3 - x, Run 3 - z.

Ссылки

[1] Gillespie, D.T. (1977). Точная стохастическая симуляция связанных химических реакций. Журнал физической химии. 81(25), 2340–2361.

Введенный в R2014a