|
|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
写的MATLAB代码,最小二乘求距离出现错误,麻烦大神帮忙看看,非常感谢!0 G: o$ Y2 R- N, }$ I' v
; w- j- ^6 f3 R& A' w' x/ {) G
clc;
9 F( S. p2 O+ [7 ?7 X5 Pclear all;
: Z" ^: A' G; t' z5 u4 X4 sA=[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];7 P5 p% x& q4 }, Q
P=[1 2 3 4 5 6 7 9 11 81 2 9 32 21 5 6 7 9 11 81 2];2 z1 g. t3 c9 K, ]: U( B( b
7 h0 p0 e4 o j5 S# J
c=3*10^8;
# P7 ^* T8 \' _- r: LX=zeros(4,1);
& T1 s+ ]9 a% H& Sx=zeros(4,1);
; \, Y6 |# B/ p2 A6 m. _* lfor i=1:1:21# p/ R6 x. w" L9 i G' L' n
Ri=sqrt((A(i,1)-x(1,1)).^2+(A(i,2)-x(2,1)).^2+(A(i,3)-x(3,1)).^2);% p+ T% _" G9 u3 W9 U6 I
p(i,1)=Ri+x(4,1)-P(i,1);6 f! y# k3 H9 a0 |& \7 S
- n$ i$ W- X q2 D: K$ w- I1 ?
fxi=(A(i,1)-x(1,1))/Ri;6 B. ]# V; L. A' ` q8 R
fyi=(A(i,2)-x(2,1))/Ri;4 U" T8 C7 |: {+ W" s
fzi=(A(i,3)-x(3,1))/Ri;
- ?( w! m9 M( L) ~ F(i,: )=[fxi fyi fzi -c];+ s) j9 W+ n, N( {) i4 c( b) b
% s: w% S2 K9 D, d3 q syms x0 y0 z0 t0 real;# g, a* _7 X$ Q3 s* d8 z% F9 ]9 i
X=[x0 y0 z0 t0]';: A# q3 F1 h# v2 z
; [9 P6 ^: @! [' R& M; j4 g p(i,1)=F(i,: )*X;9 d- o8 X' n6 q! H& q" ?: A- S2 m
; D( }# s5 m" V' _% L" ?1 E9 e0 m x(1,1)=x(1,1)+x0;! t+ i$ A: X2 U, A0 u' `8 J
x(2,1)=x(2,1)+y0;6 h* q: c% V5 @1 @% A
x(3,1)=x(3,1)+z0;
# U1 C% e8 R0 U* h- @- t x(4,1)=x(4,1)+t0;- {; L0 [$ x# e7 |
end
: J; K2 O h" {/ q' }: |/ f- S: Q; Y& G- e6 ?
figure(1);5 i* M) r5 [ W( p
plot(x0,'r-');
" I2 X1 H& Q- f) r, bhold on;
2 J8 Z7 J- O+ q& X' c. ifigure(2);* H) ]/ l. ?4 J
plot(y0,'g*');
& T; K) p: T; V) ?6 f0 dhold on;
- K9 r" E/ }- p* j4 b, @figure(3);
* }4 }- |' n, @5 t. splot(z0,'b-'); T" M, v2 \8 a# o/ k5 P7 Z
hold on;; y( `; ]& q0 p7 s
xlabel('X');6 d* P& w/ F1 c% Q! k) i
xlabel('Y');+ i# _+ ~: i: q6 j4 L) p1 I0 ]
legend('measurement');
- b0 v7 B; N6 M% |$ U$ S% b8 |& o! P, K# q. m' A& K
8 h A0 g3 A2 _' I4 Q' P. g; j: i N; E
编译出现错误:4 g1 q! g! X9 s. O8 [
错误使用 symengine (line 58)
3 P! ] i& w0 Y+ N0 A3 jDOUBLE cannot convert the input expression into a double array.
- K( x- d$ P1 U8 J- W2 VIf the input expression contains a symbolic variable, use VPA.* B9 L! O# n9 Z2 [* H# R
3 g6 f+ _+ u( ]" F U X出错 zxec (line 21)
8 F7 ^7 U2 J. R p(i,1)=F(i,: )*X;
: V& n& m6 Z# k/ N1 q7 r( N |
|