www.tech-doc.cn 设计探索研究

设计探索研究


执行此简单示例的步骤如下:

  1. Simcenter Amesim中,使用帮助 > 获取演示加载 Robustness_Monte_Carlo.ame演示模型:

  2. 使用工具 > Python命令解释器...启动Python控制台。

    警告:

    若从Simcenter Amesim外部启动的Python控制台加载设计探索API,需确保模型处于展开状态(可右键点击模型选择展开)。

  3. 按照脚本提供的步骤序列执行。

    下方展示了一个运行设计探索研究并获取结果的示例脚本:

     
        import ame_DE_apy
        from ame_DE_apy import *
        ms=DE.get_model_studies(r'E:\UserData\Amesim\Test\
        Robustness_Monte_Carlo.ame')
         
        print ('\n-------获取NLPQL研究-------')
        study=ms.get_study('Robustness1', Study.study_type.MC)
        print (study)
         
        print ('\n-------获取可用算法-------')
        algo_list=study.get_available_algorithms()
        print (algo_list)
         
        print ('\n-------设置新算法-------')
        new_algo=study.set_algorithm(Algorithm.algorithm_type.Random)
        print (new_algo)
         
        print ('\n-------获取算法属性-------')
        property_list=new_algo.get_properties()
        print (property_list)
         
         
        print ('\n-------设置算法属性-------')
        is_algo_prop_set=new_algo.set_property(Algorithm.algorithm_property.
        No_Of_Runs, '12')
        print (is_algo_prop_set)
         
        print ('\n-------获取参数diamA-------')
        param=study.get_parameters()[0]
        print (param)
         
        print ('\n-------检查参数是否为输出-------')
        print (param.is_output())
         
        print ('\n-------修改参数属性:均值=0.25-------')
        is_prop_set=param.set_property(Parameter.parameter_property.Mean_Value, 
        '0.25')
        print (is_prop_set)
         
        print ('\n-------修改参数属性:分布=高斯-------')
        is_prop_set=param.set_property(Parameter.parameter_property.Distribution, 
        'Gaussian')
        print (is_prop_set)
         
        ms.save_studies()
        print ('\n-------运行研究-------')
        study.run()
        print ('\n-------获取研究结果-------')
        result=study.get_result()
        print (result)
         
        print ('\n-------检查结果是否可用-------')
        is_avble=result.is_available()
        print (is_avble)
         
        print ('\n-------获取运行次数-------')
        total=result.get_nb_runs()
        print (total)
         
         
        print ('\n-------检查所有统计均值-------')
        print (result.get_property(Result.result_property.Stat_Mean_Value))
         
        print ('\n-------检查参数\'diamA\'的峰态统计值-------')
        print (result.get_property_parameter(Result.result_property.Stat_Kurtosis, 
        'diamA'))
        ms.save_studies()