EDA365电子论坛网

标题: 写的MATLAB代码,最小二乘求距离出现错误? [打印本页]

作者: SallyDai2    时间: 2020-10-23 19:21
标题: 写的MATLAB代码,最小二乘求距离出现错误?
写的MATLAB代码,最小二乘求距离出现错误,麻烦大神帮忙看看,非常感谢!
! v. ?3 \  u0 v( h: ~
' R) g7 ^1 ?, Sclc;
9 |: ~9 x$ L% b, w, l7 V% cclear all;
& ?/ P: z( Z* C8 z4 TA=[1 2 3;3 4 5;6 7 8;6 7 8;6 7 8;11 12 14;22 23 43;1 2 3;3 4 5;6 7 8;6 7 8;6 7 8;11 12 14;22 23 43;1 2 3;3 4 5;6 7 8;6 7 8;6 7 8;11 12 14;22 23 43];/ x! d( y- c5 k) s
P=[1 2 3 4 5 6 7 9 11 81 2 9 32 21 5 6 7 9 11 81 2];( {* U: @9 }* n5 V8 Y% u

# S, T8 b$ g0 b; Ec=3*10^8;
2 T; I* \/ q4 e5 G3 b- KX=zeros(4,1);9 f* R+ X1 {7 r% A7 Q1 Z; I
x=zeros(4,1);' \: i$ m! q' \1 f2 Y1 R3 F
for i=1:1:21
2 }1 n9 x7 r3 d2 f! l3 E    Ri=sqrt((A(i,1)-x(1,1)).^2+(A(i,2)-x(2,1)).^2+(A(i,3)-x(3,1)).^2);" ?: g* n2 ?4 Y
    p(i,1)=Ri+x(4,1)-P(i,1);: F' Y9 m+ H0 B) I

. y3 _- r  ?' j. t  M4 u    fxi=(A(i,1)-x(1,1))/Ri;
- {7 _5 X, W9 c! E' W    fyi=(A(i,2)-x(2,1))/Ri;2 @: J1 g$ j& C3 a3 M( n
    fzi=(A(i,3)-x(3,1))/Ri;( x) Y% x. _2 s) h
    F(i,: )=[fxi fyi fzi -c];
; f3 v" F3 p4 J. _$ R% v
4 ]% R/ q3 J& n+ ^    syms x0 y0 z0 t0 real;  k: c3 Z' @% Y) {7 ]
    X=[x0 y0 z0 t0]';
; E6 F+ w* x- a  C, ?6 \
% f$ H& z0 V0 K% Q! x! g0 G    p(i,1)=F(i,: )*X;) V! U$ e( n% \5 N$ x0 b
1 L* D. q/ ^! U3 z/ T: z4 D
    x(1,1)=x(1,1)+x0;
$ V0 G" d6 \( q    x(2,1)=x(2,1)+y0;5 @/ ?0 J6 F+ |/ B, B7 ^2 u
    x(3,1)=x(3,1)+z0;
+ t3 T( p0 o4 Q4 e3 y    x(4,1)=x(4,1)+t0;
) S  J+ M' D' d" Hend
4 k# I1 R, F/ J9 r
! m3 |) w& _9 ]( q2 nfigure(1);* j' @; m" H) W" K- F0 h1 I0 M
plot(x0,'r-');! H% s! b! u; v+ a; k
hold on;
1 M8 N9 K6 I$ d. o& M% ifigure(2);, J+ H* Y8 ~+ l$ b4 T
plot(y0,'g*');( Q7 _: \2 N; q: W7 J
hold on;; |9 u" z' K! j9 o0 i; Y! r
figure(3);. e9 @1 g* v* a# t  L  |9 Z
plot(z0,'b-');7 V+ G0 E- q0 ^& Q' I# B
hold on;
* i: Y9 r6 c, R' Vxlabel('X');
0 j1 s- T' ?% }1 Q& |' I3 xxlabel('Y');1 s' }1 _# N  B8 r' R, [, c8 w
legend('measurement');" q# h9 k( ~" u+ G+ \4 g) d

2 {+ M0 v1 I+ q; e/ ]9 Q* j
/ @9 _' i& ]4 a" e  I# D6 v7 k% i; |, q9 a1 u$ Z4 u/ d
编译出现错误:
8 }, b/ O9 x5 z+ r" h错误使用 symengine (line 58)
: u. i/ ?1 _5 f3 o7 Y7 s' x& QDOUBLE cannot convert the input expression into a double array.
; Y9 _/ ?1 v+ K( o2 eIf the input expression contains a symbolic variable, use VPA.
, u2 S  C# L8 _( W
2 w+ _) z- W1 O5 F) ]9 t6 [$ O出错 zxec (line 21)
% V7 j. \7 x+ W6 u  O    p(i,1)=F(i,: )*X;( H; Y% E# H, Q) F6 I  t( N: ~  C3 m

作者: wu68aq    时间: 2020-10-23 19:35
你的代码有问题。




欢迎光临 EDA365电子论坛网 (https://bbs.eda365.com/) Powered by Discuz! X3.2