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 :

Réaliser un appel de programme dans un programme matlab


Sujet :

MATLAB

  1. #1
    Membre averti
    Inscrit en
    Février 2009
    Messages
    13
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 13
    Par défaut Réaliser un appel de programme dans un programme matlab
    Bonjour à tous,
    je suis débutant sous matlab et j'aimerais savoir comment appeller un fichier matlab depuis un autre fichier matlab.

    Voila mon fichier :
    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
     x=[0:0.01:1]; 
    
    m1=0.65; 
    sigma1=0.05; 
    m2=0.75;
    sigma2=sigma1;
    
    a=norminv(x,m1,sigma1); 
    res(:,1)=a; 
    a=norminv(x,m2,sigma2);
    res(:,2)=a;
    for i=1:101 
    if res(i,1)>res(i,2)
    a=res(i,1);
    res(i,1)=res(i,2);
    res(i,2)=a;
    end 
    end 
    UPa=res(:,1) 
    UPDOWNa=res(:,2)-res(:,1) 
    DOWNa=1-UPa-UPDOWNa 
    plot(x,UPa)
    hold on 
    plot(x,UPa+UPDOWNa)
    figure
    
    
    m1=0.65;
    sigma1=0.05;
    m2=m1;
    sigma2=0.02;
    
    a=norminv(x,m1,sigma1);
    res(:,1)=a;
    a=norminv(x,m2,sigma2);
    res(:,2)=a;
    for i=1:101
    if res(i,1)>res(i,2)
    a=res(i,1);
    res(i,1)=res(i,2);
    res(i,2)=a;
    end 
    end 
    UPb=res(:,1)
    UPDOWNb=res(:,2)-res(:,1)
    DOWNb=1-UPb-UPDOWNb
    plot(x,UPb)
    hold on 
    plot(x,UPb+UPDOWNb)
    En rouge figure ce que je voudrait obligatoirement garder dans le programme principal car les valeurs peuvent varier.

    J'aimerais avoir un programme du type
    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
    x=[0:0.01:1]; 
    
    m1=0.65; 
    sigma1=0.05; 
    m2=0.75;
    sigma2=sigma1;
    
    APPEL PROGRAMME LOI1
    
    m1=0.65;
    sigma1=0.05;
    m2=m1;
    sigma2=0.02;
    
    APPEL PROGRAMME LOI2
    Si vous savez comment faire car je ne vois vraiment pas.
    Merci d'avance pour votre aide

  2. #2
    Modérateur

    Homme Profil pro
    Ingénieur en calculs scientifiques
    Inscrit en
    Août 2007
    Messages
    4 639
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Ingénieur en calculs scientifiques

    Informations forums :
    Inscription : Août 2007
    Messages : 4 639
    Par défaut
    Salut,

    tu peux utiliser des fonctions : ce sont des scripts que tu enregistres et que tu peux appeler depuis un autre script :
    Pour une bonne utilisation des balises code c'est ici!
    Petit guide du voyageur MATLABien : Le forum La faq Les tutoriels Les sources


    La nature est un livre écrit en langage mathématique. Galilée.

  3. #3
    Membre confirmé Avatar de thtghgh
    Homme Profil pro
    Inscrit en
    Mai 2009
    Messages
    221
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Finance

    Informations forums :
    Inscription : Mai 2009
    Messages : 221
    Par défaut
    Tu peux faire :

    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
     
     
     
    function [figure]= nom_de_ta_fonction(x,m1,sigma1,m2,sigma2)
     
    a=norminv(x,m1,sigma1); 
    res(:,1)=a; 
    a=norminv(x,m2,sigma2);
    res(:,2)=a;
    for i=1:101 
    if res(i,1)>res(i,2)
    a=res(i,1);
    res(i,1)=res(i,2);
    res(i,2)=a;
    end 
    end 
    UPa=res(:,1) 
    UPDOWNa=res(:,2)-res(:,1) 
    DOWNa=1-UPa-UPDOWNa 
    plot(x,UPa)
    hold on 
    plot(x,UPa+UPDOWNa)
    figure
     
    end function
    Tu enregistre ca en nom_de_ta_fonction.m
    et tu utilis la fonction comme cela :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     
     x=[0:0.01:1]; 
     
    m1=0.65; 
    sigma1=0.05; 
    m2=0.75;
    sigma2=sigma1;
     
    fig1=nom_de_ta_fonction(x,m1,sigma1,m2,sigma2)

Discussions similaires

  1. appel de gnuplot dans un programme en c++
    Par Snake-Eyes dans le forum Visual C++
    Réponses: 4
    Dernier message: 06/01/2012, 16h40
  2. Programmer dans un programme java
    Par ratvoleur dans le forum Débuter avec Java
    Réponses: 2
    Dernier message: 17/08/2010, 19h58
  3. Un programme dans le programme ?
    Par BuzzLeclaire dans le forum API, COM et SDKs
    Réponses: 9
    Dernier message: 13/02/2009, 17h49
  4. Appelé une class dans le programme main
    Par nistelsof dans le forum Langage
    Réponses: 28
    Dernier message: 06/06/2007, 09h12
  5. Accéder au sources du programme dans le programme
    Par belocom dans le forum VB.NET
    Réponses: 2
    Dernier message: 30/01/2007, 19h52

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