나는 다항식 y = 0.230 + -0.046*x + -0.208*x^2
을가집니다. (X, Y)에서 다른 선을 자르는이 선에 대한 수직선을 계산하고 싶습니다.다항식 선에 대한 방정식을 계산하는 방법
답변
%Example data
x=0:0.1:10;
y = 0.230 + -0.046*x + -0.208*x.^2 ;
plot(x,y);
%Find the tangent and normals at all points
dy = [0 diff(y)./diff(x)];
py = -1./dy;
%Choose a point
n = 60;
X = x(n);
Y = y(n);
hold on
plot(X, Y, 'or')
%Find the equation of the straight line normal to that point. You can do this in one step (yn = py(n)*(x - X) + Y) but I've done it in two to illustrate where this comes from
c = Y - py(n)*X;
yn = py(n)*x + c;
plot(x, yn, 'g')
귀하의 파생 요구 사항을 제공하지 않습니다 수정 :'dx = x (2) -x (1); py = -dx./dy;' –
@TheHard 고마워, 나는 그것을 고쳤다. 이제'dy'는'diff (y) ./diff (x)'를 사용하여 찾을 수 있습니다. – Dan
안녕하세요. 시도해주세요. 감사합니다.이 게시물을 끝내기 위해 더 많은 질문을 드리겠습니다. xy는 <1x101 double > horizontal [link] (http://pro.ellip6.com/SebastienForum/Tab1.jpg) 그리고 나의 것은 수직입니다 [link] (http://pro.ellip6.com/SebastienForum/Tab2.jpg) 어떻게 변환합니까? 광산에서 귀하의 코드로 수정하거나 코드를 수정하십시오. 감사합니다 당신 – user2724407
다른 방법으로는 그리 어려운 것은 아니지만 분석 결과를 계산하는 것입니다. 는 (당신은을위한 상징적 인 도구 상자를 사용할 수 있지만, 당신의 머리에 앉아 NN 할 것) :
%Example data
x=0:0.1:10;
y = 0.230 + -0.046*x + -0.208*x.^2 ;
plot(x,y);
%Find the tangent and normals at all points (*edited*)
slope = (-0.046 + -2*0.208*x);
py = -1./slope; % <-- modified from Dan's expression
% to use analytical derivative
%Choose a point
n = 60;
X = x(n);
Y = y(n);
hold on
plot(X, Y, 'or')
% Copying @Dan: Find the equation of the straight line normal to that point. You can do this in one step (yn = py(n)*(x - X) + Y) but I've done it in two to illustrate where this comes from
c = Y - py(n)*X;
yn = py(n)*x + c;
plot(x, yn, 'g')
axis tight equal
당신이 정말로 직교 곡선을 가지고 있는지 axis equal
또한이 예에서는 좋은 생각이다 사용. 의
덕분에 내 방정식 X가 높은 순서가 당신이 경우^3와 X^4, 나는 seconde 주문 나를 위해 잘 작동 코드를 수정하는 방법... – user2724407
@ user2724407 다항식의 분석 * 미분 (기울기)을 계산하고 변수'기울기 '를 입력하여 편집 한 부분을 대신 사용해야합니다. –
감사합니다. 발견 된 방정식으로 두 배의 배열에서 플롯 된 다른 곡선과 교차점을 찾고 싶습니다. – user2724407
가능한 중복 [어떻게 내가 선분의 법선 벡터를 계산합니까?] (http://stackoverflow.com/questions/1243614/how-do-i-calculate-the-normal-vector-of-a 라인 세그먼트) – Schorsch
또는 [Matlab의 한 점에서 법선 벡터를 찾는 방법] (http://stackoverflow.com/questions/17324936/how-to-find-the-normal- 벡터에서-A-점 - 온 - 어 - 커브 -에 - MATLAB)이 @Schorsch – Schorsch
가 인정 하듯이 기본적인 수학 문제이지만, 그 링크가 완벽한 솔루션, 그것의 절반 만 ... –