数学建模社区-数学中国
标题:
matlab问题 求大家指点
[打印本页]
作者:
菠萝饭
时间:
2013-6-23 14:00
标题:
matlab问题 求大家指点
想要优化一个函数,程序如下:
+ N! [- o, I( C, a- w' H: z! W
%给定初值
. q) N& I* w$ A- q( d t
cm=3;
/ l9 p" S$ h% S2 _$ F
cp=5;
3 ^5 j% a; {* u M" w$ w m0 U6 G
l=20;
4 T6 y3 r: s( b
h=0.05;
- O, F1 o; `8 E8 Z. X
p0=1/h;
' s; a7 l% s( y: e1 O7 H2 t
q0=2*l/h;
+ e7 z( M8 Z1 e1 A5 L) k$ N
nn=0;
: F6 U) \( F: G0 o
cc=cm*l*l
" c5 k/ ~8 b$ {# h2 p: z B
%主程序
, @' [8 P+ P e4 v2 S) U8 c+ K
for p=1:h:p0
$ a! q9 t6 e5 l% k" }' X
for q=1:h:q0
y! j9 P! m4 }7 ]: v
a=p*h;
! N. g& s7 ?% V C! h
b=q*h;
. C3 S/ z2 e+ K4 @" E/ O
for n=1:1
2*l/b) %行向量
, M$ _1 q8 M* H9 q
c(n)=cm*b*b/4*((1-a^n)/(1-a)+2*n/(1-a)-2*(1-a^n)/(1-2*a+a*a))+cm*(a^n*(l-n*b/2)*(l-n*b/2)+(1-a^n)*b*(l-n*b/2)/(1-a))+n*cp;
+ u0 t8 s2 `5 _+ {. x) w0 y6 o" u
if c(2)>=c(1)
5 p0 h- l- N% X- C* _# e0 [
nn=1;
3 C% L5 G# w3 v$ F2 O9 T, G- R
elseif c(2*l/b)-c(2*l/b-1)<=0
7 C2 J. I" @7 F7 O
nn=2*l/b;
1 W9 L9 j1 D# [
else
! @+ P4 z- J) C" k' _1 S9 q9 d( H
for k=1:1
2*l/b)
5 V* l; z: b' t0 ^
if (c(k)-c(k-1)<=0 && c(k+1)-c(k)>=0)
2 E3 A) w1 ~2 q! O( b/ x
nn=k;
4 h9 z" e* |: C* b( M9 U- N
end
/ [8 A: m! I5 T8 |' ]- }' Z
end
; R3 g1 `, d" n5 `/ M2 I
end
: L% k1 c" b5 I1 ~ O
end
6 \& P9 R( B' N6 z
if(c(nn)<cc)
: G4 w; i: c- w0 O" c# K
n=nn;
# f% r. G& n0 X5 Y* e3 i5 I* d
aa=a;
3 p- U( [. P0 {- X, E7 I
bb=b;
b' q" N0 V; [6 a, x
cc=c(nn)
) p9 |) V e B8 a+ ]9 m# O
end
; ~9 M! r# I' f9 E1 t
end
% N1 v. Q8 _; {3 p0 G- U
end
( T o; H' ]1 h/ z0 C
fprinft('%d',n)
9 p) M/ [1 Z6 x3 e9 C* `( V1 y- [& d
fprintf('%d',cc)
' u' C0 E/ L: k, W+ V
fprintf('%d',aa)
0 V8 r$ D+ s& n9 Q/ H6 B
fprintf('%d',bb)
) ^7 Z) ]! _( A# d
, }* Y, k8 r' Z V6 V
5 ]& B$ p! ]1 r S7 N: m# F* m
运行不出来,错误提示:
7 d" O8 K9 X, u% M2 L2 j! @* N, h
cc =
+ `0 p. q4 r; x6 {) t/ ]
' `: R) Y8 g$ E. J5 W4 L" P
1200
8 \) z1 [* b$ y6 ~% C
7 `, p, X/ z0 g0 [) I
??? Attempted to access c(2); index out of bounds because numel(c)=1.
$ K8 l7 g7 K& x+ t3 s
3 ?4 w6 k- O+ q: s6 J
. W$ D/ W! B: w: h* v% M% L9 _5 B
这是什么问题呀......
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5