Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- function [d, t, s] = razdalja(F, G, t0, s0)
- %kliÄŤemo razdalja(@parabola, @premica, 2, -2)
- [rF, drF, ddrF] = F(t0);
- [rG, drG, ddrG] = G(s0);
- f1=drF'*(rF-rG);
- f2=drG'*(rF-rG);
- JF=zeros(2,2);
- x=[t0; s0];
- while (abs(f1) > 10^(-10)) || (abs(f2) > 10^(-10))
- [rF, drF, ddrF] = F(t0);
- [rG, drG, ddrG] = G(s0);
- f1=drF'*(rF-rG);
- f2=drG'*(rF-rG);
- f=[f1; f2];
- JF(1, 1) = ddrF'*(rF-rG)+drF'*drF;
- JF(1, 2) = -drG'*drF;
- JF(2, 1) = drF'*drG;
- JF(2, 2) = ddrG'*(rF-rG)-drG'*drG;
- x1 = x-inv(JF)*f;
- x = x1;
- t0=x(1,:);
- s0=x(2,:);
- endwhile
- t=t0;
- s=s0;
- [rF, drF, ddrF] = F(t0);
- [rG, drG, ddrG] = G(s0);
- d=sqrt((rF(1,1)-rG(1,1))^2+(rF(2,1)-rG(2,1))^2);
- %(x1, y1)
- endfunction
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement