宏 API 更改 2310
在 Simcenter STAR-CCM+ 2310 中,针对切向速度指定、网格划分、时间、材料属性、拉格朗日多相、欧拉多相、DFBI、电磁、后处理和 CAE 积分更改了宏 API。
对边界轴的基于部件的支持
切向速度指定的改进允许您相对于边界的部件表面的定义轴。此项改进导致宏代码更改。
以前版本 | Simcenter STAR-CCM+ 2310 |
---|---|
|
|
网格化:并行包面
包面的新分布式内存 (MPI) 并行化缩短了 CAD 到网格的时间。因此,宏行为已更改。
如果有一个宏创建一个新的包络操作,该操作是在新的 MPI 包络模式下创建的,而不是使用原始(原有)方法创建的。这会导致包络行为发生更改,并改变一些选项(如间隙封闭)。如果创建包络操作的宏导致明显差异,并且您希望还原为原始行为,可以将包面宏设为“原有模式”,如以下示例所示。但是注意原有模式最终将被移除,因此考虑切换到新的 MPI 包面模式。
以前版本 | Simcenter STAR-CCM+ 2310 |
---|---|
|
|
时间:时间步提供程序的更改
一些时间步提供程序的标签已简化如下:
旧提供程序名称 | 更新的提供程序名称 (Simcenter STAR-CCM+ 2310) |
---|---|
自由表面 CFL 条件 | 自由表面 CFL |
LSI 平滑对流 CFL 条件 | LSI 平滑 CFL |
平滑对流 CFL 条件 | 平滑 CFL |
融化-凝固条件 | “融化-凝固” |
对流 CFL 条件 | CFL |
热扩散率条件 | 热扩散率 |
固体应力时间步提供程序 | 固体应力 |
最大粒子打包条件 | 最大粒子打包 |
缸内时间步控制 | 缸内 |
该重命名导致宏代码更改。
例如,如果宏使用以下内容获取固体应力时间步提供程序:
FeSolidStressTimeStepProvider feSolidStressTimeStepProvider_0 =
((FeSolidStressTimeStepProvider) adaptiveTimeStepModel_0.getTimeStepProviderManager().getObject("Solid Stress Time-Step Provider"));
代码必须改为:
FeSolidStressTimeStepProvider feSolidStressTimeStepProvider_0 =
((FeSolidStressTimeStepProvider) adaptiveTimeStepModel_0.getTimeStepProviderManager().getObject("Solid Stress"));
材料属性:弃用各向异性材料属性指定方法
材料属性指定方法各向异性和各向异性(原有)从 2210 版本开始已弃用,并计划从以后的版本中移除。有关这些方法和计划替换的详细信息,请参见 2310 发行说明“重要说明”章节中的“材料属性”。
如果任何现有宏使用已弃用的材料属性法(导热率、导电率、渗透率、介电常数的 9 个各向异性分量,或是导热率的各向异性(原有)),则搜索以下字符串的实例并更新它们,如下表中所示。
以前版本 | Simcenter STAR-CCM+ 2310 |
---|---|
AnisotropicElectricalConductivityMethodWithValues |
FullTensorElectricalConductivityMethodWithValues |
AnisotropicPermeabilityMethodWithValues |
FullTensorPermeabilityMethodWithValues |
AnisotropicPermittivityMethodWithValues |
FullTensorPermittivityMethodWithValues |
AnisotropicThermalConductivityMethodWithValues |
FullTensorThermalConductivityMethodWithValues |
AnisotropicThermalConductivityMethod |
FullTensorLegacyThermalConductivityMethod |
拉格朗日多相:液膜和拉格朗日相之间相互作用的更改
液膜和拉格朗日相之间的相间相互作用工作流程已更改。
以前,无需事先选择拉格朗日相即可在 Java 宏中激活相互作用模型。然而,Simcenter STAR-CCM+ 2310 中的改进已将拉格朗日相分为自由流相和壁面-边界相;分离后,限制了可激活的特定相互作用模型。
因此,对于液膜和拉格朗日相之间的相间相互作用,Java 宏必须先选择拉格朗日相,然后相应的模型才可用于自由流相和壁面-边界相。
以前版本 | Simcenter STAR-CCM+ 2310 |
---|---|
|
|
|
|
|
|
|
|
欧拉多相流 (EMP):大界面湍流阻尼模型的更改
作为对大尺度交界面湍流阻尼模型中壁面类型湍流阻尼的改进的一部分,已消除湍流阻尼参数下的湍流阻尼常数属性。添加了阻尼校准因子属性。
因为 TurbulenceDampingConstant
CSO(客户端-服务器对象)已移除,所以需要使用受支持类型之一来更新使用此 CSO 的任何宏,如以下示例所示。
K-Epsilon 湍流模型
以前版本 | Simcenter STAR-CCM+ 2310 |
---|---|
|
|
K-Omega 湍流模型
以前版本 | Simcenter STAR-CCM+ 2310 |
---|---|
|
|
DFBI:对 DFBI 显示器的更改
在 DFBI 模块中,引入了距离驱动程序约束;可以使用 DFBI 显示器可视化这些约束。
因此,可用于读取或设置 DFBI 显示器中的耦合图形大小的 Java 方法已经扩展为同时可以处理约束图形。方法已相应地重命名。
以前版本 | Simcenter STAR-CCM+ 2310 |
---|---|
|
|
尽管旧方法已弃用,但仍提供它们,直至进一步通知。因此,现有宏仍应按预期运行。
电磁:对默认电势求解器的更改
通过简化的用户设置,可以自动使用 Hypre 作为电势求解器,宏代码已更改。已移除 API Java 类 ElectricPotentialHypreIjIterativeSolver
,并且通过标准 AMGLinearSolver.java
求解器定制 API 完成电势求解器(现在仅为 Hypre)的定制。
具体更改如下:
LinearAlgebraSolverOption
未公开,并且 Hypre 将设为电势线性方程求解器。ElectricPotentialHypreIjIterativeSolver
Java 类已设为冗余并移除。- (Hypre)求解器定制在
AMGLinearSolver
类中完成。
以前版本 | Simcenter STAR-CCM+ 2310 |
---|---|
|
|
后处理:计划从 Java Framework 中移除 ChartStyle 类 (2402)
计划在版本 2402 中从绘图框架中移除 ChartStyle
类。
以下类结构不再受支持,它们可能存在于导入 .plt
文件的较旧 Java 宏中:
star.common.graph.ChartStyle
star.common.graph.ChartStyleManager
该类的早期使用示例在 exampleXYPlot
上显示数据集,其 ChartStyle
正在更新:
DataSet dataSet = exampleXYPlot.getYAxes().getAxisType("Y Type 1").getDataSets().getDataSet("Temperature");
dataSet.getChartStyle().setSymbolShape(JCSymbolStyle.NONE);
dataSet.getChartStyle().setLinePattern(JCLineStyle.SOLID);
dataSet.getChartStyle().setLineColor(Color.red);
dataSet.getChartStyle().setLineWidth(4);
近年来,Style
已在其自己的子对象中进行管理,ChartStyle
已变得不必要。
对于版本 2402,需要进行两项更改:
- 如果适用,直接更新
Style
,而不是通过ChartStyle
路由请求。 - 如果无法直接更改,则完全移除调用。
特定 Style
-to-Type
替换:
- 将
JCSymbolStyle
替换为SymbolShapeOption.Type
。 - 将
JCLineStyle
替换为LinePatternOption.Type
。 - 将
JCFillStyle
替换为FillPatternOption.Type
。
更新代码的详细说明,含示例
应根据需要更新以下与线样式相关的调用:
ChartStyle.setLinePattern
ChartStyle.setLineColor
ChartStyle.setLineWidth
对线样式 API 调用的更新的示例:
// At the top of the macro
import star.common.LinePatternOption;
import star.common.LineStyle;
DataSet dataSet = exampleXYPlot.getYAxes().getAxisType("Y Type 1").getDataSets().getDataSet("Temperature");
// Step 1: Replace getChartStyle() calls with their direct 'set' calls.
// dataSet.getChartStyle().setLinePattern(JCLineStyle.SOLID);
dataSet.getLineStyle().setLinePatternOptionInput(LinePatternOption.Type.SOLID); // (Step 2) replacement for JCLineStyle.SOLID
// dataSet.getChartStyle().setLineColor(Color.red);
dataSet.getLineStyle().setColor(Color.red);
// dataSet.getChartStyle().setLineWidth(4);
dataSet.getLineStyle().setLineWidth(4);
应根据需要更新以下与标记样式相关的调用:
ChartStyle.setSymbolShape
ChartStyle.setSymbolSize
ChartStyle.setSymbolStrokeWidth
ChartStyle.setSymbolColor
对标记样式 API 调用的更新的示例:
// At the top of the macro
import star.common.SymbolShapeOption;
import star.common.SymbolStyle;
DataSet dataSet = exampleXYPlot.getYAxes().getAxisType("Y Type 1").getDataSets().getDataSet("Temperature");
// Step 1: Replace getChartStyle() calls with their direct 'set' calls. Calls
// dataSet.getChartStyle().setSymbolShape(JCSymbolStyle.NONE);
dataSet.getSymbolStyle().setSymbolShapeOptionInput(SymbolShapeOption.Type.NONE); // (Step 2) replacement for JCSymbolStyle.NONE
// dataSet.getChartStyle().setSymbolSize(10);
dataSet.getSymbolStyle().setSize(10);
// dataSet.getChartStyle().setSymbolStrokeWidth(0.2);
dataSet.getSymbolStyle().setStrokeWidth(0.2);
// dataSet.getChartStyle().setSymbolColor(Color.red);
dataSet.getSymbolStyle().setColor(Color.red);
应根据需要更新以下与填充风格相关的调用:
ChartStyle.setFillPattern
ChartStyle.setFillColor
ChartStyle.setFillBackground
对填充风格 API 调用的更新的示例:
// At the top of the macro
import star.common.FillPatternOption;
import star.common.FillStyle;
DataSet dataSet = exampleXYPlot.getYAxes().getAxisType("Y Type 1").getDataSets().getDataSet("Temperature");
// Step 1: Replace getChartStyle() calls with their direct 'set' calls.
// dataSet.getChartStyle().setFillPattern(JCFillStyle.SOLID);
dataSet.getFillStyle().setLinePatternOptionInput(FillPatternOption.Type.SOLID); // (Step 2) replacement for JCFillStyle.SOLID
// dataSet.getChartStyle().setFillColor(Color.red);
dataSet.getFillStyle().setColor(Color.red);
// dataSet.getChartStyle().setFillBackground(Color.blue);
dataSet.getFillStyle().setBackgroundColor(Color.blue);
应完全移除以下 API 调用。他们的处理已中止/内部化。
ChartStyle.setLineCap
ChartStyle.setLineJoin
对线样式 API 调用的移除的示例:
DataSet dataSet = exampleXYPlot.getYAxes().getAxisType("Y Type 1").getDataSets().getDataSet("Temperature");
dataSet.getChartStyle().setLineCap(0);
dataSet.getChartStyle().setLineJoin(0);
旧标记、线样式和填充风格已替换为当前支持的类型
标记样式:import star.common.SymbolShapeOption;
以前版本 | Simcenter STAR-CCM+ 2310 |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
线样式:import star.common.LinePatternOption;
以前版本 | Simcenter STAR-CCM+ 2310 |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
填充风格:import star.common.FillPatternOption;
以前版本 | Simcenter STAR-CCM+ 2310 |
---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
样式 API 移除和替换
线样式
移除以下内容:
LineStyle.setVisible(boolean)
LineStyle.getJoin()
LineStyle.setJoin(int)
LineStyle.getCap()
LineStyle.setCap(int)
如下替换代码:
以前版本 | Simcenter STAR-CCM+ 2310 |
---|---|
|
|
|
|
标记样式
Remove SymbolStyle.setVisible(boolean)
。
如下替换代码:
以前版本 | Simcenter STAR-CCM+ 2310 |
---|---|
|
|
|
|
填充风格
Remove FillStyle.setVisible(boolean)
。
以前版本 | Simcenter STAR-CCM+ 2310 |
---|---|
|
|
|
|
CAE 集成:CGNS 导出的更改
内部连续体的导出改进导致宏代码更改,以激活 CGNS 文件导出的模型。
以前版本 | Simcenter STAR-CCM+ 2310 |
---|---|
|
|