Répondre à la discussion
Affichage des résultats 1 à 5 sur 5

Problème de discrétisation MAtlab



  1. #1
    karell

    Problème de discrétisation MAtlab


    ------

    J'ai la fonction suivante sous Matlab. Ca marche très bien. Mon problème c'est la discrétisation, j'ai besoin qu'il fasse les calculs avec un pas plus petit pour r. En effet, à cause de la boucle "for", j'ai un pas de 1 et ça ne va pas du tout!!!

    Pouvez-vous m'aider je vous en supplie.



    function intensite=propagation(z)

    Rmax=73;
    intensite=zeros(1,Rmax);

    R=73;
    D=2*R;
    a=14;
    l0=0.351;
    n=1.5;
    k0=2*pi*n/l0;
    zr=k0*D^2/4;

    for r=1:Rmax
    A=0;
    for s=1:50
    A=A+1+i*exp(i*(zr/(2*z))*(r^2+1))*(i*(-i)^s*(1/r)^s*bessel(s,zr*r/z))-1/(1+2*a*z/zr)*i*(-i)^s*((1+2*a*z/zr)*1/r)^s*bessel(s,zr*r/z);

    end
    intensite(r)=A;
    end

    -----

  2. Publicité
  3. #2
    erff

    Re : Problème de discrétisation MAtlab

    Bonjour,

    Dans Scilab, on peut faire la chose suivante :

    for i=1:0.1:10 (instructions....) end;


    Ce qui veut dire que i va de 1 a 10 par pas de 0.1


    Je pense que c'est faisable dans Matlab aussi !!!

  4. #3
    karell

    Re : Problème de discrétisation MAtlab

    Non ce n'est pas possible. Ça me met un message d'erreur style doit être un "interger"!!!

  5. #4
    erff

    Re : Problème de discrétisation MAtlab

    Dans ce cas, si on veut par exemple aller de 0 à 10 par pas de 0.1, il suffit de faire cela

    r=0

    for i=0:100
    (...)
    r=i./10 (ainsi on incrémente r de 0.1 à chaque itérations)
    (...)

    end

  6. A voir en vidéo sur Futura
  7. #5
    feldid

    Re : Problème de discrétisation MAtlab

    une suggestion avec 100 point de discrétisation (en majuscule)

    function intensite=propagation(z)

    Rmax=73;
    intensite=zeros(1,Rmax);

    R=73;
    D=2*R;
    a=14;
    l0=0.351;
    n=1.5;
    k0=2*pi*n/l0;
    zr=k0*D^2/4;


    IND=0;
    NPOINT=100;
    for r=LINSPACE(1,Rmax,NPOINT)
    IND=IND+1;
    A=0;
    for s=1:50
    A=A+1+i*exp(i*(zr/(2*z))*(r^2+1))*(i*(-i)^s*(1/r)^s*bessel(s,zr*r/z))-1/(1+2*a*z/zr)*i*(-i)^s*((1+2*a*z/zr)*1/r)^s*bessel(s,zr*r/z);

    end
    intensite(IND)=A;
    end
    "Mathematics is the part of physics where experiments are cheap." VI Arnol'd

Discussions similaires

  1. discretisation par differences finies
    Par ABN84 dans le forum Mathématiques du supérieur
    Réponses: 2
    Dernier message: 17/10/2007, 16h01
  2. discrétisation
    Par ketchupi dans le forum Mathématiques du supérieur
    Réponses: 3
    Dernier message: 28/03/2007, 09h49
  3. Expansion et discrétisation de l'univers
    Par Christ74 dans le forum Archives
    Réponses: 5
    Dernier message: 28/03/2006, 18h40
  4. discrétisation d'un volume
    Par Ryuujin dans le forum Mathématiques du supérieur
    Réponses: 9
    Dernier message: 25/03/2005, 09h24