IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MATLAB Discussion :

Propagation d'onde


Sujet :

MATLAB

  1. #1
    Futur Membre du Club
    Homme Profil pro
    étudiant
    Inscrit en
    Janvier 2020
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2020
    Messages : 14
    Points : 7
    Points
    7
    Par défaut Propagation d'onde
    Bonjour à vous tous et je souhaite à tous santé dans ces moments difficile
    j'ai fait un programme dans lequel je simule sur matlab la propagation d'onde dans un milieu contenant des defauts en 2D;
    le résultat me plait bien, mais je voudrais que quelqu'un m'aide pour limiter la dispersion (je jaune) qui apparait lors de la simulation
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    close all % Pour bien commencer...
    tic % Si on veut mesurer par la suite le temps d'exécution (avec alors toc)
    c=10; % célérité de l'onde
     
    % Domaine et grille de calcul
    Lx=100;Ly=100;
    T=10;
     
    dx=Lx/200;
    dy=Ly/200;
    dt=sqrt(dx^2+dy^2)/(2*c);
     
    gax=(c*dt)^2/(dx^2);
    gay=(c*dt)^2/(dy^2);
     
    % Grille de calcul et nombre de points
    xx=0:dx:Lx ;nx=length(xx);
    yy=0:dy:Ly ;ny=length(yy);
    tt=0:dt:T ;nt=length(tt);
    %     F(i,j+1)=-F(i,j-1)+2*F(i,j)+(F(i-1,j)+F(i+1,j)-2*F(i,j))*(2*b+3*d*(F(i+1,j)-F(i-1,j))/deltax)*((F(i+1,j)-F(i-1,j))/deltax-1);
    % Fréquence: 2Hz, de la source
    nu=2;
    % Pour initialiser une matrice en Matlab, on la remplit de zeros
    u=zeros(nx,ny,nt);
     
    for i=2:nx-1
        for j=2:ny-1
            u(i,j,2)=u(i,j,1)+...
                gax/2*(u(i-1,j,1)+u(i+1,j,1)-2*u(i,j,1))+...
                gay/2*(u(i,j-1,1)+u(i,j+1,1)-2*u(i,j,1));
        end
    end
    for k=3:nt-1
        for i=2:nx-1
            for j=2:ny-1
                u(i,j,k+1)=2*u(i,j,k)-u(i,j,k-1)+...
                    gax*(u(i-1,j,k)+u(i+1,j,k)-2*u(i,j,k))+...
                    gay*(u(i,j-1,k)+u(i,j+1,k)-2*u(i,j,k));
            end
        end
        % et on impose la source à chaque instant:
          sx=nx/3; 
          sy=ny;
          % de calcul de la source
        u(sx,sy,k+1)= u(sx,sy,k)+ sin(2*pi*nu*k*dt);
       u(50,160,k)=0;
    % %    u(100,70,k)=0;
    %     u(160,60,k)=0;
    % et on impose aussi ici les conditions aux limites: 
          % conditions sur les bords du domaine 
          % et sur l'éventelle obstacle 
          % (fente simple ou double dans le TP)
          u(1,:,k+1)=u(2,:,k);
    u(13,:,k+1)=u(4,:,k);
    u(:,1,k+1)=u(:,2,k);
    u(:,6,k+1)=u(:,17,k);
    end
    figure(1);clf;whitebg('w');
    for k=1:nt
       pcolor(u(:,:,k));
        % Les axes n'ont ici aucun sens physique, on les retire
        axis on;
        % On fixe l'échelle des couleurs
        caxis([-0.1 0.8]);
        % On lisse la représentation par interpolation des données
        shading interp;
        % Et on laisse un peu de temps entre chaque affichage
        pause(0.1)
    end

  2. #2
    Futur Membre du Club
    Homme Profil pro
    étudiant
    Inscrit en
    Janvier 2020
    Messages
    14
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : étudiant
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2020
    Messages : 14
    Points : 7
    Points
    7
    Par défaut représentation en 3D
    bonjour
    je voudrais connaitre la syntaxe d'un tracé sur un repère. j'ai fait une simulation en 2D (x,y) de la propagation d'une onde dans le temps. maintenant je voudrais représenter l'amplitude de l'onde sur ce plan dans le temps

Discussions similaires

  1. Outils de prédiction de la propagation des ondes wifi
    Par junior222 dans le forum EDI et Outils pour Java
    Réponses: 0
    Dernier message: 17/05/2018, 12h25
  2. [Débutant] propagation d'ondes planes dans une cavité parallélépipédique
    Par jackboer63 dans le forum MATLAB
    Réponses: 1
    Dernier message: 01/02/2016, 10h13
  3. Réponses: 0
    Dernier message: 11/02/2011, 17h31
  4. Propagation d'ondes sismiques
    Par Flo Flo dans le forum Débuter
    Réponses: 0
    Dernier message: 21/04/2009, 19h03
  5. Propagation d'onde en 1D
    Par tpscience dans le forum Signal
    Réponses: 6
    Dernier message: 18/04/2009, 00h02

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo