클리어;clc;
syms x a;
m=5;%직접 변경하세요
y=(11/6-3*x+3/2*x^2-1/3*x^3)^a
f=테일러(y,m+1,x);
w=sym(제로(m+1,1));
w(1)=구독자(f,x,0);
f=f-w(1);
n=m:-1:2
w(n+1)=subs(f-subs(f,x^n,0),x^n,1);
f=f-w(n+1)*x^n;
끝
w(2)=subs(f,x,1)
matlab 배열 첨자는 1부터 시작하므로 여기서 w(1)은 상수 항이고 w(2)는 선형 항입니다.
y=w(1)+w(2)*x+w(3)*x^2+....+w(m+1)*x^m
입니다.【1】함수 변환
>>f=sym('2*x^3+3*x^2+21*x+4-(3*a*x^3+b*x^2+c*x+d)=0' )
f =
2*x^3+3*x^2+21*x+4-(3*a*x^3+b*x^2+c*x+d)=0
【2】유사한 항목을 병합하려면 수집을 사용하세요
>>ff=수집(f):
(2-3*a)*x^3+(3-b)*x^2+(21-c)*x+4-d = 0
【3】메이플을 사용하여 다항식 계수가 많은 경우 루프 문을 사용할 수 있습니다.
>>c3=maple('coeff',ff,x,3)
c3 =2-3*a
>>c1=maple('coeff',ff,x,1)
c1 =21-c
>>c2=maple('coeff',ff,x,2)
c2 =3-b
>>c0=maple('coeff',ff,x,0)
c0 =4-d
추가됨:
이번엔 이렇게 됐는데, 별로 만족스럽지 못해서 같이 정리하는 건 어때요?
심즈 abcdx
%【1】함수 변환
f=sym('2*x^3+3*x^2+21*x+4-(3*a*x^3+b*x^2+c*x+d)')
N=3;
i=0:N의 경우
temp=maple('coeff',f,x,N-i);
cp(1,i+1)={임시};
끝
celldisp(cp);
또 다른 추가 사항: 이번에 드디어 해결했지만 매우 어리석고 이상적이지 않습니다. 물론 수정해서 아름답게 만들 수도 있다고 생각합니다.
심즈 abcdx
f=sym('2*x^3+3*x^2+21*x+4-(3*a*x^3+b*x^2+c*x+d)')
N=3;
i=0:N의 경우
temp=maple('coeff',f,x,N-i);
온도1(i+1)=온도;
끝
cp=temp1
a=해결(cp(1)), b=해결(cp(2)), c=해결(cp(3)), d=해결(cp(4))
실행 결과:
a=2/3
b =3
c=21
d =4
우선, 다항식은 동적이므로 이는 MATLAB에 대한 입력이어야 합니다.
두 번째로, 다항식의 Matlab 표현은 다항식을 표현하기 위해 거듭제곱을 낮춘 후 다항식의 계수를 추출해야 합니다. 예를 들어 MATLAB의 다항식 3*x^2 + 5는 [3 0 5]로 표현됩니다.
마지막으로, matlab의 다항식 함수값 방식, 즉 명령어 polyval을 이해해야 합니다.
위 내용을 토대로 M 파일은 다음과 같습니다.
함수 val = fpolyval(p,x)
% 함수 fpolyval 함수: x에서 다항식 p의 함수 값 val
% 입력 항 p는 내림차순으로 배열된 다항식의 계수입니다.
val = 폴리발(p,x);예: x=1,2
에서 3*x^2 + 5의 값
>>p=[3 0 5];>>x=[1 2];
>>val=f폴리발(p,x)
발 =
8 17
위 내용은 MATLAB을 사용하여 다항식의 테일러 급수 팽창 계수 계산의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!