6
Université de Béchar Département de Génie Electrique Année Universitaire - (2015-2016) Pr. TAMALI Mohammed, SimulIA/ENERGARID Lab Analyse Numérique TP 1 : Prise de contact & Introduction I) Dans le cadre de la préparation des étudiants à se faire connaitre par l’enseignant, nous entamant, à la surprise des jeunes invités, un sondage regroupant des questions ciblées. Document Questionnaire : Nom : ……………………………………………………………………………………………… (Pour NOM, indiquer ce que vous aimer entendre comme surnom, nom civil) Age : (Pour AGE, indiquer ce que vous estimez avoir comme âge Biologique ou autre) Que préférez-vous : La Verticale L’horizontale? (Pour ce choix, indiquer votre préférence sans trop réfléchir) Travailler en groupe : Oui Non ? (Pour cette précision, indiquer combien vous vous comportez dans un groupe pour une tâche) Quelle couleur préférez-vous? ……………………………………………………………………… (Pour COULEUR, indiquer la couleur qui rassemble, le plus d’émotions pour vous) Si on vous demande de faire une caricature de votre enseignant, que dessinez-vous ? (Le dessin est un moyen d’expression, on utilisera la symbolisation, le texte, le sujet du dessin par rapport au sujet dessiné) II) Manipulation (identification des capacités et compétences) Dans cette section, il est question de fleurer et d’identifier les capacités et les compétences moyennes C p de la promotion d’étudiants de l’année universitaire en cours (Par défaut, chaque année n’est typique qu’à elle-même, on peut avoir des surprises). Dans la réalité des choses, nous sommes tout le temps confrontés à des situations nouvelles où il est judicieusement nécessaire de prendre une décision. Les mauvais jugements influencent toujours et inévitablement des résultats non-attendus dans le système provoquant ainsi des pertes en ressources, en temps et en stratégies. Faute de définition juste de la vraie question … ? Les méthodes éducatives jugées, à un instant donné, valables pour une prise en considération du système universitaire sont nettement soupçonnées comme à l’origine des éventuelles qualifications des fondements de manœuvres et travaux à entreprendre et par conséquent, des buts tracés. La pédagogie c'est l'art d'enseigner ou les méthodes d'enseignement propres à une discipline, à une matière, à un ordre d'enseignement, à un établissement d'enseignement ou à une philosophie de l'éducation. La didactique est le fondement théorique des pédagogies adoptées. Etude de cas : Cas d’un système électro-énergétique Cas de la décharge de Béchar ville Briquette combustible=Déchets+coke de charbon

Analyse Numérique – TP

Embed Size (px)

Citation preview

Page 1: Analyse Numérique – TP

Université de Béchar

Département de Génie Electrique

Année Universitaire - (2015-2016)

Pr. TAMALI Mohammed, SimulIA/ENERGARID Lab

Analyse Numérique – TP 1 : Prise de contact & Introduction

I) Dans le cadre de la préparation des étudiants à se faire connaitre par l’enseignant, nous entamant,

à la surprise des jeunes invités, un sondage regroupant des questions ciblées.

Document Questionnaire :

Nom : ……………………………………………………………………………………………… (Pour NOM, indiquer ce que vous aimer entendre comme surnom, nom civil)

Age : (Pour AGE, indiquer ce que vous estimez avoir comme âge –Biologique ou

autre)

Que préférez-vous : La Verticale L’horizontale? (Pour ce choix, indiquer votre préférence sans trop réfléchir)

Travailler en groupe : Oui Non ? (Pour cette précision, indiquer combien vous vous comportez dans un groupe

pour une tâche)

Quelle couleur préférez-vous? ……………………………………………………………………… (Pour COULEUR, indiquer la couleur qui rassemble, le plus d’émotions pour

vous)

Si on vous demande de faire une caricature de votre enseignant, que dessinez-vous ? (Le dessin est un moyen d’expression, on utilisera la symbolisation, le

texte, le sujet du dessin par rapport au sujet dessiné)

