int2cir.m

来自「在matlab环境下」· M 代码 · 共 28 行

M
28
字号
  function y = int2cir(r1,r2,a,b)  % intersection points of 2 circles  % (0,0) origin of 1-circle;  % (a,b) origin of 2-circle  %  r1 -  1-circle radius  %  r2 -  2-circle radius  %  (y(1),y(2)) - (x,y) first choice  %  (y(3),y(4)) - (x,y) second chice             k = -0.5*(r2^2-r1^2-a^2-b^2);           k1 = a^2+b^2;           k2 = -2*k*b;           k3 = k^2-a^2*r1^2;           yy = sqrt(k2^2-4*k1*k3);           if imag(yy) ~= 0            disp(' the link-lengths are very small')               error(' increase the link lengths')        else           y1 = (-k2+yy)/(2*k1);           y2 = (-k2-yy)/(2*k1);           x1 = (k-b*y1)/a;           x2 = (k-b*y2)/a;           y(1) = x1;           y(2) = y1;           y(3) = x2;           y(4) = y2;           y = y';       end; 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?