Симулируйте модель SimBiology, добавив изменения путем выборки ошибочной модели
[ynew,parameterEstimates]
= random(resultsObj)
[ynew,parameterEstimates]
= random(resultsObj,data,dosing)
[
возвращает результаты симуляции ynew
,parameterEstimates
]
= random(resultsObj
)ynew
с добавленным шумом с помощью ошибочной информации о модели задан resultsObj.ErrorModelInfo
свойство и оцененные значения параметров parameterEstimates
.
[
использует заданный ynew
,parameterEstimates
]
= random(resultsObj
,data
,dosing
)data
и dosing
информация.
Примечание
Шум только добавляется к состояниям, которые являются ответами, которые являются состояниями, включенными в responseMap
входной параметр, когда вы вызвали sbiofit
. Если существует отдельная ошибочная модель для каждого ответа, шум добавляется к каждому ответу отдельно с помощью соответствующей ошибочной модели.
resultsObj
— Результаты оценкиOptimResults
возразите | NLINResults
объектОценка заканчивается в виде OptimResults
object
или NLINResults object
, который содержит результаты оценки, возвращенные sbiofit
. Это должен быть скалярный объект.
data
— Сгруппированные данные или выходные временаgroupedData
возразите | вектор | массив ячеек векторовСгруппированные данные или выходные времена в виде a groupedData object
, вектор или массив ячеек векторов выходных времен.
Если это - вектор из моментов времени, random
симулирует модель с новыми моментами времени с помощью оценок параметра от объекта resultsObj
результатов.
Если это - массив ячеек векторов из моментов времени, random
симулирует времена модели n с помощью выходных времен от каждого временного вектора, где n является длиной data
.
Если это - groupedData
объект, это должно иметь независимую переменную, такую как Время. Это должно также иметь переменную группы, если обучающие данные, используемые для подбора кривой, имеют такую переменную. Можно использовать groupedData
возразите, чтобы запросить различные комбинации категорий если resultsObj
содержит оценки параметра для каждой категории. random
симулирует модель для каждой группы с заданными категориями. Например, предположите, что у вас есть набор оценок параметра для сексуальной категории (штекеры по сравнению с розетками) и категории возраста (молодой по сравнению со старым) в ваших обучающих данных. Можно использовать random
симулировать ответы старого штекера (или любая другая комбинация) несмотря на то, что такой пациент не может существовать в обучающих данных.
Если resultsObj
от оценки специфичных для категории параметров, data
должен быть groupedData
объект.
Примечание
Если UnitConversion
включен для базовой модели SimBiology, которая использовалась для подбора кривой и data
groupedData
объект, data
должен задать модули действительной переменной через data.Properties.VariableUnits
свойство. Если это - числовой векторный массив или массив ячеек векторов из моментов времени, random
использует TimeUnits
модели.
dosing
— Дозирование информации[]
| 2D матрица объектов дозы SimBiologyДозирование информации в виде пустого массива []
или 2D матрица объектов дозы SimBiology (ScheduleDose object
или RepeatDose object
). Если dosing
матрица объектов дозы, матрица должна содержать дозы по умолчанию или быть сопоставима с исходными данными о дозировании, используемыми с sbiofit
. Таким образом, доза возражает в dosing
должен иметь те же значения для свойств дозы (таких как TargetName
) или должен быть параметрирован таким же образом как исходные данные о дозировании. Например, предположите, что исходная матрица дозирования имеет два столбца доз, где дозы в первом столбце предназначаются для разновидностей x и тех во вторых целевых разновидностях y столбца. Затем dosing
должен иметь дозы в первом столбце, предназначающемся для разновидностей x и тех во втором столбце, предназначающемся для разновидностей y.
Если пустой, никакие дозы не применяются в процессе моделирования, даже если модель имеет активные дозы.
Если не пустой, матрица должна иметь одну строку или одну строку на группу во входных данных. Если это имеет одну строку, те же дозы применяются ко всем группам в процессе моделирования. Если это имеет несколько строк, каждая строка применяется к отдельной группе в том же порядке, как группы появляются во входных данных. Если некоторые группы (или временные векторы) требуют большего количества доз, чем другие, то заполняют матрицу с (фиктивными) дозами по умолчанию.
Несколько столбцов позволены так, чтобы можно было применить несколько объектов дозы к каждой группе или временному вектору. Все дозы в столбце должны быть дозами по умолчанию или должны сослаться на те же компоненты в модели (например, дозы должны иметь ту же цель дозы TargetName
) и должен иметь сопоставимые параметрированные свойства как в исходных данных о дозировании, используемых с sbiofit
. Например, если Amount
свойство дозы используется в оригинале sbiofit
вызов параметрируется к ограниченному по объему моделью параметру 'A'
, все дозы для соответствующей группы (столбец) в dosing
должен иметь Amount
свойство параметрируется к 'A'
.
Доза по умолчанию имеет значения по умолчанию для всех свойств, за исключением Name
свойство. Создайте дозу по умолчанию можно следующим образом.
d1 = sbiodose('d1');
В дополнение к ручному построению объектов дозы с помощью sbiodose
, если входными данными является groupedData
возразите и имеет информацию о дозировании, можно использовать createDoses
метод, чтобы создать дозы из него.
Количество строк в dosing
матрица и количество групп или выходных временных векторов в data
определите общее количество результатов симуляции в выходе ynew
. Для получения дополнительной информации см. таблицу в ynew
описание аргумента.
Примечание
Если UnitConversion
включен для базовой модели SimBiology®, которая использовалась для подбора кривой, dosing
должен задать допустимую сумму и единицы измерения времени.
ynew
— Результаты симуляции с шумомSimData
объектыРезультаты симуляции, возвращенные как вектор из SimData
объекты. О состояниях сообщают в ynew
состояния, которые были включены в responseMap
входной параметр sbiofit
а также любые другие состояния, перечисленные в StatesToLog
свойство опций во время выполнения (RuntimeOptions
) из модели SimBiology.
Общее количество результатов симуляции в ynew
зависит от количества групп или выходных временных векторов в data
и количество строк в dosing
матрица.
Количество групп или выходных временных векторов в data | Количество строк в dosing матрица | Результаты симуляции |
---|---|---|
1 | 0 | Общее количество Никакие дозы не применяются в процессе моделирования. |
1 | 1 | Общее количество Данная строка доз применяется во время симуляции. |
1 | N | Общее количество Каждая строка |
N | 0 | Общее количество Никакие дозы не применяются в процессе моделирования. |
N | 1 | Общее количество Та же строка доз применяется к каждой симуляции. |
N | N | Общее количество Каждая строка |
M | N | Функция выдает ошибку когда M ≠ N. |
parameterEstimates
— Предполагаемые значения параметровПредполагаемые значения параметров, возвращенные как таблица. Это идентично resultsObj.ParameterEstimates
свойство.
Этот пример использует дрожжи гетеротримерные данные модели белка G и экспериментальные данные, о которых сообщают [1]. Для получения дополнительной информации о модели, смотрите раздел Background в Сканировании Параметра, Оценке Параметра и Анализе чувствительности в Дрожжах Гетеротримерный Цикл Белка G.
Загрузите модель белка G.
sbioloadproject gprotein
Введите экспериментальные данные, содержащие курс времени для части активного белка G, как сообщается в ссылочной газете [1].
time = [0 10 30 60 110 210 300 450 600]'; GaFracExpt = [0 0.35 0.4 0.36 0.39 0.33 0.24 0.17 0.2]';
Создайте groupedData
основанный на объектах на экспериментальных данных.
tbl = table(time,GaFracExpt); grpData = groupedData(tbl);
Сопоставьте соответствующий компонент модели с экспериментальными данными. Другими словами, укажите, которому разновидность в модели соответствует который переменная отклика в данных. В этом примере сопоставьте параметр модели GaFrac
к переменной GaFracExpt
экспериментальных данных от
grpData
.
responseMap = 'GaFrac = GaFracExpt';
Используйте estimatedInfo
объект задать параметр модели kGd
в качестве параметра быть оцененным.
estimatedParam = estimatedInfo('kGd');
Выполните оценку параметра. Используйте аргумент пары "имя-значение" 'ErrorModel'
задавать ошибочную модель, которая добавляет ошибку в данные моделирования.
fitResult = sbiofit(m1,grpData,responseMap,estimatedParam,'ErrorModel','proportional');
Просмотрите предполагаемое значение параметров kGd
.
fitResult.ParameterEstimates
ans = Name Estimate StandardError _____ ________ _____________ 'kGd' 0.11 0.00064116
Используйте random
метод, чтобы получить данные моделирования с добавленным шумом с помощью пропорциональной ошибочной модели, которая была задана sbiofit
. Обратите внимание на то, что шум добавляется только к состоянию ответа, которое является GaFrac
параметр.
[ynew,paramEstim] = random(fitResult);
Выберите данные моделирования для GaFrac
параметр.
GaFracNew = select(ynew,{'Name','GaFrac'});
Постройте результаты симуляции.
plot(GaFracNew.Time,GaFracNew.Data)
hold on
Отобразите экспериментальные данные на графике, чтобы сравнить его с симулированными данными.
plot(time,GaFracExpt,'Color','k','Marker','o') legend('GaFracNew','GaFracExpt')
[1] И, T-M., Kitano, H. и Саймон, M. (2003). Количественная характеристика дрожжей гетеротримерный цикл белка G. PNAS. 100, 10764–10769.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.