找回密码
 立即注册

QQ登录

只需一步,快速开始

微信扫码登录

搜索
查看: 2459|回复: 12

[原创] NX方程组求解、变量取值限制探讨

[复制链接]

16

主题

556

回帖

9245

积分

少校

积分
9245

灌水王灌水王

发表于 2022-6-12 14:18:54 | 显示全部楼层 |阅读模式
问题来源,点击了解

总结来源于网上问题,我觉得可以归纳为两点,
1.方程式求解
2.变量取值范围
2.jpg

简化总结,提出以下问题,以一个简单的三元一次方程为例,
设X,Y,Z,分别对应立方体的长,宽,高,它们存在如下关联关系
X,Y,Z为整数,且>0
  X+Y+Z=75,
  X=2.5Y
  X*Y*Z=5000

想和大家探讨在NX中,怎么去求解方程组。
PS(加上限值变量取值范围的情况,问题要复杂一些,可能会存在多解,此题先不考虑,)
我目前知道在Catia中,怎么解决此类问题(Catia中有求解方程组的功能),但在NX中苦苦寻求,不得其解,期待能者来解惑!!
PS:此例中问题比较简单,可能有人说有工解算一下,求出X,Y,Z值在到NX中做一个就好了,
我想的不是为了做题还做题,假若此方程3个以上变量,或方程很复杂,手算是笨拙的方法,想探讨怎么解决高效的解决此类问题。





评分

参与人数 1G币 +50 收起 理由
3D世界网-零 + 50 不错,支持你!

查看全部评分

16

主题

556

回帖

9245

积分

少校

积分
9245

灌水王灌水王

 楼主| 发表于 2022-6-12 14:36:57 | 显示全部楼层
本帖最后由 奎子* 于 2022-6-12 17:42 编辑

先占一层,为后续方程组、限制变量取值结合加深问题难度,探讨预留
2022/06/12 16时40分更新增加

思考了一阵,结合方程组求解,限制变量取值的问题来了,欢迎大家来挑战。
3.jpg

已知此零件体积满足5000~10000,已每次递增100,
X,Y,Z为正整数 , X-Y>0 , Z=5±2
要求做出参数模型,使用X,Y,Z值能跟随体积变化而变化。
如当体积为5000时,X,Y,Z值为多少?
    当体积为6700时,X,Y,Z值为多少?

     当体积为....... 时,X,Y,Z值为多少?

在自己在出好题后在Catia验证解题时,也在想用NX中如何来解释,
来了一点灵感,等下去NX中验证一下,要能解决再来分享
2022/06/12  17时40分

去NX尝试了一下,还是没能解决。。。
上传一个Catia中解决的图片,看能给大家一点灵感提示不
方程组解释说明
X>0 and Y>0;                说明让X,Y的取代大于0,整数限制在创建参数时选择的就是整数。
X-Y>0 ;                          让X-Y值大于0
X**2*Z-Y**2*Z==5000;  零件体积表达式 X**2 为Catia中X平方,NX中为X^2
Z>=3 and Z<=7            让Z的取值 3≤Z≤7,Z值限制,也可以在参数创建时设置它的范围,则此行不需要
                                       整数限制在创建参数时选择的就是整数。

Catia中 要体积变化只要改变5000的值,然后让方程重新求解一下就好了

4.jpg




点评

用NX中优化和灵敏度研究来做 去看6楼  发表于 2022-6-13 11:52

0

主题

1035

回帖

1万

积分

中校

积分
10222
发表于 2022-6-12 16:23:39 | 显示全部楼层
{:smile:}  真心不会    大佬你玩的多样化

5

主题

348

回帖

1万

积分

大校

积分
16446
发表于 2022-6-12 17:42:48 | 显示全部楼层
本帖最后由 okok2002 于 2022-6-12 17:49 编辑

Snipaste_2022-06-12_16-47-21.png
NX用优化做的结果
A=20
B=50
C=5

16

主题

556

回帖

9245

积分

少校

积分
9245

灌水王灌水王

 楼主| 发表于 2022-6-12 18:50:18 来自手机 | 显示全部楼层