II) Manipulation (identification des capacités et compétences)

Dans cette section, il est question de fleurer et d’identifier les capacités et les compétences

moyennes Cp de la promotion d’étudiants de l’année universitaire en cours (Par défaut,

chaque année n’est typique qu’à elle-même, on peut avoir des surprises).

Dans la réalité des choses, nous sommes tout le temps confrontés à des situations

nouvelles où il est judicieusement nécessaire de prendre une décision. Les mauvais

jugements influencent toujours et inévitablement des résultats non-attendus dans le

système provoquant ainsi des pertes en ressources, en temps et en stratégies. Faute de

définition juste de la vraie question … ?

Les méthodes éducatives jugées, à un instant donné, valables pour une prise en considération du système

universitaire sont nettement soupçonnées comme à l’origine des éventuelles qualifications des fondements de

manœuvres et travaux à entreprendre et par conséquent, des buts tracés.

La pédagogie c'est l'art d'enseigner ou les méthodes d'enseignement propres à

une discipline, à une matière, à un ordre d'enseignement, à un établissement

d'enseignement ou à une philosophie de l'éducation. La didactique est le

fondement théorique des pédagogies adoptées.

Etude de cas :

Cas d’un système électro-énergétique

Cas de la décharge de Béchar ville

Briquette combustible=Déchets+coke de charbon

Page 2: Analyse Numérique – TP

Université de Béchar

Département de Génie Electrique

Année Universitaire - (2015-2016)

Pr. TAMALI Mohammed, SimulIA/ENERGARID Lab

Analyse Numérique – TP 2 : Systèmes linéaires

I) Présentation des outils.

Soit à résoudre un système linéaire de n équations à n inconnues, ceci consiste à trouver n nombres,

réels ou complexes, x1, · , xn, tels que :

a11x1 + a12x2 + · · · + a1nxn = b1

a21x1 + a22x2 + · · · + a2nxn = b2

. . .

an1x1 + an2x2 + · · · + annxn = bn

La méthode de Gauss consiste à déterminer une matrice P telle que le système équivalent PAX = Pb

soit triangulaire supérieure et donc simple à résoudre. La résolution d’un système triangulaire

supérieure est aisée par la procédure de remontée.

Algorithme de l’élimination de GAUSS

AX=b

Pour k=1 jusqu’à n-1

Pivot akk

Si pivot0 Alors

Pour i=k+1 jusqu’à n faire

bibi – (aik/pivot)*bk

Pour j=k+1 jusqu’à n faire

aijaij – (aik/pivot)*akj

Fin j

Fin i

Sinon ‘Problème’

Fin k

Algorithme de la remontée UY=f

U Triangulaire supérieure

Pour i=n à 1 pas de -1 faire

s=fi

pour j=i+1 à n faire

s=s-uij*yj

fin j

yi=s/uii

fin i

II) Manipulation

Soit le programme équivalent en FORTRAN 90/95 (A vérifier sous CodeBlock) PROGRAM Gauss

!Solution d’un system de N équations linéaires

!Forme matricielle A.X = B

PARAMETER (IN=20)

REAL:: A(IN,IN), X(IN), B(IN), F, SUM1

INTEGER:: K, I, J, N, IN

!Lecture et saisie des coefficients de A et de C

PRINT *,"Introduire le nombre d'equations (N):"

READ (5,*) N

PRINT *,"Saisir les coefficients de la matrice A(I,J): "

READ (5,*) ((A(I,J),J=1,N),I=1,N)

PRINT *,"Introduire les composantes du vecteur B(I): "

READ (5,*) (B(I),I=1,N)

!Décomposition (Elimination)

DO I = 1, N

DO J = 1, N

WRITE(*,*) A(I,J)

ENDDO

WRITE(*,*) B(I)

ENDDO

DO K = 1, N-1

DO I = K+1, N

F = A(I,K)/A(K,K)

DO J = K+1, N

A(I,J) = A(I,J) - F * A(K,J)

ENDDO

B(I) = B(I) - F * B(K)

ENDDO

ENDDO

! Remontée

X(N) = B(N) / A(N,N)

DO I = N-1, 1, -1

SUM1 = 0.0

DO J = I+1, N

SUM1 = SUM1 + A(I,J) * X(J)

ENDDO

X(I) = (B(I) - SUM1)/A(I,I)

ENDDO

!Impression des résultats

PRINT *,"Solution du probleme AX=B"

WRITE (6,*) ("X(",I,")=",X(I),I=1,N)

STOP

END PROGRAM Gauss

La condition nécessaire pour que le système ait une solution est que le déterminant soit différent de zéro.

Vérifier avec :

A=[1 1 1; 2 0 3; 3 1 4] et b = [ 2 5 6]T

A=[1 1; 1 1.01]; b=[2; 2.01]; (On changera A(1,2)=1.005;)

On utilisera les fonctions det, rank, pinv et cond, Discuter.

Page 3: Analyse Numérique – TP

Université de Béchar

Département de Génie Electrique

Année Universitaire - (2015-2016)

Pr. TAMALI Mohammed, SimulIA/ENERGARID Lab

Analyse Numérique – TP 3 : Systèmes linéaires

I) Présentation des outils.

Soit à résoudre un système linéaire de n équations à n inconnues, ceci consiste à trouver n nombres,

réels ou complexes, x1, · , xn, tels que :

a11x1 + a12x2 + · · · + a1nxn = b1

a21x1 + a22x2 + · · · + a2nxn = b2

. . .

an1x1 + an2x2 + · · · + annxn = bn

La méthode de Gauss-Jordan consiste à transformer la matrice ajoutée telle que le système équivalent

[A|b] soit équivalent, après des opérations de normalisation/réduction, à [I|b’], I étant la matrice unité.

Pour k allant de 1 à n

Si existe une ligne ik telle que (aik)k-10 :

échanger cette ligne i et la ligne k (li lk)

Pour i allant de 1 à n et ik

Sinon A n'est pas inversible, abandonner (on sait ici que le rang de la matrice

est k−1)

Après l'étape k de l'algorithme, la colonne k a tous ces coefficients nuls sauf

un : celui de la diagonale, qui vaut 1.

II) Manipulation

Soit le programme équivalent en FORTRAN 90/95 (A vérifier sous CodeBlock) program gauss_Jordan

integer::i,j,n,k

real::pivot,s

real,allocatable::a(:,:)

real,allocatable::b(:)

! Lecture et saisie des coefficients de A et

de C

PRINT *, "Introduire le nombre d'équations

(N):"

READ (5,*) N

allocate(A(N,N),B(N))

PRINT *,"Introduire les coefficients de la

matrice [A(I,J)]:"

READ (5,*) ((A(I,J),J=1,N),I=1,N)

PRINT *,"Introduire les composantes du

vecteur [B(I)]:"

READ (5,*) (B(I),I=1,N)

do k=1,N,1

do i=1,n,1

if (k==i) then

pivot=a(i,k)

do j=k,n,1

a(i,j)=(a(i,j))/(pivot)

end do

b(k)=(b(k))/(pivot)

else

pivot=a(i,k)

do j=k,n,1

a(i,j)=a(i,j)-pivot*a(k,j)

end do

b(i)=b(i)-pivot*b(k)

end if

end do

end do

!calcul de la solution

do i=n,1,-1

do j=i-1,1,-1

s=a(j,i)

do k=j,n,1

a(j,k)=a(j,k)-s*a(i,k)

end do

b(j)=b(j)-s*b(i)

end do

end do

do i=1,n,1

write(*,*) "x",(i),"=",b(i)

end do

write(*,*)"bn"

write(*,*) a

end program gauss_Jordan

La condition nécessaire pour que le système ait une solution est que le déterminant soit différent de zéro.

Vérifier avec :

a=[2 1 -1; -3 -1 2; -2 1 2]

x = mldivide(a,b).

On utilisera les fonctions mldivide, Discuter.

1

1

1

k

kk

kk

k

k la

l

k

k

k

ik

k

i

k

i lall 11

Page 4: Analyse Numérique – TP

Université de Béchar

Département de Génie Electrique

Année Universitaire - (2015-2016)

Pr. TAMALI Mohammed, SimulIA/ENERGARID Lab

Analyse Numérique – TP 3 : Systèmes linéaires

Méthodes Itératives Program Gseidel

parameter(ITERMAX=500) ! Nombre maximal des itérations

Integer:: N, Iter, i, j, Sol

Real,allocatable:: A(:,:)

Real,allocatable:: X(:), B(:)

Real Xs, Dmax, Eps

! Lecture et saisie des coefficients de A et de C

PRINT *, "Introduire le nombre d‘équations (N):"

READ (*,*) N

allocate(A(N,N),B(N),X(N))

PRINT *,"Introduire les coefficients de la matrice [A(I,J)]:"

READ (*,*) ((A(I,J),J=1,N),I=1,N)

PRINT *,"Introduire les composantes du vecteur [B(I)]:"

READ (*,*) (B(I),I=1,N)

! Saisie de l’estimé initial

PRINT *,"Introduire le vecteur estime initial [X(0)]:"

READ (*,*) (X(I),I=1,N)

PRINT *,"Introduire la valeur du Epsilon"

READ (*,*) Eps

! Initialisation des itérations

Iter=0

Dmax=0.

Sol=2

do while (Sol == 2)

Do i=1,N

Xs = X(i)

S=0

Do j=1,N

If (j /= i) then

S = S + A(i,j)*X(j)

End if

End do

X(i) = (B(i)-S)/A(i,i)

Xs = ABS(X(i) - Xs)

! Test sur la valeur de l’écart par rapport à Dmax

If (Xs > Dmax) then

Dmax = Xs

End if

End do

If (Dmax > Eps) then

Iter=Iter + 1

If (Iter>ITERMAX) Then

Sol=-1

End if

Else

! Le calcul converge, solution existe

PRINT *, "Vecteur solution X est donne par :"

Do i=1,N

Print *,"X(",i,") = ",X(i)

End do

Sol=0

End if

End do

End program GSeidel

Page 5: Analyse Numérique – TP

Université de Béchar

Département de Génie Electrique

Année Universitaire - (2015-2016)

Pr. TAMALI Mohammed, SimulIA/ENERGARID Lab

Analyse Numérique – TP 4 : Systèmes linéaires

Méthodes Variationnelles – Résolution des systèmes non linéaires

program NR

real, parameter::error =1e-4

integer::k

real::xo,x1,f,fd

read*,xo

k=1

10 x1=xo-(f(xo)/fd(xo))

if (abs((x1-xo)/x1)<error)then

print*,“La racine est égale a “

print*, x1

print*, " obtenue en iteration=", k

else

xo=x1

print*,“Estime suivant “, x1, “ iteration=", k

k=k+1

goto 10

endif

End program NR

real function f(x) ! procédure function evaluation de f

real::x

f = x**3-x-1

End

real function fd(x) ! procédure function evaluation de f’

real::x

fd = 3*x**2-1

End

Résoudre le système :

f(x)= x3-x-1 = 0

Prendre xo=0, 1, 1.5, 4, 10 Discuter chaque cas

Vérifier pour une autre fonction f

Comment évaluer l’erreur.

Page 6: Analyse Numérique – TP

Université de Béchar

Département de Génie Electrique

Année Universitaire - (2015-2016)

Pr. TAMALI Mohammed, SimulIA/ENERGARID Lab