宏 API 更改 2.10

Simcenter STAR-CCM+ 2.10 中,针对停止条件和 VOF 进行了宏 API 的更改。

添加到停止条件的单位:

  • monitorIterationStoppingCriterionMinLimitType_0.setLimit(1.0E-6);

    修改为

    monitorIterationStoppingCriterionMinLimitType_0.getLimit().setValue(1.0E-6);

  • monitorIterationStoppingCriterionAsymptoticType_0.setMaxWidth(0.02);

    修改为

    monitorIterationStoppingCriterionAsymptoticType_0.getMaxWidth().setValue(0.02);

由于 VOF 中的更改:

  • MultiPhaseMixtureModel 已被移除。 它替换为 EulerianMultiPhaseModelMultiPhaseMaterialModel,因此以前启用 MultiPhaseMixtureModel.class,现在必须启用 EulerianMultiPhaseModel.classMultiPhaseMaterialModel.class,例如:
    
    physicsContinuum_0.enable(MultiPhaseMixtureModel.class);

    修改为

    
    physicsContinuum_0.enable(EulerianMultiPhaseModel.class); physicsContinuum_0.enable( MultiPhaseMaterialModel.class);
  • VofEquationOfStateModel 已被移除。 它替换为 MultiPhaseEquationOfStateModel,因此以前启用 VofEquationOfStateModel.class,现在必须启用 MultiPhaseEquationOfStateModel.class,例如:
    
    physicsContinuum_0.enable(VofEquationOfStateModel.class);

    修改为

    
    physicsContinuum_0.enable(MultiPhaseEquationOfStateModel.class);
  • MultiPhaseMixture 已被移除。 以前从 MultiPhaseMixtureModel 访问 MultiPhaseMixture 并使用 MultiPhaseMixture.addComponent() 将 Gas/LiquidComponent 对象添加到混合物,现在使用 EulerianMultiPhaseModel.createPhase() 创建新 EulerianPhase 对象。
    
    // access EulerianMultiPhaseModel from PhysicsContinuum 
    EulerianMultiPhaseModel eulerianMultiPhaseModel_0 = physicsContinuum_0.getModelManager().getModel(EulerianMultiPhaseModel.class);
    
    // create phase-0 -- gas Oil Vapor 
    EulerianPhase eulerianPhase_0 =  eulerianMultiPhaseModel_0.createPhase();
    
    // create phase-1 -- liquid Oil 
    EulerianPhase eulerianPhase_1 =  eulerianMultiPhaseModel_0.createPhase();
  • 已经创建了新的 SinglePhaseLiquidModelSinglePhaseGasModel 材料模型。 在每个 EulerianPhase 中,根据需要为相启用 SinglePhaseLiquidModelSinglePhaseGasModel 以及状态方程模型,例如:
    
    // phase-0 -- gas Oil Vapor 
    eulerianPhase_0.enable(SinglePhaseGasModel.class); eulerianPhase_0.enable(ConstantDensityModel.class);
    
    // phase-1 -- liquid Oil 
    eulerianPhase_1.enable( SinglePhaseLiquidModel.class); eulerianPhase_1.enable(ConstantDensityModel.class);
  • 已经创建了新的 SinglePhaseGasSinglePhaseLiquid 材料类。 以前在(现已停止的)MultiPhaseMixture 的每个 Gas/LiquidComponent 材料中设置材料属性,现在在每个相的 SinglePhaseGas/Liquid 材料中设置材料属性。 每个相中的材料通过该相中的材料模型来访问,例如:
    
    // phase-0 -- gas Oil Vapor 
    // get SinglePhaseGasModel from ModelManager in phase-0 
    SinglePhaseGasModel singlePhaseGasModel_0 = eulerianPhase_0.getModelManager().getModel(SinglePhaseGasModel.class );
    
    // get SinglePhaseGas material from SinglePhaseGasModel in phase-0 
    SinglePhaseGas singlePhaseGas_0 =  ((SinglePhaseGas) singlePhaseGasModel_0.getMaterial()); singlePhaseGas_0.setPresentationName("Oil vapor");
    
    // set value for constant density in phase-0 
    ConstantMaterialPropertyMethod constantMaterialPropertyMethod_0 = ((ConstantMaterialPropertyMethod) ((ConstantDensityProperty) singlePhaseGas_0.getMaterialProperties().getMaterialProperty( ConstantDensityProperty.class)).getMethod()); constantMaterialPropertyMethod_0.getQuantity().setValue(0.2);