Un Projet en C++: R Esolution D' Equations Diff Erentielles Lin Eaires
Un Projet en C++: R Esolution D' Equations Diff Erentielles Lin Eaires
C++
Jérôme
Novak, Daniel
Un projet en C++:
Reese
résolution d’équations
Introduction
Tchebychev
différentielles linéaires.
Equa. diff.
Projet de
C++
Jérôme
Novak, Daniel
Reese
Equa. diff.
Projet de
C++
Jérôme
Novak, Daniel
Reese
Equa. diff.
Projet de
C++
Jérôme
Novak, Daniel
Reese
Equa. diff.
Jérôme
Novak, Daniel
Reese
Introduction
Tchebychev
Projet de
C++
Comment représenter une fonction sur un ordinateur ?
Jérôme
⇒un ordinateur ne sait gérer que des entiers
Novak, Daniel
Reese
Afin de représenter une fonctions φ(x) (par ex. interpoler), on
peut utiliser :
Introduction
un ensemble fini de ses valeurs {φi }i=0...N sur une grille
Tchebychev
{xi }i=0...N ,
Equa. diff.
un ensemble fini de Pses coefficients sur une base de
N
fonctions φ(x) ' i=0 ci Ψi (x).
Afin de manipuler une fonction (par ex. dériver), chaque
méthode s’apparente :
aux différences finies
φ(xi+1 ) − φ(xi )
φ0 (xi ) '
xi+1 − xi
aux méthodes spectrales X N
0
φ (x) ' ci Ψ0i (x)
i=0
Fonctions sur un ordinateur
Approche simplifiée
Projet de
C++
Comment représenter une fonction sur un ordinateur ?
Jérôme
⇒un ordinateur ne sait gérer que des entiers
Novak, Daniel
Reese
Afin de représenter une fonctions φ(x) (par ex. interpoler), on
peut utiliser :
Introduction
un ensemble fini de ses valeurs {φi }i=0...N sur une grille
Tchebychev
{xi }i=0...N ,
Equa. diff.
un ensemble fini de Pses coefficients sur une base de
N
fonctions φ(x) ' i=0 ci Ψi (x).
Afin de manipuler une fonction (par ex. dériver), chaque
méthode s’apparente :
aux différences finies
φ(xi+1 ) − φ(xi )
φ0 (xi ) '
xi+1 − xi
aux méthodes spectrales X N
0
φ (x) ' ci Ψ0i (x)
i=0
Fonctions sur un ordinateur
Approche simplifiée
Projet de
C++
Comment représenter une fonction sur un ordinateur ?
Jérôme
⇒un ordinateur ne sait gérer que des entiers
Novak, Daniel
Reese
Afin de représenter une fonctions φ(x) (par ex. interpoler), on
peut utiliser :
Introduction
un ensemble fini de ses valeurs {φi }i=0...N sur une grille
Tchebychev
{xi }i=0...N ,
Equa. diff.
un ensemble fini de Pses coefficients sur une base de
N
fonctions φ(x) ' i=0 ci Ψi (x).
Afin de manipuler une fonction (par ex. dériver), chaque
méthode s’apparente :
aux différences finies
φ(xi+1 ) − φ(xi )
φ0 (xi ) '
xi+1 − xi
aux méthodes spectrales X N
0
φ (x) ' ci Ψ0i (x)
i=0
Fonctions sur un ordinateur
Approche simplifiée
Projet de
C++
Comment représenter une fonction sur un ordinateur ?
Jérôme
⇒un ordinateur ne sait gérer que des entiers
Novak, Daniel
Reese
Afin de représenter une fonctions φ(x) (par ex. interpoler), on
peut utiliser :
Introduction
un ensemble fini de ses valeurs {φi }i=0...N sur une grille
Tchebychev
{xi }i=0...N ,
Equa. diff.
un ensemble fini de Pses coefficients sur une base de
N
fonctions φ(x) ' i=0 ci Ψi (x).
Afin de manipuler une fonction (par ex. dériver), chaque
méthode s’apparente :
aux différences finies
φ(xi+1 ) − φ(xi )
φ0 (xi ) '
xi+1 − xi
aux méthodes spectrales X N
0
φ (x) ' ci Ψ0i (x)
i=0
Fonctions sur un ordinateur
Approche simplifiée
Projet de
C++
Comment représenter une fonction sur un ordinateur ?
Jérôme
⇒un ordinateur ne sait gérer que des entiers
Novak, Daniel
Reese
Afin de représenter une fonctions φ(x) (par ex. interpoler), on
peut utiliser :
Introduction
un ensemble fini de ses valeurs {φi }i=0...N sur une grille
Tchebychev
{xi }i=0...N ,
Equa. diff.
un ensemble fini de Pses coefficients sur une base de
N
fonctions φ(x) ' i=0 ci Ψi (x).
Afin de manipuler une fonction (par ex. dériver), chaque
méthode s’apparente :
aux différences finies
φ(xi+1 ) − φ(xi )
φ0 (xi ) '
xi+1 − xi
aux méthodes spectrales X N
0
φ (x) ' ci Ψ0i (x)
i=0
Convergence
p des
7
séries de Fourier
φ(x) = 1.5 + cos(x) + sin x
N
Projet de X
C++ φ(x) ' ai Ψi (x) avec Ψ2k = cos(kx), Ψ2k+1 = sin(kx)
Jérôme i=0
Novak, Daniel
Reese
Introduction
Tchebychev
Equa. diff.
Convergence
p des
7
séries de Fourier
φ(x) = 1.5 + cos(x) + sin x
N
Projet de X
C++ φ(x) ' ai Ψi (x) avec Ψ2k = cos(kx), Ψ2k+1 = sin(kx)
Jérôme i=0
Novak, Daniel
Reese
Introduction
Tchebychev
Equa. diff.
Convergence
p des
7
séries de Fourier
φ(x) = 1.5 + cos(x) + sin x
N
Projet de X
C++ φ(x) ' ai Ψi (x) avec Ψ2k = cos(kx), Ψ2k+1 = sin(kx)
Jérôme i=0
Novak, Daniel
Reese
Introduction
Tchebychev
Equa. diff.
Convergence
p des
7
séries de Fourier
φ(x) = 1.5 + cos(x) + sin x
N
Projet de X
C++ φ(x) ' ai Ψi (x) avec Ψ2k = cos(kx), Ψ2k+1 = sin(kx)
Jérôme i=0
Novak, Daniel
Reese
Introduction
Tchebychev
Equa. diff.
Convergence
p des
7
séries de Fourier
φ(x) = 1.5 + cos(x) + sin x
N
Projet de X
C++ φ(x) ' ai Ψi (x) avec Ψ2k = cos(kx), Ψ2k+1 = sin(kx)
Jérôme i=0
Novak, Daniel
Reese
Introduction
Tchebychev
Equa. diff.
Convergence
p des
7
séries de Fourier
φ(x) = 1.5 + cos(x) + sin x
Projet de
C++ 1
Jérôme
Novak, Daniel 0,01
Reese
Introduction 0,0001
Relative accuracy (max-norm)
Tchebychev
1e-06
Equa. diff.
1e-08
1e-10
1e-12
1e-14
1e-16
0 10 20 30 40 50 60 70
Number of coefficients N
Convergence
p de
7
la dérivée
φ(x) = 1.5 + cos(x) + sin x
N
Projet de X
C++ φ0 (x) ' ai Ψ0i (x) avec Ψ02k = −k sin(kx), Ψ02k+1 = k cos(kx)
Jérôme i=0
Novak, Daniel
Reese
Introduction
Tchebychev
Equa. diff.
Convergence
p de
7
la dérivée
φ(x) = 1.5 + cos(x) + sin x
N
Projet de X
C++ φ0 (x) ' ai Ψ0i (x) avec Ψ02k = −k sin(kx), Ψ02k+1 = k cos(kx)
Jérôme i=0
Novak, Daniel
Reese
Introduction
Tchebychev
Equa. diff.
Convergence
p de
7
la dérivée
φ(x) = 1.5 + cos(x) + sin x
N
Projet de X
C++ φ0 (x) ' ai Ψ0i (x) avec Ψ02k = −k sin(kx), Ψ02k+1 = k cos(kx)
Jérôme i=0
Novak, Daniel
Reese
Introduction
Tchebychev
Equa. diff.
Convergence
p de
7
la dérivée
φ(x) = 1.5 + cos(x) + sin x
N
Projet de X
C++ φ0 (x) ' ai Ψ0i (x) avec Ψ02k = −k sin(kx), Ψ02k+1 = k cos(kx)
Jérôme i=0
Novak, Daniel
Reese
Introduction
Tchebychev
Equa. diff.
Convergence
p de
7
la dérivée
φ(x) = 1.5 + cos(x) + sin x
N
Projet de X
C++ φ0 (x) ' ai Ψ0i (x) avec Ψ02k = −k sin(kx), Ψ02k+1 = k cos(kx)
Jérôme i=0
Novak, Daniel
Reese
Introduction
Tchebychev
Equa. diff.
Convergence
p de
7
la dérivée
φ(x) = 1.5 + cos(x) + sin x
Projet de
C++ 1
Jérôme
Novak, Daniel 0,01
Reese
Introduction 0,0001
Relative accuracy (max-norm)
Tchebychev
1e-06
Equa. diff.
1e-08
1e-10
1e-12
1e-14
1e-16
0 10 20 30 40 50 60 70
Number of coefficients N
Phénomène de Gibbs
pas de convergence pour des fonctions discontinues (ou
non-périodiques) !
Projet de x pour x ∈ [0, π]
C++ φ(x) =
x − 2π pour x ∈]π, 2π[
Jérôme
Novak, Daniel
Reese
Introduction
Tchebychev
Equa. diff.
Phénomène de Gibbs
pas de convergence pour des fonctions discontinues (ou
non-périodiques) !
Projet de x pour x ∈ [0, π]
C++ φ(x) =
x − 2π pour x ∈]π, 2π[
Jérôme
Novak, Daniel
Reese
Introduction
Tchebychev
Equa. diff.
Phénomène de Gibbs
pas de convergence pour des fonctions discontinues (ou
non-périodiques) !
Projet de x pour x ∈ [0, π]
C++ φ(x) =
x − 2π pour x ∈]π, 2π[
Jérôme
Novak, Daniel
Reese
Introduction
Tchebychev
Equa. diff.
Phénomène de Gibbs
pas de convergence pour des fonctions discontinues (ou
non-périodiques) !
Projet de x pour x ∈ [0, π]
C++ φ(x) =
x − 2π pour x ∈]π, 2π[
Jérôme
Novak, Daniel
Reese
Introduction
Tchebychev
Equa. diff.
Phénomène de Gibbs
pas de convergence pour des fonctions discontinues (ou
non-périodiques) !
Projet de x pour x ∈ [0, π]
C++ φ(x) =
x − 2π pour x ∈]π, 2π[
Jérôme
Novak, Daniel
Reese
Introduction
Tchebychev
Equa. diff.
Phénomène de Gibbs
pas de convergence pour des fonctions discontinues (ou
non-périodiques) !
Projet de x pour x ∈ [0, π]
C++ φ(x) =
x − 2π pour x ∈]π, 2π[
Jérôme
Novak, Daniel
Reese
Introduction
Tchebychev
Equa. diff.
Phénomène de Gibbs
pas de convergence pour des fonctions discontinues (ou
non-périodiques) !
Projet de x pour x ∈ [0, π]
C++ φ(x) =
x − 2π pour x ∈]π, 2π[
Jérôme
Novak, Daniel
Reese
Introduction
Tchebychev
Equa. diff.
Phénomène de Gibbs
pas de convergence pour des fonctions discontinues (ou
non-périodiques) !
Projet de x pour x ∈ [0, π]
C++ φ(x) =
x − 2π pour x ∈]π, 2π[
Jérôme
Novak, Daniel
Reese
Introduction
Tchebychev
Equa. diff.
Phénomène de Gibbs
pas de convergence pour des fonctions discontinues (ou
non-périodiques) !
Projet de x pour x ∈ [0, π]
C++ φ(x) =
x − 2π pour x ∈]π, 2π[
Jérôme
Novak, Daniel
Reese
Introduction
Tchebychev
Equa. diff.
Phénomène de Gibbs
pas de convergence pour des fonctions discontinues (ou
non-périodiques) !
Projet de x pour x ∈ [0, π]
C++ φ(x) =
x − 2π pour x ∈]π, 2π[
Jérôme
Novak, Daniel
Reese
Introduction
Tchebychev
Equa. diff.
Phénomène de Gibbs
pas de convergence pour des fonctions discontinues (ou
non-périodiques) !
Projet de x pour x ∈ [0, π]
C++ φ(x) =
x − 2π pour x ∈]π, 2π[
Jérôme
Novak, Daniel
Reese
Introduction
Tchebychev
Equa. diff.
Phénomène de Gibbs
pas de convergence pour des fonctions discontinues (ou
non-périodiques) !
Projet de x pour x ∈ [0, π]
C++ φ(x) =
x − 2π pour x ∈]π, 2π[
Jérôme
Novak, Daniel
Reese
Introduction
Tchebychev
Equa. diff.
Phénomène de Gibbs
pas de convergence pour des fonctions discontinues (ou
non-périodiques) !
Projet de x pour x ∈ [0, π]
C++ φ(x) =
x − 2π pour x ∈]π, 2π[
Jérôme
Novak, Daniel
Reese
Introduction
Tchebychev
Equa. diff.
Interpolation polynomiale
Projet de
C++
D’après le théorème de Weierstrass, toute fonction continue
Jérôme
peut être approximée comme limite d’une suite de fonctions
Novak, Daniel
Reese
polynomiales.
En pratique, si l’on connaı̂t les valeurs de la fonctions sur des
Introduction
points de grille {xi }i=0...N , on peut interpoler par des
Tchebychev
polynômes de Lagrange :
Equa. diff.
N=4
1
N
Y x − xj
li (x) =
0.5
xi − xj
j=0,j6=i
y
Projet de
C++
D’après le théorème de Weierstrass, toute fonction continue
Jérôme
peut être approximée comme limite d’une suite de fonctions
Novak, Daniel
Reese
polynomiales.
En pratique, si l’on connaı̂t les valeurs de la fonctions sur des
Introduction
points de grille {xi }i=0...N , on peut interpoler par des
Tchebychev
polynômes de Lagrange :
Equa. diff.
N=4
1
N
Y x − xj
li (x) =
0.5
xi − xj
j=0,j6=i
y
Projet de
C++
D’après le théorème de Weierstrass, toute fonction continue
Jérôme
peut être approximée comme limite d’une suite de fonctions
Novak, Daniel
Reese
polynomiales.
En pratique, si l’on connaı̂t les valeurs de la fonctions sur des
Introduction
points de grille {xi }i=0...N , on peut interpoler par des
Tchebychev
polynômes de Lagrange :
Equa. diff.
N=13
1
N
Y x − xj
li (x) =
0.5
xi − xj
j=0,j6=i
y
Projet de
C++ Les solutions (λi , ui )i∈N d’un problème de Sturm-Liouville
Jérôme singulier sur l’intervalle x ∈ [−1, 1] :
Novak, Daniel 0
Reese − pu0 + qu = λwu,
Introduction avec p > 0, C 1 , p(±1) = 0
Tchebychev
forment une famille orthogonale par rapport au poids w :
Equa. diff.
Z 1
(ui , uj ) = ui (x)uj (x)w(x)dx = 0 pour m 6= n,
−1
forment une base spectrale telle que, pour f (x) régulière
(C ∞ )
XN
f (x) ' ci ui (x)
converge plus vite que toutei=0
puissance de 1/N .
Les polynômes de Tchebychev, Legendre et, plus généralement
de Jacobi font partie de cette catégorie.
Polynômes orthogonaux
Projet de
C++ Les solutions (λi , ui )i∈N d’un problème de Sturm-Liouville
Jérôme singulier sur l’intervalle x ∈ [−1, 1] :
Novak, Daniel 0
Reese − pu0 + qu = λwu,
Introduction avec p > 0, C 1 , p(±1) = 0
Tchebychev
forment une famille orthogonale par rapport au poids w :
Equa. diff.
Z 1
(ui , uj ) = ui (x)uj (x)w(x)dx = 0 pour m 6= n,
−1
forment une base spectrale telle que, pour f (x) régulière
(C ∞ )
XN
f (x) ' ci ui (x)
converge plus vite que toutei=0
puissance de 1/N .
Les polynômes de Tchebychev, Legendre et, plus généralement
de Jacobi font partie de cette catégorie.
Polynômes orthogonaux
Projet de
C++ Les solutions (λi , ui )i∈N d’un problème de Sturm-Liouville
Jérôme singulier sur l’intervalle x ∈ [−1, 1] :
Novak, Daniel 0
Reese − pu0 + qu = λwu,
Introduction avec p > 0, C 1 , p(±1) = 0
Tchebychev
forment une famille orthogonale par rapport au poids w :
Equa. diff.
Z 1
(ui , uj ) = ui (x)uj (x)w(x)dx = 0 pour m 6= n,
−1
forment une base spectrale telle que, pour f (x) régulière
(C ∞ )
XN
f (x) ' ci ui (x)
converge plus vite que toutei=0
puissance de 1/N .
Les polynômes de Tchebychev, Legendre et, plus généralement
de Jacobi font partie de cette catégorie.
Polynômes orthogonaux
Projet de
C++ Les solutions (λi , ui )i∈N d’un problème de Sturm-Liouville
Jérôme singulier sur l’intervalle x ∈ [−1, 1] :
Novak, Daniel 0
Reese − pu0 + qu = λwu,
Introduction avec p > 0, C 1 , p(±1) = 0
Tchebychev
forment une famille orthogonale par rapport au poids w :
Equa. diff.
Z 1
(ui , uj ) = ui (x)uj (x)w(x)dx = 0 pour m 6= n,
−1
forment une base spectrale telle que, pour f (x) régulière
(C ∞ )
XN
f (x) ' ci ui (x)
converge plus vite que toutei=0
puissance de 1/N .
Les polynômes de Tchebychev, Legendre et, plus généralement
de Jacobi font partie de cette catégorie.
Quadrature de Gauss
Projet de
C++
Projet de
C++
Introduction
Tchebychev
Equa. diff.
Exemple avec les polynômes de
Tchebychev 2
φ(x) = (1 + 2 sin(5x)) /(1 + x )
Projet de N
X
C++
φ(x) ' ai Ψi (x) avec Ψk = Tk (x) = cos(k arccos(x))
Jérôme
Novak, Daniel i=0
Reese
Introduction
Tchebychev
Equa. diff.
Exemple avec les polynômes de
Tchebychev 2
φ(x) = (1 + 2 sin(5x)) /(1 + x )
Projet de N
X
C++
φ(x) ' ai Ψi (x) avec Ψk = Tk (x) = cos(k arccos(x))
Jérôme
Novak, Daniel i=0
Reese
Introduction
Tchebychev
Equa. diff.
Exemple avec les polynômes de
Tchebychev 2
φ(x) = (1 + 2 sin(5x)) /(1 + x )
Projet de N
X
C++
φ(x) ' ai Ψi (x) avec Ψk = Tk (x) = cos(k arccos(x))
Jérôme
Novak, Daniel i=0
Reese
Introduction
Tchebychev
Equa. diff.
Exemple avec les polynômes de
Tchebychev 2
φ(x) = (1 + 2 sin(5x)) /(1 + x )
Projet de N
X
C++
φ(x) ' ai Ψi (x) avec Ψk = Tk (x) = cos(k arccos(x))
Jérôme
Novak, Daniel i=0
Reese
Introduction
Tchebychev
Equa. diff.
Exemple avec les polynômes de
Tchebychev 2
φ(x) = (1 + 2 sin(5x)) /(1 + x )
Projet de
C++ 1
Jérôme
Novak, Daniel 0,01
Reese
0,0001
Relative accuracy (max - norm)
Introduction
Tchebychev
1e-06
Equa. diff.
1e-08
1e-10
1e-12
1e-14
1e-16
10 20 30 40 50 60
Number of coefficients N
Projet de
C++
Jérôme
Novak, Daniel
Reese
Introduction
Tchebychev Étape no 1 :
Equa. diff.
Transformée de Tchebychev,
interpolation et dérivée
Polynômes de Tchebychev
Définition
Projet de
C++
Les fonctions associées aux polynômes de Tchebychev
Jérôme
{Tn (x)}n∈N sont définies par :
Novak, Daniel
Reese ∀x ∈ [−1, 1], Tn (x) = cos (n arccos x) .
Introduction
Tchebychev
Equa. diff.
Z 1
Tn (x)Tp (x) π
hTn , Tp i = √ dx = (1 + δ0n )δnp .
−1 1−x 2 2
Polynômes de Tchebychev
Calcul des coefficients
Projet de
C++
Les coefficients peuvent se calculer par quadrature de Gauss
Jérôme
-Lobatto. Les poids wi et les points de grille sont connus
Novak, Daniel
Reese
analytiquement. Si
N
Introduction
X
Tchebychev
∀x ∈ [−1, 1], f (x) ' ci Ti (x),
i=0
Equa. diff.
alors on a, avec une très bonne approximation :
N
1 X
ci ' f (xk )Ti (xk )wk ,
γi
où k=0
kπ π π
xk = − cos , w 0 = wN = , wk = (k = 1 . . . N −1);
N 2N N
N
X
et γi = Ti2 (xk )wk .
k=0
Polynômes de Tchebychev
Interpolation
Projet de
C++
Pour calculer la valeur de Tn en un point x, on utilise la
Jérôme
récurrence :
Novak, Daniel
Reese
T0 (x) = 1, T1 (x) = x;
Introduction
∀x ∈ [−1, 1], ∀n ≥ 2, Tn (x) = 2xTn−1 (x) − Tn−2 (x).
Tchebychev Cela permet de calculer les 7 premiers polynômes de
Equa. diff. Tchebychev...
T0 (x) = 1,
T1 (x) = x,
T2 (x) = 2x2 − 1,
T3 (x) = 4x3 − 3x,
T4 (x) = 8x4 − 8x2 + 1,
T5 (x) = 16x5 − 20x3 + 5x,
T6 (x) = 32x6 − 48x4 + 18x2 − 1.
Polynômes de Tchebychev
Dérivation
Projet de
C++
Jérôme Si on approxime
Novak, Daniel N
Reese
X
f (x) ' ci Ti (x),
Introduction i=0
Tchebychev
alors la dérivée peut être approximée de la même manière :
Equa. diff.
N
X
f 0 (x) ' di Ti (x),
i=0
avec
N
2 X
di = k ck .
1 + δ0i
k=i+1, (k+i) impair
Projet de
C++ En partant des classes Tab et Matrice, implémenter une classe
Jérôme
Novak, Daniel
Fonction représentant des fonctions définies sur [−1, 1] :
Reese
chaque instance de la classe contiendra la grille de points
Introduction de Gauss-Lobatto et les valeurs de la fonctions en ces
Tchebychev points ;
Equa. diff.
les coefficients seront calculés par quadrature de
Gauss-Lobatto et stockés comme membres ;
la classe possédera une méthode de calcul de la valeur en
un point quelconque de [−1, 1] et de transformation
inverse (coefficients → valeurs aux points de grille) ;
elle aura aussi une méthode renvoyant la Fonction
dérivée.
Pour un cahier des charges , voir le fichier
Donnees cheb/ppl.cpp.
Projet de
C++
Jérôme
Novak, Daniel
Reese
Introduction
Tchebychev
Étape no 2 :
Equa. diff.
Résolution d’équations
différentielles linéaires à coefficients
constants
Opérateurs différentiels linéaires
Projet de
C++
Jérôme 0
Novak, Daniel
Reese f 7→ f
c0 d0 c0
Introduction .. .. .
. . = D ..
×
Tchebychev
Equa. diff.
cN dN cN
f 7→ af 00 + bf 0 + c (a, b, c) ∈ R3 ,
Projet de
C++
Jérôme 0
Novak, Daniel
Reese f 7→ f
c0 d0 c0
Introduction .. .. .
. . = D ..
×
Tchebychev
Equa. diff.
cN dN cN
f 7→ af 00 + bf 0 + c (a, b, c) ∈ R3 ,
Projet de
C++
La matrice brute n’est pas inversible, il n’y a pas unicité de
Jérôme
la solution tant que les conditions initiales n’ont pas été
Novak, Daniel
Reese
spécifiées.
Introduction Méthode τ
Tchebychev Pour chaque condition, une ligne du système différentiel est
Equa. diff. remplacée par la condition, exprimée en termes des coefficients
inconnus.
On choisit évidemment la ligne concernant le plus haut degré
du système différentiel.
En pratique :
pour une condition du type f (x0 ) = y0 , on remplace les
aN i de l’opérateur par Ti (x0 ) et le N e coefficient du
membre de droite par y0 ;
pour f 0 (x0 ) = y0 , on fait la même chose, mais avec
T 0 (x0 ).
TPno 7
les classes d’équations différentielles
Projet de
C++
Concevoir une classe abstraite Equa diff contenant :
Jérôme
n, le degré de représentation spectrale des fonctions et une
Novak, Daniel
Reese
Matrice contenant l’opérateur ;
le vecteur (Tab) membre de droite de l’équation et le
Introduction
nombre de conditions au bord à imposer ;
Tchebychev
des fonctions impose conditions bord(), resout() ;
Equa. diff.
une fonction calcule operateur homogene() virtuelle
pure.
À partir de cette classe de base, faire deux classes dérivées :
Equa un représentant les équations différentielles du
premier ordre ay 0 + by = f , où (a, b) ∈ R2 et la fonction f
sont donnés. (a, b) seront les nouvelles données et la
fonctions virtuelle pure définie.
Equa deux représentant les équations différentielles du
second ordre ay 00 + by 0 + cy = f , où (a, b, c) ∈ R3 et la
fonction f sont donnés. . .
TPno 7
les classes d’équations différentielles
Projet de
C++
Concevoir une classe abstraite Equa diff contenant :
Jérôme
n, le degré de représentation spectrale des fonctions et une
Novak, Daniel
Reese
Matrice contenant l’opérateur ;
le vecteur (Tab) membre de droite de l’équation et le
Introduction
nombre de conditions au bord à imposer ;
Tchebychev
des fonctions impose conditions bord(), resout() ;
Equa. diff.
une fonction calcule operateur homogene() virtuelle
pure.
À partir de cette classe de base, faire deux classes dérivées :
Equa un représentant les équations différentielles du
premier ordre ay 0 + by = f , où (a, b) ∈ R2 et la fonction f
sont donnés. (a, b) seront les nouvelles données et la
fonctions virtuelle pure définie.
Equa deux représentant les équations différentielles du
second ordre ay 00 + by 0 + cy = f , où (a, b, c) ∈ R3 et la
fonction f sont donnés. . .