Inscription / Connexion Nouveau Sujet
Niveau doctorat
Partager :

Equation poisson 1D et 2D avec MATLAB

Posté par
lasalade64
10-06-14 à 16:34

Bonjour à tous,
je suis en 1ere année en école d'ingénieur.
je fais un topic sur le forum car nous avons une matière qui s'appelle OUTILS INFORMATIQUE POUR LES MATHEMATIQUES et je n'y arrive clairement pas. Nous utilisons exclusivement le logiciel MATLAB.
Je dois résoudre l'équation de poisson en 1D dans un premier temps. Voila où j'en suis :

function run()
%% Exécution de la résolution
% les paramètres
a=3; b=5; Nx=20;
c=3; d=5; Ny=20;
T0=20; Ta=30;
kx=5; ky=0.5;
h=2;
Phi1D = 40;
Phi2D = inline('10*(1.+2*(abs(y-(d+c)/2)/((d-c)/2)).**3-3*(abs(y-(d+c)/2)/((d-c)/2)).**2)','y');
% le second membre
rhs1D = inline('10*(1.+2*(abs(x-(b+a)/2)/((b-a)/2)).**3-3*(abs(x-(b+a)/2)/((b-a)/2)).**2)','x');
rhs2D = inline('10*(1.+2*(abs(x-(b+a)/2)/((b-a)/2)).**3-3*(abs(x-(b+a)/2)/((b-a)/2)).**2).*(1.+2*(abs(y-(d+c)/2)/((d-c)/2)).**3-3*(abs(y-(d+c)/2)/((d-c)/2)).**2)','x','y');

% résolution
[u1,x1] = poisson1D_CL(rhs1D, a, b, Nx, Phi1D,  kx, T0, h, Ta);
[u2,x2,y2] = poisson2D_CL(rhs2D, a, b, Nx, c, d, Ny, Phi2D, kx, ky, T0, h, Ta);



function [u,x] = poisson1D_CL(RHSfunc, a, b, Nx, Phi, kx, T0, h, Ta)
%% Approximation numérique de l'équation de Poisson
%% sur le segment [a,b]. Utilise un maillage comptant (Nx+1) éléments
%% Entrée :
%%      RHSfunc : le second membre (une fonction)
%%      a,b : les bornes du domaine
%%      Nx : le nombre d'intervalles de discrétisation
%%      Phi : valeur de la condition de Neumann
%%      kx, T0, h, Ta : paramètres procédé
%% Sortie :
%%      u : la solution numérique aux points de discrétisation
%%      x : le maillage

% discrétisation


% construction de la matrice A
e=ones(N,1);
A=spdiags([-e,2*e,-e],(-1:1),N,N);
A(1,=zeros(1,N); A(1,1)=1;
A(N,=zeros(1,N); A(N,N)=1;

% construction du second membre
..

% condition de Dirichlet sur les bords x=a
...

% condition de Neumann en x=b
...

% résolution

k=1;
for n = 1:2:31
  y=gallery('poisson',n);
  eg=eig(y);
  ma(k)=max(eg);
  mi(k)=min(eg);
  k=k+1;

% tracé de la solution
plot(x,u,'r')
title('Solution du problème de Poisson')


Je n'arrive pas à completer les parties où il y a les "...", si quelqu'un pouvait m'aider et m'expliquer surtout ce serait cool.
Merci d'avance



Vous devez être membre accéder à ce service...

Pas encore inscrit ?

1 compte par personne, multi-compte interdit !

Ou identifiez-vous :


Rester sur la page

Inscription gratuite

Fiches en rapport

parmi 1719 fiches de maths

Désolé, votre version d'Internet Explorer est plus que périmée ! Merci de le mettre à jour ou de télécharger Firefox ou Google Chrome pour utiliser le site. Votre ordinateur vous remerciera !