数学建模社区-数学中国
标题:
matlabd的fsolve函数求解方程组
[打印本页]
作者:
追梦人1101
时间:
2013-1-26 19:23
标题:
matlabd的fsolve函数求解方程组
function fun=Untitled6(x)
7 Y9 v/ b! d8 I4 P4 k+ o
theta=pi/18;
" e+ R2 d6 }! p7 y7 T
k=0.97; %k为万向节的传输效率
6 ]- l* Q8 M" J8 @" B
R=13; %R为轮子的半径
# X, I3 `+ x( X- H. ^
r=4;
) _# w5 D- a1 z! B
D=250;
3 {" }4 C" T) R
fr=0.2; %fr为轮子的滚动摩阻
0 @! |$ m7 k- u; T/ Q5 B
mu=0.4; %mu为轮与有机玻璃的摩擦系数
! g/ }+ `6 I+ f
Wf=5; %Wf为电线所产生的负载
) t; }" c/ k+ }, F
G1=5;
' Q2 U% {' { t
G2=80; %G2为电机,导向装置和加工头的重力和N
" x, F1 e$ k& A9 X. {/ c) p
alpha=11.5*pi/180;
3 I4 ]2 K5 C" l) A3 N( i2 g
beta=33.5*pi/180;
4 L" {8 I/ X# D2 N
gamma=45*pi/180;
7 u+ n6 e# x% i/ x
rho=1.205;%rho为气体密度kg/m3
7 W" ~* E5 o% n+ H; p
V=300;%V为气体速度m/s
4 H) w; \/ A& C* Z$ C
d=10;
% Y3 M2 r: k2 [! n7 s$ V, W
Q=V*pi*d^2/4;%Q为气体流量
+ ?. X, i# @. ]0 \
8 [: e- N! B; O1 M
f1=x(1);
: M5 ^% _8 _" p0 [7 W
%f1为轮与管壁之间的滚动摩擦
( `: M6 A' W( u ?8 w* P) X
f2=x(2);
( e, W# u; ?$ E( x3 U
%f2为轮与轮轴之间的摩擦
. z5 [4 J1 D2 [3 @9 R
Fp=x(3);
1 u) a( l# t8 d0 A5 ?. q0 S2 W8 U
% Hx为由于周向力引起的滑动趋势的摩擦力
" H# `* w; T& ?2 H
Fx=x(4);
, g+ D+ p7 q7 U2 m4 l/ k A
%Hy为由于G和W引起的沿管道轴线方向滑动趋势的摩擦力
; R% W* A2 m, Y, V7 B% {' ?
Fy=x(5);
9 F5 l A6 [) h6 X' c6 e8 g( z+ U9 a
%Fx为轴对轮的周向分力
- r% U$ w. A8 M4 y- N) C
Fz=x(6);
( b0 `) H* _* q+ [( c
%Fy为轴对轮沿管道轴线的分力
3 @0 ?, ?6 [# }# n
Hx=x(7);
: F' @/ |9 \0 z$ q/ ?
%Fz为轴对轮沿管道径向的分力
. X2 J- m, |/ b6 \- |
Hy=x(8);
$ Y) w: @( {( h7 a, \
%Fp为牵引力分布在每个导向轮上的力
5 R# D! \4 G4 r
Nz=x(9);
% K) l" I6 H9 R: m& P
Tm=x(10);
7 r$ {' I" n# k( ~; ?1 }# Y
8 k' W- Q# M2 F1 J2 Y! M! ]7 _
! a4 r P9 G6 o% {% u
%Nx=x(9);
- k& _8 f- _$ f" U2 T9 I U) |
%Nx为轴对轮的周向分力
3 @9 F8 q+ [& P2 T. Y- _2 E2 L
%Ny=x(10);
4 ~0 T8 D8 d$ ^% I. z4 f0 a
%Ny为W和G在管道轴向的分力与滚动摩擦的和
3 L# a, x1 q& B8 [
%f=x(11);
& l' q" Y) |% ]- B, x2 n
%f为由电机扭转和气体冲量引起的滚动趋势的摩擦力
7 u6 B5 U$ b# Z' r4 u7 E& O. C
) b8 a* j; B3 H- }/ X( I
fun(1)=Hy+(f1+f2)*sin(theta)-Fy;
) Q' b9 c( K! \# f) v6 @. z$ ~
fun(2)=(f1+f2)*cos(theta)+Fx-Hx;
3 T! y/ G1 r3 l3 X8 A/ Y
fun(3)=Hy*sin(theta)*R+f1*R-Hx*R*cos(theta)+f2*r;
0 G5 c* v* b5 N L
fun(4)=Hx^2+Hy^2-(mu*Fz)^2;
$ ^2 l: q' e2 H& m' v
fun(5)=k*Tm-3*Hx*D/2+3*f1*cos(theta)*D/2;
3 W# O H) V( L. W
fun(6)=k*Tm-3*Fx*D/2;
& u# s( A6 g6 R; W
fun(7)=Fp-(G2*cos(gamma)/6+Nz*fr/R+Wf/6);
/ \$ d# g" e0 _: X+ ~3 Y1 v/ G
fun(8)=(Tm+3*rho*Q*V*D/2)/(D*6/2)-mu*Nz;
# X& k) Y6 U5 f! N- F! H
fun(9)=2*Fp/cos(alpha)+G1*cos(beta)/3-Fy;
1 m+ I( J/ m% u& u4 c
fun(10)=3/2*D*Fx/k-Tm;
! I5 ~& f. d+ d% t
( d* ~' g; L: I9 \0 |1 p
# B" i% | g2 \: _
在求解时,matlab显示:
1 W- g! h; z! {# D
"Solver stopped prematurely.
; L* j, }! @. n5 j# U
fsolve stopped because it exceeded the function evaluation limit,
8 i9 B. t! p' D1 ]( @
options.MaxFunEvals = 1000 (the default value)."
( B1 O, H3 K/ m0 @8 s7 I
即超过了fsolve函数的迭代次数限制(1000),该怎么解决呢?
作者:
o晴o
时间:
2017-8-26 10:08
; W4 h, p7 l2 ^" U: H& @* k6 J9 Z
作者:
2249039642
时间:
2017-11-12 16:49
这个算的是啥问题,我觉得matlab解非线性真心不怎么行
5 `/ w! o( Q5 M& A' D5 h8 q; Y0 `
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5