24小时热门版块排行榜    

查看: 1871  |  回复: 11
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

study3040

铜虫 (初入文坛)

[求助] 亲们,求助一下,这个非线性方程组怎么解? 已有1人参与

各位亲们,想解这个非线性方程组,含有积分项,且上下界中含有变量。
求助各位了,怎么用matlab解呢?结果是多少,求解求解~~非常3ks
或者有其他解的办法没,都可以

亲们,求助一下,这个非线性方程组怎么解?
求解非线性方程组.jpg
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

被上帝咬过的苹果
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dingd

铁杆木虫 (职业作家)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★ ★
study3040: 金币+30, ★★★★★最佳答案, 非常感谢。学习了,1stOpt很强大。 2014-06-21 12:50:15
1stOpt求解:
CODE:
Constant s0=0.055, r=0.04, c=1000;
Parameter theta1,alfa,p,q;
ConstStr g=-p*cos(alfa)-q*sin(alfa),
         fun_cal1=1/sqrt(abs(2*(p*cos(aaa)+q*sin(aaa)+g)/c)),
         fun_cal2=cos(bbb)/sqrt(abs(2*(p*cos(bbb)+q*sin(bbb)+g)/c)),
         fun_cal3=sin(ccc)/sqrt(abs(2*(p*cos(ccc)+q*sin(ccc)+g)/c));
Function
    s0-theta1*r-Integrate(fun_cal1,aaa=theta1,alfa)+Integrate(fun_cal1,aaa=alfa,pi/2);
    r*(1-sin(theta1))-Integrate(fun_cal2,bbb=theta1,alfa)+Integrate(fun_cal2,bbb=alfa,pi/2);
    r*cos(theta1)-Integrate(fun_cal3,ccc=theta1,alfa)+Integrate(fun_cal3,ccc=alfa,pi/2);
    r-1/sqrt(abs(2*(p*cos(theta1)+q*sin(theta1)+g)/c));

目标函数值(最小): 2.67744942639559E-34
theta1: -1.19096798768745
alfa: 1.43287771287534
p: 344518.425606119 or -344518.425606119
q: -120949.904266442 or +120949.904266442
7楼2014-06-20 23:00:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 12 个回答

dingd

铁杆木虫 (职业作家)

【答案】应助回帖

感谢参与,应助指数 +1
楼主图方便自己贴个图片省事,难道还要帮助的人照着图片一个个输入?应先学会懂得如何求助。
2楼2014-06-20 14:13:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

arising2010

铜虫 (正式写手)

可以试试将积分项用数值近似公式表示,把整个方程组转化成一个近似的代数方程组,然后利用相关求解非线性代数的方法求解

[ 发自手机版 http://muchong.com/3g ]
3楼2014-06-20 15:49:57
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

study3040

铜虫 (初入文坛)

引用回帖:
2楼: Originally posted by dingd at 2014-06-20 14:13:29
楼主图方便自己贴个图片省事,难道还要帮助的人照着图片一个个输入?应先学会懂得如何求助。

小弟不常发贴,不懂规矩,请见谅哈!程序如下。
求解时会出出现如下问题:
Warning: Infinite or Not-a-Number function value encountered.
查了下,有人说是存在第二类间断点,不知何解。
1、不知我写的这段程序是否可行?
2、是否有其他别的方法求解含积分的方程组?

function F = myfun2(x)
syms p theta theta1 q g alfa;
s0=0.055;       %%已知参数1,0.055
r=0.04;         %%已知参数2,0.04
theta1=x(1);    %%待求量1初值,初值范围0<theta1<1.57
alfa=x(2);      %%待求量2赋初值,初值范围0<alfa<1.57
p=x(3);         %%待求量3赋初值,初值范围-10<p<10
q=x(4);         %%待求量4赋初值,初值范围-10<q<10
c=1000;         %%常数

g=-p*cos(alfa)-q*sin(alfa); %计算中间变量g
fun_cal1=@(aaa)1./sqrt(abs(2*(p*cos(aaa)+q*sin(aaa)+g)/c)); %积分函数1
fun_cal2=@(bbb)cos(bbb)./sqrt(abs(2*(p*cos(bbb)+q*sin(bbb)+g)/c)); %积分函数2
fun_cal3=@(ccc)sin(ccc)./sqrt(abs(2*(p*cos(ccc)+q*sin(ccc)+g)/c)); %积分函数3

%%待求方程组如下:(4个方程,想求4个变量theta1,alfa,p,q)
F = [s0-theta1*r-quad(fun_cal1,theta1,alfa)+quad(fun_cal1,alfa,pi/2);
    r*(1-sin(theta1))-quad(fun_cal2,theta1,alfa)+quad(fun_cal2,alfa,pi/2);
    r*cos(theta1)-quad(fun_cal3,theta1,alfa)+quad(fun_cal3,alfa,pi/2);
    r-1/sqrt(abs(2*(p*cos(theta1)+q*sin(theta1)+g)/c))];

% options=optimset('Display','iter');
% fsolve(@myfun2,[0.4,1.2,1.2,1.3]) %%初值
被上帝咬过的苹果
4楼2014-06-20 16:48:40
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见