Definir une matrice qui dépend du temps

Fermé
Thierry - 10 nov. 2009 à 02:19
 Thierry - 10 nov. 2009 à 04:26
Bonjour,

J'aimerais définir une matrice A sous matlab qui dépend du temps du type A(t)=[exp(t) 0; exp(-2*t) 3*t]
J'ai essayé de procéder comme une fonction "classique" mais cela ne donne rien. Je m'y prends sans doute de la mauvaise manière...

function [A]=test(t)
A=zeros(4,4);
t=0:5;
A(t)=[exp(t) 0; exp(-2*t) 3*t]

Comment faire pour que matlab comprenne que lorsque que je rentre A(7) par exemple je lui demande en fait de me déterminer la matrice au temps t=7 et non la 7ème composante d'une ligne.

Merci d'avance! ;)

1 réponse

Pacorabanix Messages postés 3248 Date d'inscription jeudi 23 août 2007 Statut Membre Dernière intervention 19 mai 2013 661
10 nov. 2009 à 03:21
A=zeros(4,4);

inutile.


t=0:5;

contraire à ce que tu veux faire... en appelant ta fonction, tu passes t en paramètre, mais tu efface t directement pour le remplacer par 0:5 ! ( [0 1 2 3 4 5] )
A(t)=[exp(t) 0; exp(-2*t) 3*t]

pas de (t) à mettre devant A.

Ensuite ben ensuite il faut appeler ta fonction avec le bon temps... ta fonction c'est test() et pas A() ;)
et elle calculera la bonne matrice A à renvoyer.
0
Ah d'accord! Comme quoi c'était pas si compliqué. En tout cas merci beaucoup ça m'enlève une belle épine du pied. ;)
0