Heim >Computer-Tutorials >Computerwissen >Verwenden Sie MATLAB, um die Taylor-Reihen-Entwicklungskoeffizienten von Polynomen zu berechnen

Verwenden Sie MATLAB, um die Taylor-Reihen-Entwicklungskoeffizienten von Polynomen zu berechnen

PHPz
PHPznach vorne
2024-01-23 13:39:151536Durchsuche

Verwenden Sie MATLAB, um die Taylor-Reihen-Entwicklungskoeffizienten von Polynomen zu berechnen

matlab berechnet die Koeffizienten der Taylor-Reihenentwicklung von Polynomen

clear;clc;

syms x a;

m=5;%Ändern Sie es selbst

y=(11/6-3*x+3/2*x^2-1/3*x^3)^a

f=taylor(y,m+1,x);

w=sym(zeros(m+1,1));

w(1)=subs(f,x,0);

f=f-w(1);

für n=m:-1:2

w(n+1)=subs(f-subs(f,x^n,0),x^n,1);

f=f-w(n+1)*x^n;

Ende

w(2)=subs(f,x,1)

Beachten Sie, dass w(1) hier ein konstanter Term, w(2) ein linearer Term usw. ist, da der Index des Matlab-Arrays bei 1 beginnt ist

y=w(1)+w(2)*x+w(3)*x^2+....+w(m+1)*x^m

So lösen Sie das Problem unbestimmter Koeffizienten in Matlab

【1】Transformieren Sie die Funktion

>>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】Verwenden Sie „Sammeln“, um ähnliche Elemente zusammenzuführen

>>ff=collect(f):

(2-3*a)*x^3+(3-b)*x^2+(21-c)*x+4-d = 0

【3】Verwenden Sie Maple, um Polynomkoeffizienten zu extrahieren. Wenn es viele gibt, können Sie Schleifenanweisungen verwenden.

>>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

Hinzugefügt:

Diesmal ist es so gelaufen. Ich bin nicht sehr zufrieden.

syms a b c d x

%【1】Transformieren Sie die Funktion

f=sym('2*x^3+3*x^2+21*x+4-(3*a*x^3+b*x^2+c*x+d)')

N=3;

für i=0:N

temp=maple('coeff',f,x,N-i);

cp(1,i+1)={temp};

Ende

celldisp(cp);

Noch eine Ergänzung: Diesmal habe ich es endlich gelöst, aber es sieht sehr dumm aus und nicht sehr ideal. Ich glaube natürlich, dass es so verändert werden kann, dass es schön ist.

syms a b c d x

f=sym('2*x^3+3*x^2+21*x+4-(3*a*x^3+b*x^2+c*x+d)')

N=3;

für i=0:N

temp=maple('coeff',f,x,N-i);

temp1(i+1)=temp;

Ende

cp=temp1

a=solve(cp(1)), b=solve(cp(2)), c=solve(cp(3)), d=solve(cp(4))

Laufergebnis:

a =2/3

b =3

c =21

d =4

Es wird die Funktionsausdruck-M-Datei des Werts des Polynoms Px anxn an1xn1 a1x a0 verwendet

Zuallererst ist das Polynom dynamisch, daher muss es eine Eingabe für Matlab sein

Zweitens muss der Matlab-Ausdruck von Polynomen klar sein. Er dient dazu, die Koeffizienten der Polynome zu extrahieren, um das Polynom darzustellen. Das Polynom vom Grad -n wird durch einen n+1-dimensionalen Vektor dargestellt Beispiel: Das Polynom 3*x^2 + 5 in Matlab wird ausgedrückt als [3 0 5];

Schließlich müssen Sie die Matlab-Methode des Polynomfunktionswerts verstehen, bei der es sich um den Befehl Polyval handelt.

Basierend auf dem oben Gesagten lautet die M-Datei wie folgt:

Funktionswert = fpolyval(p,x)

% Funktion fpolyval Funktion: Funktionswert val des Polynoms p bei x.

% Der Eingabeterm p ist der Koeffizient des Polynoms, angeordnet in absteigenden Potenzen

val = polyval(p,x);

Zum Beispiel: der Wert von 3*x^2 + 5 bei x=1,2

>>p=[3 0 5];

>>x=[1 2];

>>val=fpolyval(p,x)

val =

8 17

Das obige ist der detaillierte Inhalt vonVerwenden Sie MATLAB, um die Taylor-Reihen-Entwicklungskoeffizienten von Polynomen zu berechnen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:docexcel.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen