addobservable
语法
描述
例子
使用可观测数据计算模型模拟后的统计数据
sbioloadprojecttmdd_with_TO.sbproj
设定目标入住率(来
)作为回应。
Cs = getconfigset(m1);cs.RuntimeOptions.StatesToLog =”到“;
获取给药信息。
D = getdose(m1,“每天”);
扫描不同剂量使用SimBiology。场景
对象。为此,首先参数化量
剂量的性质。方法更改相应的参数值场景
对象。
amountParam = addparameter(m1,“AmountParam”,“单位”, d.AmountUnits);d.Amount =“AmountParam”;d.Active = 1;doseSamples = SimBiology。场景(“AmountParam”linspace(0300、31));
创建一个SimFunction
模拟模型。集来
作为仿真输出。
%抑制模拟过程中发出的信息警告。警告(“关闭”,“SimBiology: SimFunction: DOSES_NOT_EMPTY”);f = createSimFunction(m1,doseSamples,”到“d)
f = SimFunction参数:值类型单位名称 _______________ _____ _____________ ____________ {' AmountParam '} 1{“参数”}{‘nanomole}可见:单位名称类型 ______ _____________ _________________ {' “}{“参数”}{的无量纲}给:TargetName TargetDimension数量AmountValue AmountUnits _______________ ___________________________________ _______________ ___________ ____________ {' 等离子体。药物“}{”数量(例如,摩尔或分子)“}{”AmountParam“}1{”纳摩尔“}时间单位:天
警告(“上”,“SimBiology: SimFunction: DOSES_NOT_EMPTY”);
使用产生的剂量量来模拟模型场景
对象。在这种情况下,物体产生31种不同的剂量;因此,该模型被模拟了31次,并生成了一个SimData
数组中。
doseTable = getttable (d);sd = f(doseSamples,cs.StopTime,doseTable)
SimBiology模拟数据阵列:31 × 1模型名称:TMDD记录数据:物种:0隔间:0参数:1灵敏度:0可观察性:0
绘制模拟结果图。还添加两条参考线,表示的安全性和有效性阈值来
。在这个例子中,假设any来
高于0.85的值是不安全的,任何值来
低于0.15的值无效。
H = sbioplot(sd);时间= sd(1).时间;h.NextPlot =“添加”;safetyThreshold = plot(h,[min(time), max(time)],[0.85, 0.85],“DisplayName的”,“安全阈值”);effacythreshold = plot(h,[min(time), max(time)],[0.15, 0.15],“DisplayName的”,“功效阈值”);
对仿真结果进行后处理。找出哪些剂量是有效的,对应于来
在安全性和有效性阈值范围内的反应。为此,向模拟数据中添加一个可观察表达式。
%抑制模拟过程中发出的信息警告。警告(“关闭”,“SimBiology: sbservices: SB_DIMANALYSISNOTDONE_MATLABFCN_UCON”);newSD = addoobservable (sd,“stat1”,'max(TO) < 0.85 & min(TO) > 0.15',“单位”,无量纲的)
SimBiology模拟数据阵列:31 × 1模型名称:TMDD记录数据:物种:0隔间:0参数:1灵敏度:0可观察性:1
addoobservable函数为每个对象计算新的可观察表达式SimData
在sd
并将计算结果作为new返回SimData
数组,newSD
,现在添加了可观察对象(stat1
).
的两个不同属性中存储可观察到的结果SimData
对象。如果结果是标量值,则将它们存储在SimData。ScalarObservables
。否则,它们被存储在SimData。VectorObservables
。在本例中,stat1
可观察表达式是标量值。
提取标量可观测值,并绘制它们与剂量量的关系。
scalarObs = vertcat(newSD.ScalarObservables);doseamount = generate(doseSamples);图绘制(doseAmounts.AmountParam scalarObs.stat1,“o”,“MarkerFaceColor”,“b”)
该图显示了50到180纳摩尔的剂量来
在目标疗效和安全阈值范围内的反应。
你可以用不同的阈值来更新可观察表达式。该函数重新计算表达式并在newSimData
对象数组。
newSD2 = updateobservable(newSD,“stat1”,'max(TO) < 0.75 & min(TO) > 0.30');
重命名可观察表达式。该函数重命名可观察对象,更新任何引用重命名可观察对象的表达式(如果适用),并以newSimData
对象数组。
newSD3 = renameobservable(newSD2,“stat1”,“EffectiveDose”);
恢复警告设置。
警告(“上”,“SimBiology: sbservices: SB_DIMANALYSISNOTDONE_MATLABFCN_UCON”);
输入参数
sdin
- - - - - -输入仿真数据
SimData
对象|的数组SimData
对象
输入模拟数据,指定为SimData
对象或对象数组。
obsNames
- - - - - -可观察表达式的名称
特征向量|字符串|字符串向量|字符向量的单元格数组
可观察表达式的名称,指定为字符向量、字符串、字符串向量或字符向量的单元格数组。
中的每个名称必须唯一SimData
对象的名称,这意味着它不能匹配引用的任何其他可观察对象、物种、隔间、参数或反应的名称SimData
对象。
例子:{“max_drug”、“mean_drug”}
数据类型:字符
|字符串
|细胞
obsExpressions
- - - - - -可观察到的表情
特征向量|字符串|字符串向量|字符向量的单元格数组
可观察表达式,指定为字符向量、字符串、字符串向量或字符向量的单元格数组。表达式的数量必须与可观察名称的数量相匹配。
例子:{“马克斯(毒品)”,意味着(药物)的}
数据类型:字符
|字符串
|细胞
单位
- - - - - -可观察表达式的单位
特征向量|字符串|字符串向量|字符向量的单元格数组
可观察表达式的单位,指定为字符向量、字符串、字符串向量或字符向量的单元格数组。单元的数量必须与可观察名称的数量相匹配。
例子:{' nanomole /升”、“nanomole / l '}
数据类型:字符
|字符串
|细胞
输出参数
sdout
-具有可观察结果的模拟数据
SimData
对象|的数组SimData
对象
具有可观察结果的模拟数据,返回为SimData
对象或对象数组。
版本历史
R2020a中引入
MATLAB命令
你点击了一个对应于这个MATLAB命令的链接:
在MATLAB命令窗口中输入该命令来运行该命令。Web浏览器不支持MATLAB命令。万博1manbetx
您也可以从以下列表中选择一个网站:
如何获得最佳的网站性能
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。