Fonction matlab
Résolu/Fermé
loulp123
Messages postés
26
Date d'inscription
mercredi 18 mai 2011
Statut
Membre
Dernière intervention
21 novembre 2011
-
14 sept. 2011 à 23:51
loulp123 Messages postés 26 Date d'inscription mercredi 18 mai 2011 Statut Membre Dernière intervention 21 novembre 2011 - 16 sept. 2011 à 14:28
loulp123 Messages postés 26 Date d'inscription mercredi 18 mai 2011 Statut Membre Dernière intervention 21 novembre 2011 - 16 sept. 2011 à 14:28
A voir également:
- Fonction matlab
- Fonction si et - Guide
- Fonction moyenne excel - Guide
- Fonction miroir - Guide
- Fonction somme excel - Guide
- Fonction remplacer word - Guide
3 réponses
Char Snipeur
Messages postés
9813
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
3 octobre 2023
1 298
15 sept. 2011 à 10:05
15 sept. 2011 à 10:05
l'erreur est étonnante, je compte le bon nombre de parenthèse.
la seule chose qui me gène c'est "f=1,2". Normalement, les nombre réel s'écrivent avec un point. Là, je ne sais pas ce que ça donne.
je ne comprend pas non plus ton B/B... en plus, un vecteur divisé par un vecteur, je suis étonner qu'il ne râle pas.
pourquoi donner des valeurs à D alors que tu l'écrases quelques lignes plus loin ?
la seule chose qui me gène c'est "f=1,2". Normalement, les nombre réel s'écrivent avec un point. Là, je ne sais pas ce que ça donne.
je ne comprend pas non plus ton B/B... en plus, un vecteur divisé par un vecteur, je suis étonner qu'il ne râle pas.
pourquoi donner des valeurs à D alors que tu l'écrases quelques lignes plus loin ?
loulp123
Messages postés
26
Date d'inscription
mercredi 18 mai 2011
Statut
Membre
Dernière intervention
21 novembre 2011
15 sept. 2011 à 16:02
15 sept. 2011 à 16:02
merci Char snipeur ,je suis débutante en matlab donc c'est pas évident ds un premier temps , l'objectif c de dessiner D en fonction de B ,
et B et D peuvent prendre des nombres et ce sont pas des vecteurs
avec f , g et m donné
voila le programme corrigé :
D=linspace(0,1,10);
B=linspace(0,1,10);
f=1.2;
g=2;
m=8 ;
D=B/(B+(1-B).*((f-(f/g).^m)/(f-1)));
plot(B,D)
j'ai essayé de modifier les parentheses ,
et B et D peuvent prendre des nombres et ce sont pas des vecteurs
avec f , g et m donné
voila le programme corrigé :
D=linspace(0,1,10);
B=linspace(0,1,10);
f=1.2;
g=2;
m=8 ;
D=B/(B+(1-B).*((f-(f/g).^m)/(f-1)));
plot(B,D)
j'ai essayé de modifier les parentheses ,
Char Snipeur
Messages postés
9813
Date d'inscription
vendredi 23 avril 2004
Statut
Contributeur
Dernière intervention
3 octobre 2023
1 298
15 sept. 2011 à 16:19
15 sept. 2011 à 16:19
B=linspace(0,1,10);
veux dire que B est un vecteur. Lorsque tu fais B/B tu essais de faire un produit "matriciel" qui ne fonctionne pas sur des vecteurs (je crois qu'il est impossible d'inverser un vecteur). Ce qui est génial avec MATLAB, c'est que tu peux faire des opérations terme à terme grace aux opérateurs préfixés avec un point, comme tu l'utilises avec la multiplication et la puissance.
D=B./(B+(1-B)*((f-(f/g)^m)/(f-1)));
Il faut bien faire attention aux choses que tu multiplies et que tu divises.
veux dire que B est un vecteur. Lorsque tu fais B/B tu essais de faire un produit "matriciel" qui ne fonctionne pas sur des vecteurs (je crois qu'il est impossible d'inverser un vecteur). Ce qui est génial avec MATLAB, c'est que tu peux faire des opérations terme à terme grace aux opérateurs préfixés avec un point, comme tu l'utilises avec la multiplication et la puissance.
D=B./(B+(1-B)*((f-(f/g)^m)/(f-1)));
Il faut bien faire attention aux choses que tu multiplies et que tu divises.
loulp123
Messages postés
26
Date d'inscription
mercredi 18 mai 2011
Statut
Membre
Dernière intervention
21 novembre 2011
16 sept. 2011 à 14:28
16 sept. 2011 à 14:28
oui vous avez raison , merci bcp
le probleme est résolu
le probleme est résolu