使用SOL操作员的示例
这用Sol操作员允许您从当前模型中的任何求解器序列中提取解决方案,并在其他研究中或在后处理过程中使用它。
比较两项研究之间的结果
让我们考虑一个简单的热示例。左侧温度为20ºC的正方形的稳态模拟。我们在模型中进行了两项研究。右侧温度为100ºC(研究1),温度为200ºC(研究2)。为了评估两项研究之间的温度差,我们可以使用用Sol操作员。
的基本形式用Sol操作员是:使用SOL('tag',expr)
, 在哪里'标签'
是我们要从中提取溶液的求解器序列的标签,并且Expr
是我们要评估的表达。为了能够看到标签,请确保标签从模型树节点文本菜单模型构建器窗户。每个节点的标签出现在节点名称之后的卷曲括号{}中。
这模型树节点文本菜单,带有姓名和标签启用了选项。
查看温度之间的区别研究2和研究1,我们为研究2数据集创建一个图,并使用表达式t-withsol('sol1',t)
。
在此表达式中,变量t外面用Sol操作员取自研究2(带标签
'sol2'
),而用Sol操作员从研究1,有标签'sol1'
。所得图显示了整个域之间的温度差,在两项研究中温度相同的末端的差为0。左侧的表面设置窗口和图形窗口的屏幕截图,右侧有温度图。
其中一个设置表面绘图节点,其中操作员和使用,以及在图形窗户。
比较同一研究中两个参数值之间的结果
在同一研究中的两个参数之间或瞬时研究中的两次参数之间也可以比较结果。如果我们在示例中不使用两项研究,而是仅使用一项在右侧具有参数化温度的研究,那么我们可以同样找到两个温度之间的差异。但是,我们需要使用扩展的版本用Sol运算符不仅要从我们要从哪种解决方案中提取结果,还要指定哪个参数值。这次,操作员看起来像这样:
使用SOL('tag',expr,setval(par,value))
这里,'标签'
, 和Expr
与以前相同。什么是新的setval(par,value)
。运营商setval是一个常用的操作员用Sol指定哪个值参数par
应该有。
这里,t是从我们情节的设置中获取的,所以研究3和200ºC的参数值。这用Sol操作员拾取变量的值t来自同一研究(带有标签'sol3'
),但是当参数温度是100ºC。这是通过设置参数的值来完成的温度到'100 [degc]'setval操作员。该图给出了与上面图相同的结果。
将一项研究的结果作为另一个研究的输入
在模型中路堤坝中的斜率稳定性, 这原位计算孔隙压力和重力的应力,该研究的结果用作安全系数计算的初始应力。这原位使用用Sol操作员。
模型树和设置窗口的屏幕截图,用于初始应力和应变特征。 这设置窗口初始应力和应变功能,其中用Sol使用操作员。使用SOLSOL操作员的使用更高级
以更高级使用的示例用Sol操作员,请参阅模型支架 - 一般周期性动态分析。您可以在以下文件中的应用程序库中的结构力学模块的教程中找到它:
- bracket_general_periodic.mph
- models.sme.bracket_general_periodic.pdf
在该模型中,用Sol操作员用于从一项研究中提取频率依赖性载荷,并将其用作第二项研究中相应频率的输入。
提交有关此页面的反馈或联系支持。