iCAx开思工具箱
标题:
如何输出优化后的参数值
[打印本页]
作者:
enmybh
时间:
2003-8-23 20:44
标题:
如何输出优化后的参数值
我构造了2个子函数void modification(int i, int j), 其中包含UF_MODL_edit_exp(string), UF_MODL_update();和parameter(tag_t part)是为了输出零件的参数值;然后在主函数中:
.
.
.
for (j=0; j<num_exps; j++)
{
if (UF_CALL(UF_MODL_ask_exp_tag_string(oexps[j], &string)))
{
UF_terminate();
}
else
UF_MODL_ask_exp_tag_value (oexps[j], [$Intialvalue[j] )]
}
int design;
for (i=0; i<10; i++)
{
for (j=0; j<num_exps-2; j++)
{
prt[m]=part;
modification(i,j);
UF_MODL_ask_mass_props_3d(solid,count,1,unit,density,accuracy,acc_val,mass_props,massprop_stat);
if (mass_props[1]<minvol)
{
minvol=mass_props[1];
design=m;
}
m++;
}
}
cout<<" minmvol="<<minvol<<endl;
cout<<design<<endl;
parameter(prt[design]);
我找到了体积的最小值和他是第m次修改,但最后输出总好象是循环最后一次的参数值.好象prt[m]=part这一句没有把每次的修改分别存入相应的PRT[m]中.
如何解决?
作者:
zzz
时间:
2003-8-24 09:16
你没有记录体积最小时的参数值?用modification每次都对零件的参数作出了实实在在的改变,系统没有那么智能,自动回溯到最优时的参数。
作者:
enmybh
时间:
2003-8-24 18:45
我想只要我找到体积最小时对应的part,然后在parameter(prt[design])中对它做UF_MODL_ask_exp_tag_string(oexps
, &string),把他的参数输出.
作者:
enmybh
时间:
2003-8-24 22:16
我明白了我应该在每次update之前存入参数.能给个建议如何实现吗?
欢迎光临 iCAx开思工具箱 (https://t.icax.org/)
Powered by Discuz! X3.3