声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1107|回复: 6

[编程技巧] 请问这样的表达式可不可以求最小值

[复制链接]
发表于 2009-10-12 16:51 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
,表达式中含有十个变量,其中一个变量t是有范围的(t=1——1.5),可不可以把其他九个变量看成是定植,寻求t的值,此时对应函数最小值,用其他九个变量来表示t?
回复
分享到:

使用道具 举报

发表于 2009-10-12 22:14 | 显示全部楼层
这个有点难,你总共有多少个约束方程?
 楼主| 发表于 2009-10-12 23:00 | 显示全部楼层
其实目的是把它作为一个约束条件,因为要确定这个未知量的范围值,所以只好这样求,但是我也不会求
发表于 2009-10-13 09:08 | 显示全部楼层

回复 楼主 hudu11111 的帖子

我觉得你还是要研究一下其他参数,因为如果你只把他们当做一个符号的话是不行的。它们的取值对函数值是有影响的。
 楼主| 发表于 2009-10-13 21:38 | 显示全部楼层
syms x1 x2 x3 x4 x5 x6 x7 x8 x9 x10;
a=x1+x3*cos((4*pi/3)*x10);
b=x2-x3*sin((4*pi/3)*x10);
e=2*atan((1-((x4^2+a^2+b^2-x5^2)/(2*x4*(a^2+b^2)^(1/2)))*((-a)/((a^2+b^2)^(1/2)))-((1-((x4^2+a^2+b^2-x5^2)/(2*x4*(a^2+b^2)^(1/2)))^2)^(1/2))*(b/(a^2+b^2)^(1/2)))/(((1-((x4^2+a^2+b^2-x5^2)/(2*x4*(a^2+b^2)^(1/2)))^2)^(1/2))*((-a)/((a^2+b^2)^(1/2)))-((x4^2+a^2+b^2-x5^2)/(2*x4*(a^2+b^2)^(1/2)))*(b/(a^2+b^2)^(1/2))));
c=a+x4*cos(e);
d=b+x4*sin(e);
m=a+x7*cos(e+x9);
n=b+x7*sin(e+x9);
q=asin((m+x8)/x6);
p=n+x6*cos(q);
f=diff(p,x10);
当f=0时 x10用其他九个量表示出来
怎么做?
谢谢
发表于 2009-10-17 01:49 | 显示全部楼层

回复 6楼 hudu11111 的帖子

方程不复杂的话可以用solve(f,x10)求解。但方程过于复杂,不一定能求得解析解。可以试试把x1-x9赋值,求出f=0时x10的值
 楼主| 发表于 2009-10-17 12:37 | 显示全部楼层

回复 7楼 friendchj 的帖子

谢谢解答
不过我想得到的是x10用x1——x9九个参数来表示的表达式
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-9-22 04:13 , Processed in 0.053836 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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