comment programmer ces et tracer leur graphes?
salut,
voilà j´ai un exercice et ça me perturbe beaucoup, j´aimerais bien trouver une solution, peut être pourriez vous m´aider? voici je met en pièce jointe le détail et les calcul effectués, et je voudrai représenter un diagramme de réponse, voici ce que j´ai commencer à faire, mes ça ne me donne rien du tout je n´obtiens que des erreurs, U1/U0 étant une fonction de t/T, j´ai donc supposé la fonction f1(t) = U1/U0 (t/T).
on a: d2=1/2 , et d0= -1/4
t = (2k+1)*T, k entier qui commence à 0..
Code:
1 2 3 4 5 6 7 8 9 10 11
|
f1(t) = (u1 : u0) * t : T;
t = (2*k+1) * T;
k=0:1:50;
g1(k) = f1((2*k+1)*T);
d2=0.5;
d0=0.25;
i=0:1:k;
A=(d2^2i)+1-d0^2;
B=d0^2i;
g1(k)=0.5*((1-d2^2) * sum(A) * sum(B)); |
voici ce que j´ai fait jusque là, ce n´est certes pas encore complet, mais jusqu´ici je n´ai que des erreurs que voici:
Undefined function or variable 'u1'.
Error in Untitled (line 1)
f1(t) = (u1 : u0) * t : T;
j´ai certes U1, mais je ne sais pas comment le définir dans le programme,
quelqu´un aurait il une idée?
merci pour toute réponse positive
ajout et exemple pour plus de précisoin...
voici à peu près le diagramme de réponse que je veudrais représenter: je veux représenter U1/Uo en fonction t/T
je suppose donc la function f1(t) = U1/Uo(t/T)
avec t qui varie de impaire en impaire et par multiple de T, donc :
t=(2k+1)T, k étant un entier commencant par 0. Et d2= ½ et do=-1/4
J´ai aussi : g1(k) = f1((2k+1)*T
J´ai donc la fonction g1(k) = ½[(1-d2²) * ∑(d2²)^i + (1-do²) * ∑ (do²^i)]
Avec i qui varie de 0 à k
Alors la première réponse que je veux représenter sur mon graphe est g1 au temps k=0, c´est à dire je veux voir comment se comporte g1 lorsque k = 0, ca voudra dire lorsque t=T, ce qui implique que
t/T = 1,
lorsque je remplace donc ceci dans mon equation , j´obient donc:
pour K =0, g1(0) = ½[(1-d2²) * ∑(d2²)^i + (1-do²) * ∑ (do²^i) ]
avec i allant de 0 à k, c´est à dire de i=0 à k=0
on obtient donc:
g1(0) = ½[{(1-(1/2)²) * ((1/2)²)^0} + {(1-(-1/4)²) * ( (-1/4)²)^0}]
≈ 0,84 ( lorsque je calcul avec une calculatrice
Alors sur mon tracé je vais donc avoir
au temps t/T=1 , avec t=(2k+1)T, donc t=T,
j´ai donc g1(0) = 0,84 ( ceci est donc la première réponse)
Pour la deuxième réponse de mon graphe, j´aurais donc
Pour k=1, on a g1(1) = ½[(1-d2²) * ∑(d2²)^i + (1-do²) * ∑ (do²^i) ],
Avec i allant de 0 à k=1,
Lorsqu´on remplace on obtient donc:
g1(1)= ½[(1-(1/2)²) * {((½)²)^0+((1/2)²)^1)} + (1-(-1/4)²) * {((-1/4)²)^0 + ((-1/4)²)^1}] ≈ 0,96 ( lorsqu´on effectue le calcul á la calculatrice
alors je représente donc la réponse de g1(1) au temps t/T= 3
(puisqu´on est ici à k = 1, avec t=(2k+1)T, on a donc t=3T, alors t/T=3
Ca voudrais dire sur mon tracé jái donc:
À t/T=1, j´ai g1(0)=0,84
À t/T=3, j´ai g1(1)=0,96,
à t/T=5, j´ai g1(2)=???
Á t/T=7, j´ai g1(3)=????
Et on continue ainsi …. Et á chaque fois je trace mon graphe,
Voilà à peu près ce que ce que je voudrais.
J´ai ainsi 3 autre functions semblable donc je voudrais représenter le graphique.
J´espère que quelqu´un aurait compri et pourrait m´aider à le coder et le reprénter sur Matlab avec les calculs et les graphiques.
Merci pour toute contribution
expliquer l´ereur afficher
salut,
quelqu´un pourrait il m´expliquer cette erreur? que dois je changer ici?
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
k=0:1:9;
x=(2*k)+1;
d2=0.5;
do=-1/4;
i=0:1:9;
A=(d2^2).^i;
sommeA=sum(A);
B=(do^2).^i;
sommeB=sum(B);
g1(k)=(1/2)*(((1-d2^2)*(sommeA))+((1-do^2)*(sommeB)));
g1(0); |
erreur afficher:
Subscript indices must either be real positive integers or logicals.
Error in programmenebensprechen (line 10)
g1(k)=(1/2)*(((1-d2^2)*(sommeA))+((1-do^2)*(sommeB)));
merci