Aide s'il vous plait en matlab

ayoub03 Messages postés 5 Date d'inscription   Statut Membre Dernière intervention   -  
Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour, j'ai un petit programme en matlab

n=2;
h=20;
d=10;
L=400;
f=8;
x=-150:50:150;
H=(f*((2*x)./L).^2+h)
hc=[H*ones(n,1)]
xc=[d*ones(n,1)]

??? Error using ==> mtimes
Inner matrix dimensions must agree.

Error in ==> Untitled at 8
hc=[H*ones(n,1)]
merci d'avance

7 réponses

ed
 
salut,

je crois (sans avoir testé pour vérifier) que tu devrais déclarer n=7 afin d'avoir la même dimension pour H et hc.

juste ?
0
ayoub03 Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
je voudrais avoir la taille suivante:

hc =

24.5000 22 20.5000 20 20.5000 22 24.5000
24.5000 22 20.5000 20 20.5000 22 24.5000

xc =

10 10 10 10 10 10 10
10 10 10 10 10 10 10
0
ed
 
dans la mesure où tu ne me dis pas si ce que j'ai proposé marche... je ne peux pas t'aider !
0
ayoub03 Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
c'est juste ed je veux avoir une taille de n ligne et des colonnes de H.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
essai alors hc= ones(n,1)*H
pour un produit matricielle, il faut que les dimensions s'accordent ainsi : m×n*n×p
0
ayoub03 Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
merci char c'est trés gentil de ta part ,si j'ai 02 boucles (for) successives
je dois executer l'operation suivante

for i=1:6;
for j=1:6;
x1(i)=xc(i)+0.05;
y1(j)=hc(j)+0.025;
R1(i,j)=sqrt((x1(i)+1).^2+y1(j).^2);
end
end
je dois les executer comme suivant:
i=1:2 et j=1: 2 ,puis i=3:4 pour j=3:4 et en fin i=5:6 pour j=5:6.
c'est un peu compliqué.
0
Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
Je n'ai rien compris.
0
ayoub03 Messages postés 5 Date d'inscription   Statut Membre Dernière intervention  
 
pas de probleme ,ca d je dois executer comme suivant
for i=1:2;
for j=1:2;
x1(i)=xc(i)+0.05;
y1(j)=hc(j)+0.025;
R1(i,j)=sqrt((x1(i)+1).^2+y1(j).^2);
end
end
for i=3:4;
for j=3:4;
x1(i)=xc(i)+0.05;
y1(j)=hc(j)+0.025;
R1(i,j)=sqrt((x1(i)+1).^2+y1(j).^2);
end
end
for i=5:6;
for j=5:6;
x1(i)=xc(i)+0.05;
y1(j)=hc(j)+0.025;
R1(i,j)=sqrt((x1(i)+1).^2+y1(j).^2);
end
end
0
Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
tu fais une matrice diagonale par bloc. C'est vrai que c'est ennuyey à faire. Je ne vois pas comment faire simplement.
0