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

scilab



  1. #1
    ebolamath

    scilab


    ------

    Bonjour

    je cherche a comprendre un programme bien compliqué qui est une methode numerique de resolution d'equation aux derivé partiellles.
    au passage le coup de la grille je n'ai rien compris bref)

    voici mon programme si quelqu'un connait un peu ce logiciel :

    function [tnew,U]=transport(t,x,u0,v)
    tnew=0;
    vectv=v(x)';
    vectu=u0(x);
    U=vectu;
    for i=1:length(t)-1
    vectu=[vectu(1)-(dt/dx)*vectv(1)*(vect(2)-vectu(1)),
    vectu(2:$-1)-(dt/(2*dx))*vectv(2:$-1)+(vectu(3:$)-vect1:$-2),
    vectu($)-(dt/dx)*vectv($)*(vectu($)-vectu($-1))]
    if modulo(t(i+1),1)==0
    then U=[U,vectu];
    tnew=[tnew,t(i+1)];
    end
    end
    endfunction


    et le message d'erreur :

    then U=[U,vectu];
    !--error 34
    Syntaxe de l'instruction de contrôle incorrecte.

    at line 11 of function transport called by :
    endfunction
    at line 15 of exec file called by :


    voila voila j'aimerais bien reussir a le faire tourner pour mieu comprendre ce qu'on y fait
    ps: si vous ne trouver pas l'erreur mais que vous avez toute expliquation concernat ce programme je suis prenneur

    merci

    -----

  2. #2
    ebolamath

    Re : scilab

    j'ai un peu simplifié le programme pour essayer d'avancer mais bon

    >x=[-10:10]
    x =

    - 10. - 9. - 8. - 7. - 6. - 5. - 4. - 3. - 2. - 1. 0. 1. 2. 3. 4. 5. 6. 7. 8. 9. 10.

    -->t=[0:16]
    t =

    0. 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16.

    -->dt=0.01
    dt =

    0.01

    -->dx=0.1
    dx =

    0.1


    function y=v(x)
    y=1+exp(-((x-4)^4))-exp(-((x-3)^2))
    endfunction

    function y=u0(x)
    y=exp(-((x+8)^2))
    endfunction

    function U=transport2(t,x,x0,v)
    vectv=v(x)';
    vectu=u0(x);
    U=vectu;
    for i=1:length(t)-1
    vectu=[vectu(1)-(dt/dx)*vectv(1)*(vectu(2)-vectu(1)),
    vectu(2:$-1)-(dt/(2*dx))*vectv(2:$-1)+(vectu(3:$)-vect(1:$-2)),
    vectu($)-(dt/dx)*vectv($)*(vectu($)-vectu($-1))]
    U=[U;vectu];
    end

    endfunction

  3. #3
    ebolamath

    Re : scilab

    -->transport2(t,x,u0,v)
    !--error 9
    Soustraction incohérente.

    at line 7 of function transport2 called by :
    transport2(t,x,u0,v)

    et boom ca marche pas

Discussions similaires

  1. scilab
    Par inviteb422af27 dans le forum Mathématiques du supérieur
    Réponses: 0
    Dernier message: 05/01/2011, 10h45
  2. Scilab
    Par invitefbbdec8d dans le forum Électronique
    Réponses: 0
    Dernier message: 27/10/2009, 21h36
  3. Scilab
    Par invite0d229c95 dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 03/12/2008, 10h20
  4. scilab
    Par invitec3e85369 dans le forum Électronique
    Réponses: 0
    Dernier message: 26/03/2007, 15h00
  5. scilab
    Par invite8c632a8c dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 20/01/2007, 16h30