creation programme avec matlab
Répondre à la discussion
Affichage des résultats 1 à 8 sur 8

creation programme avec matlab



  1. #1
    invite462c079e

    creation programme avec matlab


    ------

    Bonjour, je dois cree un programme sur matlab qui me permettrait de voit l'intensite lumineuse en fonction de la temperature et j'ai beaucoup de mal... Je dispose des elements suivants:
    dn1/dt=(-n1/taux1)-(n1/tauxNR)+(n2/tauxTR)
    dn2/dt= (-n2/taux2)-(n2/tauxNR)-(n2/tauxTR)
    Sachant que tauxTR et tauxTR sont de la forme: taux=TauxT0*exp((-deltaE)/kT)).
    et que taux1 et taux2 sont de la forme: taux1==TauxT0+AT avec tauxT0 et A des constantes et T la température.
    Le but du programme serait donc de voir l'influence de la température sur l'intensité I avec: I(T)= n/taux avec les n et taux correspondants (1 et 2)
    Il faudrait donc un programme où je pourrais entrer les valeurs de n1, n2, tauxT10, tauxT20, tauxT0, A, B ,deltaE et enfin la température et ensuite avoir le graphique qui s'affiche et qui soit modifiable directement en fonction de ces paramètres.
    quelqu'un aurait-t' il une idee sur le sujet?? j' avoue que je bloque, pensez vous qu'en appliquant la methode des elements fini cela puisse marcher?? si c'est le cas faut-il utiliser pdetool? je ne comprend pas bien comment fonctionne ce programme....
    Je vous remercie d'avance pour vos reponses.

    -----

  2. #2
    invite9f80122c

    Re : creation programme avec matlab

    Tu peux utiliser la méthode que tu veux.

    Mais je te conseille de discrétiser toi-même tes dérivées. Choisis un échantillonage, ensuite choisis ta fenêtre de valeur pour chaque paramètre et met tout ça sous forme de vecteurs.

    Il te suffit alors de calculer les valeurs que tu veux en fonction des paramètres évalués précédemment.

    Pour afficher la fonction 'plot' suffira. Attention à afficher l'échelle selon les valeurs données à tes paramètres.

    Tu as déjà utilisé Matlab ou c'est la première fois ? Il y a une fonction help pour avoir des infos sur les fonctions, tape juste 'help nomdefonction' dans la fenêtre de commande.

  3. #3
    invite462c079e

    Re : creation programme avec matlab

    Merci pour cette reponse rapide!
    non c'est la premiere fois que j'utilise matlab, c'est pourquoi je n'arrive pas bien a transposer ce probleme mathematique en programme matlab.... donc tu me conseil de ne pas utiliser pdetool? c'est vrai que ca m'a l'air plus pratique comme tu le propose, mais je ne comprend pas comment discrétiser mes dérivées sur matlab...

  4. #4
    invite9f80122c

    Re : creation programme avec matlab

    Je conseille d'essayer de discrétiser toi-même car ça permet de comprendre comment programmer. Ensuite tu pourras implémenter toi-même ou en tout cas comprendre facilement comme une méthode des éléments finis fonctionne, c'est mieux que de l'utiliser à l'aveugle. Tu peux toujours utiliser la fonction help pour savoir comment une fonction doit être utilisée.

    Une méthode de discrétisation basique :

    D'abord créer un fichier nomdeprogramme.m, il y a l'éditeur matlab pour ça, la première ligne doit être 'function [sortie] = nomdefonction(entrée)', mais je te conseille de mettre tout tes paramètres dans le programme. L'aide matlab est là pour expliquer comment fonctionnent les entrées sorties et les déclarations de variables. Il y a aussi des tutoriels sur leur site, c'est toujours utile d'en faire quelques uns pour avoir les bases. Matlab est un langage fonctionnel professionnel très utile et surtout très utilisé.

    Pour discrétiser les dérivées il suffit de remplacer par des

    Donc t=[0:10], les vecteurs n doivent être de même taille que t.
    Tu auras : ... etc.

    Tu dois donc isoler n1. La seule erreur d'approximation, en plus de l'échantillonage, sera le premier n1 qui servira uniquement à calculer

    Donc tu auras une équation du style : ... , n(i) étant l'élement calculé l'itération précédente ou l'élément de base que tu peux mettre à 0 par exemple si n est toujours positif. Je vois que tu as un n2 dans l'équation de n1, si ce n'est pas une erreur tu devras utiliser n2(i).

    Tu peux calculer les 'taux' directement en fonction des paramètres donnés.

    Enfin tu auras un vecteur pour n1 et un vecteur pour n2 avec lesquels tu peux calculer I. Attention à bien respecter la correspondance des n et des taux (ainsi que de T) pour calculer I.

    Le reste c'est des boucle 'for' ou directement du calcul vectoriel, comme tu préfères. La fonction exp existe telle quelle dans matlab.
    Bonne courage

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

    Re : creation programme avec matlab

    Oups l'équation que j'ai donnée est fausse désolé

    donc un truc du style :

  7. #6
    invite462c079e

    Re : creation programme avec matlab

    merci beaucoup! je vais essayer avec sa! par contre ce n'est pas une erreur c'est bien n2 qu'il y a dans l'equation 1, que veux tu dire par utiliser ni2? (sachant que n1 et n2 sont a peut pres egaux a t=0 et ensuite ils diminuent tout les deux en fonction du temps et que n1 diminue plus rapidement; ils tendent tout les deux vers 0)

  8. #7
    invite9f80122c

    Re : creation programme avec matlab

    Citation Envoyé par butttttters Voir le message
    merci beaucoup! je vais essayer avec sa! par contre ce n'est pas une erreur c'est bien n2 qu'il y a dans l'equation 1, que veux tu dire par utiliser ni2? (sachant que n1 et n2 sont a peut pres egaux a t=0 et ensuite ils diminuent tout les deux en fonction du temps et que n1 diminue plus rapidement; ils tendent tout les deux vers 0)
    Bon ben j'ai rien compris j'ai cru que tu devais calculer n1 et n2 ...

    Si tu as n1 et n2 tu n'as plus qu'à calculer I alors, pas besoin de calculer les dérivée partielles. Sauf si tu veux le faire pour différents taux, alors là fais comme j'ai dit.

    Pour calculer n1(i+1) il te faut n1(i) et n2(i), pour n1(2) il te faut donc n1(1) et n2(1) qui sont les valeurs initiales. Ensuite pour n1(3) tu utiliseras n1(2) etc. Ecris la formule complète sur papier ce sera plus clair.

  9. #8
    invite462c079e

    Re : creation programme avec matlab

    Non non tu avais bien compris je n'ai ni n1 ni n2 je sais juste approximativement le comportement qu'ils devraient avoir mais rien de concret

Discussions similaires

  1. probleme avec programme detection qrs sur matlab
    Par inviteb0c08558 dans le forum Électronique
    Réponses: 5
    Dernier message: 07/05/2011, 11h27
  2. programmé la logique flou avec matlab
    Par invitea16701af dans le forum Logiciel - Software - Open Source
    Réponses: 0
    Dernier message: 16/12/2009, 12h04
  3. MATLAB création de matrice
    Par invitec16903eb dans le forum Logiciel - Software - Open Source
    Réponses: 1
    Dernier message: 14/05/2009, 12h12
  4. programme avec matlab
    Par invite75273a24 dans le forum Logiciel - Software - Open Source
    Réponses: 1
    Dernier message: 08/04/2009, 23h26
  5. création d'interface graphique avec le GUI de matlab
    Par invite4d702022 dans le forum Logiciel - Software - Open Source
    Réponses: 2
    Dernier message: 30/08/2006, 15h19