sbiosimulate
Этот пример использует модель, описанную в Модели Дрожжей Гетеротримерный Цикл Белка G, чтобы проиллюстрировать опции анализа чувствительности SimBiology®.
Эта таблица приводит реакции, используемые, чтобы смоделировать цикл белка G и соответствующие параметры уровня (константы скорости) для каждой реакции массовой акции. Для обратимых реакций параметр форвардного курса перечислен сначала.
Нет. | Имя | Reaction1 | Параметры уровня |
---|---|---|---|
1 | Взаимодействие лиганда приемника | L + R <-> RL | kRL , kRLm |
2 | Гетеротримерное формирование белка G | Gd + Gbg -> G | kG1 |
3 | G активация белка | RL + G -> Ga + Gbg + RL | kGa |
4 | Синтез приемника и ухудшение | R <-> null | kRdo , kRs |
5 | Ухудшение лиганда приемника | RL -> null | kRD1 |
6 | G деактивация белка | Ga -> Gd | kGd |
1 Легенда разновидностей: L = лиганд (альфа-фактор), R = факторный альфой приемник, Gd = неактивный G-alpha-GDP, Gbg = свободные уровни комплекса G-beta:G-gamma, G = неактивный комплекс Gbg:Gd, Ga = активный G-alpha-GTP |
Примите, что вы вычисляете чувствительность разновидностей Ga
относительно каждого параметра в модели. Таким образом вы хотите вычислить зависящие от времени производные
gprotein_norules.sbproj
проект содержит модель, которая представляет деформацию дикого типа (сохраненный в переменной m1
).
sbioloadproject gprotein_norules m1
Опции для анализа чувствительности находятся в объекте конфигурации модели. Получите объект конфигурации модели из модели.
csObj = getconfigset(m1);
Используйте sbioselect
функция, которая позволяет вам запросить типом, получить Ga
разновидности из модели.
Ga = sbioselect(m1,'Type','species','Where','Name','==','Ga');
Установите Outputs
свойство SensitivityAnalysisOptions
возразите против Ga
разновидности.
csObj.SensitivityAnalysisOptions.Outputs = Ga;
Используйте sbioselect
функция, которая позволяет вам запросить типом, получить все параметры из модели и сохранить вектор в переменной, pif
.
pif = sbioselect(m1,'Type','parameter');
Установите Inputs
свойство SensitivityAnalysisOptions
возразите против pif
переменная, содержащая параметры.
csObj.SensitivityAnalysisOptions.Inputs = pif;
Включите анализ чувствительности в объекте конфигурации модели (csObj
) путем установки SensitivityAnalysis
опция к true
.
csObj.SolverOptions.SensitivityAnalysis = true;
Установите Normalization
свойство SensitivityAnalysisOptions
объект выполнить 'Full'
нормализация.
csObj.SensitivityAnalysisOptions.Normalization = 'Full';
Симулируйте модель и возвратите данные в SimData object
:
simDataObj = sbiosimulate(m1);
Можно извлечь результаты чувствительности с помощью getsensmatrix
метод SimData object
. В этом примере, R
чувствительность разновидностей Ga
относительно восьми параметров. В этом примере показано, как сравнить изменение чувствительности Ga
относительно различных параметров, и находят параметры, которые влияют на Ga
большинство.
Извлеките данные о чувствительности в выходных переменных T
(время), R
(данные о чувствительности для разновидностей Ga
), snames
(имена состояний, заданных для анализа чувствительности), и ifacs
(имена входных факторов, используемых для анализа чувствительности):
[T, R, snames, ifacs] = getsensmatrix(simDataObj);
Поскольку R
трехмерный массив с размерностями, соответствующими временам, выходные факторы и входные факторы, изменяют R
в столбцы входных факторов, чтобы упростить визуализацию и графический вывод:
R2 = squeeze(R);
После извлечения данных и изменения форму матрицы, отобразите данные на графике:
figure; plot(T,R2); title('Normalized Sensitivity of Ga With Respect To Various Parameters'); xlabel('Time (seconds)'); ylabel('Normalized Sensitivity of Ga'); leg = legend(ifacs, 'Location', 'NorthEastOutside'); set(leg, 'Interpreter', 'none');
Из предыдущего графика вы видите тот Ga
является самым чувствительным к параметрам kGd
, kRs
, kRD1
, и kGa
. Это предполагает, что суммы активного белка G в ячейке зависят от уровня:
Синтез приемника
Ухудшение комплекса лиганда приемника
G активация белка
G деактивация белка