• iSight集成Adams/View:Simcode


    虽然iSight有Adams/View接口,但对Adams的版本有限制。下面使用iSight的simcode,就可以支持任意版本的Adams了。

    Adams模型如下:

    image

    1. 编写cmd文件

    file binary read &
        file_name = "E:WXPAdamsViewisightAdams_byCMDlatch.bin" &
        alert = no
    
    
    var set var=DV_6 real_value = 0.7434119172961013
    var set var=DV_7 real_value = 1.9259555962462807
    var set var=DV_8 real_value = 4.433676661326009
    var set var=DV_9 real_value = 4.714610513466087
    var set var=DV_10 real_value = 7.779034103913939
    var set var=DV_11 real_value = 6.796475165941863
    var set var=DV_12 real_value = 6.286717021438926
    var set var=DV_13 real_value = 6.98794537270161
    var set var=DV_14 real_value = 5.115403982604715
    var set var=DV_15 real_value = 8.202838178072785
    
    simulation single scripted &
        sim_script_name = .latch.Last_Sim &
        reset_before_and_after = yes
    
    numeric_results write &
        result_set_component_name = MAG, Last_Run.TIME &
        sort_by = by_value &
        order = descending &
        write_to_terminal = off & 
        file_name = "E:WXPAdamsViewisightAdams_byCMDspring.txt"

    latchi.bin是要优化的Adams模型;

    var set var = DV_* 是要优化的设计变量;

    仿真是由脚本.latch.Last_Sim控制,reset_before_and_after设置为yes表示每次仿真前后都要重置。

    image

    spring.txt是输出文件,其内容是由result_set_component_name来定义的,名称之间用逗号隔开。这里输出是MAG和Last_Run.TIME,并按倒序排列。这与在Adams/PostProcessor是对应的。

    image

    输出内容如下:

    A.  .latch.Last_Run.StringOfForce.MAG (newton)
    B.  .latch.Last_Run.TIME (sec)
    
           A               B         
     3.497601E+003    2.000000E-001   
     3.358114E+003    1.980000E-001   
     3.318937E+003    1.960000E-001   
     3.029387E+003    1.940000E-001   
     2.987023E+003    1.920000E-001   
     2.807605E+003    1.900000E-001   
     2.783798E+003    1.880000E-001   
     2.676770E+003    1.860000E-001   
     2.664381E+003    1.840000E-001   
     2.588095E+003    1.820000E-001   
     2.580667E+003    1.800000E-001   
     2.518880E+003    1.780000E-001   
     2.514620E+003    1.760000E-001   
     2.459801E+003    1.740000E-001   
     2.457834E+003    1.720000E-001   
     2.405967E+003    1.700000E-001   
     2.405960E+003    1.680000E-001   
     2.356435E+003    1.660000E-001   
     2.354424E+003    1.640000E-001   
     2.307433E+003    1.620000E-001   
     2.303180E+003    1.600000E-001   
     2.257533E+003    1.580000E-001   
     2.250652E+003    1.560000E-001   
     2.205627E+003    1.540000E-001   
     2.195428E+003    1.520000E-001   
     2.151713E+003    1.500000E-001   
     2.150561E+003    1.480000E-001   
     2.136098E+003    1.460000E-001   
     2.096343E+003    1.440000E-001   
     2.091177E+003    1.420000E-001   
     2.071141E+003    1.400000E-001   
     2.036315E+003    1.380000E-001   
     2.026218E+003    1.360000E-001   
     1.998838E+003    1.340000E-001   
     1.970465E+003    1.320000E-001   
     1.954294E+003    1.300000E-001   
     1.917255E+003    1.280000E-001   
     1.897496E+003    1.260000E-001   
     1.873899E+003    1.240000E-001   
     1.824325E+003    1.220000E-001   
     1.816026E+003    1.200000E-001   
     1.783518E+003    1.180000E-001   
     1.724723E+003    1.160000E-001   
     1.718114E+003    1.140000E-001   
     1.681860E+003    1.120000E-001   
     1.622564E+003    1.100000E-001   
     1.597314E+003    1.080000E-001   
     1.568254E+003    1.060000E-001   
     1.509209E+003    1.040000E-001   
     1.461937E+003    1.020000E-001   
     1.443129E+003    1.000000E-001   
     1.385403E+003    9.800000E-002   
     1.313952E+003    9.600000E-002   
     1.308374E+003    9.400000E-002   
     1.253238E+003    9.200000E-002   
     1.167364E+003    9.000000E-002   
     1.157460E+003    8.800000E-002   
     1.116083E+003    8.600000E-002   
     1.024530E+003    8.400000E-002   
     9.981465E+002    8.200000E-002   
     9.781544E+002    8.000000E-002   
     8.846512E+002    7.800000E-002   
     8.438606E+002    7.600000E-002   
     8.422008E+002    7.400000E-002   
     7.521066E+002    7.200000E-002   
     7.171571E+002    7.000000E-002   
     6.952084E+002    6.800000E-002   
     6.303409E+002    6.600000E-002   
     6.010998E+002    6.400000E-002   
     5.613901E+002    6.200000E-002   
     5.216125E+002    6.000000E-002   
     4.976557E+002    5.800000E-002   
     4.433115E+002    5.600000E-002   
     4.270085E+002    5.400000E-002   
     4.077383E+002    5.200000E-002   
     3.466379E+002    5.000000E-002   
     3.419748E+002    4.800000E-002   
     3.313902E+002    4.600000E-002   
     2.799041E+002    4.400000E-002   
     2.680295E+002    4.200000E-002   
     2.571407E+002    4.000000E-002   
     2.257823E+002    3.800000E-002   
     2.166965E+002    3.600000E-002   
     1.877344E+002    3.400000E-002   
     1.830562E+002    3.200000E-002   
     1.762658E+002    3.000000E-002   
     1.505007E+002    2.800000E-002   
     1.456106E+002    2.600000E-002   
     1.321667E+002    2.400000E-002   
     1.270103E+002    2.200000E-002   
     1.237226E+002    2.000000E-002   
     1.116855E+002    1.800000E-002   
     1.097937E+002    1.600000E-002   
     1.038876E+002    1.400000E-002   
     1.032703E+002    1.200000E-002   
     8.873737E+001    1.000000E-002   
     5.565966E+001    8.000000E-003   
     3.145351E+001    6.000000E-003   
     1.475188E+001    4.000000E-003   
     4.483455E+000    2.000000E-003   
     0.000000E+000    0.000000E+000

    2. 编写BAT文件

    要想在命令方式下调用Adams,需编写如下的批处理文件goAVIEW.bat。

    del E:WXPAdamsViewisightAdams_byCMDspring.txt
    "D:MSC.SoftwareAdams_x642014commonmdi.bat" av ru-s b E:WXPAdamsViewisightAdams_byCMDlatch.cmd e

    上面文件的第一行为每次调用前删除上一次的结果文件spring.txt。第二行是命令行调用adams读取步骤1中文件的方法。

    3. iSight设置

    在iSight工作区中拖入Application Components下的DataExchanger(2个)和OS Command(1个),Process Components下的

    Optimization(1个)至Task1中。

    image

    左侧Data Exchanger读取latch.cmd文件,双击弹出如下界面。

    image

    点击中间的Click here to open a new Data Source,添加write属性的cmd文件。

    image

    点击Next进入下一步,再Back返回上一步。点击File to Read at Runtime下文件名右侧的…按键,将文件写出路径设为绝对路径:

    image

    点击Next,选择General Text。点击Finish完成设置。

    image

    在模板文件中选中某个设计变量数值,在Parameter中输入变量名,然后点击右侧笔图标的write按键,完成iSight的该设计变量创建。使用同样方法将所需的所有设计变量全部创建出来。点击OK完成写出文件的所有设置。

    image

     

    双击iSight工作区右侧的Data Exchanger 1,点击中间的Click here to open a new Data Source,添加read属性的文件。

    image

     

    点击Next进入下一步,再Back返回上一步。点击File to Read at Runtime下文件名右侧的…按键,确认与下图设置一致:

    image

     

    点击OK后,再点击Next按键,选择General Text。点击Finish完成设置。选中下图绿色高亮数据,在Parameter中输入变量名,点击右侧的Read按键,完成优化目标变量的创建。点击完成读取文件的设置。

    image

     

    双击iSight工作区的OS Command,在Basic选项卡中点击Find Program按键选择步骤2中创建的goAVIEW.bat文件。点击OK完成命令文件的设置。

    image

     

    4. 设置优化方法

    双击Optimization1,在General选项卡中选择多岛遗传算法作为优化方法:

    image

     

    在Variables选项卡中勾选所有要优化的设计变量。

    image

     

    在Objectives中勾选优化的目标函数SpringForce。点击OK完成优化方法的设置。

    image

     

    点击工具栏的Run Model或按F4,开始优化。优化结束后,点击Summary选项卡,查看优化结果。

     

    示例文件

  • 相关阅读:
    Linux下MySQL数据库常用基本操作 一
    Cdnbes负载均衡的权重用法解释
    docker安装
    centos网卡配置和防火墙停止和启动
    Excel 如何锁定表头
    权值线段树 基础入门知识详解
    JZOJ 3362. 【NOI2013模拟】数数(DFS)
    JZOJ 3348. 【NOI2013模拟】秘密任务(最短路+最小割唯一性)
    JZOJ 3303. 【集训队互测2013】城市规划(卷积+分治NTT)
    FFT快速傅里叶变换(超详细的入门学习总结)
  • 原文地址:https://www.cnblogs.com/xpvincent/p/4705143.html
Copyright © 2020-2023  润新知