本帖最后由 奎子* 于 2022-6-12 18:58 编辑
okok2002 发表于 2022-6-12 17:42
NX用优化做的结果
A=20
B=50


用优化有点小问题,会出现小数,在创建参数时,如果设定为整数的话,参数就不会出现在优化的列表里,也就是这个参数不能选择,不知道是不是软件Bug

16

主题

556

回帖

9245

积分

少校

积分
9245

灌水王灌水王

 楼主| 发表于 2022-6-13 11:51:22 | 显示全部楼层
奎子* 发表于 2022-6-12 14:36
先占一层,为后续方程组、限制变量取值结合加深问题难度,探讨预留
2022/06/12 16时40分更新增加


NX中目前我所知最好的方式是用优化和灵敏度研究来做
但这种方式还是存在一些问题,不能限制变更X,Y,Z值为整数
在创建参数时如果选择为整数,则不会X,Y,Z表达式就不会显示在优化可选择参数列表内
(目前NX中我无法让变量限制为整数)
还有是优化和灵敏度研究都是穷举法,就是不断去逼进目标植,
比如我设计的体积目标值,5003在XYZ在整数范围内是无解的,
用在Catia中方程式求解直接会报“无解”,
而NX穷举逼进算法,会按先调X值,再调Y值来逼进算法,如果X,Y都不能逼进值才会去调Z这个变更
此题中调X,Y值就能逼进目标值,所以它根本不会动Z值,只认你的初始Z值,然后不断去调节X,Y值来逼进目标体积值。

2022-06-13-11-27-43.gif

81

主题

1569

回帖

1万

积分

上校

积分
13613
发表于 2022-6-13 13:40:49 | 显示全部楼层
对于学历高的人来说 很简单 就是变量

1

主题

33

回帖

2872

积分

少尉

积分
2872
发表于 2022-6-13 18:46:11 | 显示全部楼层
奎子* 发表于 2022-6-13 11:51
NX中目前我所知最好的方式是用优化和灵敏度研究来做
但这种方式还是存在一些问题,不能限制变更X,Y,Z ...

5000有两组解 X55 Y45 Z5 ;X35 Y15 Z5
6000的解更多,请问在CATIA里面如何解?
NX可以让它按照你给定的范围去计算。

16

主题

556

回帖

9245

积分

少校

积分
9245

灌水王灌水王

 楼主| 发表于 2022-6-14 09:15:48 | 显示全部楼层
本帖最后由 奎子* 于 2022-6-14 09:30 编辑
neopan 发表于 2022-6-13 18:46
5000有两组解 X55 Y45 Z5 ;X35 Y15 Z5
6000的解更多,请问在CATIA里面如何解?
NX可以让它按照你给定 ...

是的 我在出题的时候也说明了会存在多解的
因为有三个变量,
X,Y只限制是大于零的正整数,且X-Y>0
Z=5±2,
限制范围很小,肯定会存会多值,且体积越大,解可能更多
Catia中对存在多解的方程组求解,不会弹出多解提示,只会给多一组满足要求的解
Catia中可指定变更变动范围,可以成整数变化,也可是小数变化。
NX优化中也可指定变更上下限范围,但不能限制它成整数变化,
就拿我举例的 当体积为5003或43时,X,Y,Z值不存在整数解,
当NX中优化不能限制成整数,它会穷举逼进,找到X,Y,Z逼进体积的目标值,
当NX中变量成小数,理论上会有无数解的当你应用优化求解时,你会发现Z变量,在优化中都不会变化,不管你的体积目标是5003,或43或更小,
它都是你输入的理论值,虽然你设置它在3~7变化,X,Y值不能限制成整数变化,它只变化X,Y值就能逼进目标值了
当在Catia中能限制变更范围且让它成整数变化,你调节体积,Z的取值会变化的



9

主题

283

回帖

6581

积分

上尉

积分
6581
发表于 2022-6-14 10:04:11 | 显示全部楼层
感觉回到中学时代,不爱读书看到这些都不想动脑袋。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

咨询QQ:1359218528|发帖须知!|Archiver|手机版|小黑屋|UG爱好者论坛 ( 京ICP备10217105号-2 )

GMT+8, 2024-12-29 08:06

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表