Matematické Fórum

Nevíte-li si rady s jakýmkoliv matematickým problémem, toto místo je pro vás jako dělané.

Nástěnka
22. 8. 2021 (L) Přecházíme zpět na doménu forum.matweb.cz!
04.11.2016 (Jel.) Čtete, prosím, před vložení dotazu, děkuji!
23.10.2013 (Jel.) Zkuste před zadáním dotazu použít některý z online-nástrojů, konzultovat použití můžete v sekci CAS.

Nejste přihlášen(a). Přihlásit

#1 29. 06. 2011 15:22

Prometheus1988
Zelenáč
Příspěvky: 3
Reputace:   
 

MatLab plot

Zdravím, mohl by mi někdo pomoci? Mám problémy s vykreslením grafu. Stále mi to vypisuje:

??? Attempted to access pole(1.2,1); index must be a positive integer or logical.

Error in ==> kulmech3_GUI>kulmech3 at 51
    pole (alfa + 1, 1) = v;

??? Error while evaluating uicontrol Callback
Předem děkuji.

SCRIPT:

function kulmech3 (handle, evendata)
omega = str2double(get(Omega,'String'));
H = 2;
r = 0.5;
b = 3;
c = 2;

t = (4*pi)/omega;

pole = zeros(720, 3);

if omega == 0
   
    uicontrol('Style','text','Position',[300 100 250 30], 'String', 'ERROR', 'FontSize', 12, 'FontWeight', 'demi', 'Backgroundcolor',[1 1 1],'Foregroundcolor','red');
   
else

for i = 0 : 0.1 : t;
   
    alfa = omega * i;
    L = sqrt((r * r + H * H) - 2 * r * H * cosd(alfa + 90));
    beta = asind ((r / L) * sind (90 + alfa));
    R = b / cosd(beta);
   
    %rychlost - obvodová rychlost rotační páky s kamenem
    v0 = omega * r;
    va = v0 * sind(alfa + beta);
    vb = va * (R / L);
    v = vb * cosd(beta);
    pole (alfa + 1, 1) = v;  >>ZDE JE ZRADA
   
    %zrychleni - úhlová rychlost kyvné páky s kulisou
    omega1 = vb / R;
    anl = omega1 * omega1 * R;
    a = anl * sind (beta);
    pole (alfa + 1, 2) = a;
   
    %poloha táhla vůči výchozí pozici
    h = b * tand(asind (r / H)) - R * sind(beta);
    pole (alfa + 1, 3) = h;
   
end
end
plot(pole)
grid on
xlabel('osa x')
ylabel('osa y')

Offline

 

#2 16. 07. 2011 18:44

anes
Příspěvky: 146
Reputace:   14 
 

Re: MatLab plot

Přiznávám, že se mi to nechce dlouze studovat, ale máš pole.... matici 720x3 a chceš po matlabu, aby přistupovat k prvku na pozici 1.2, 1. Nedivím se, že se mu to nelíbí.Musíš si tam buď udělat nějaký přepočet, ze kterého vyleze celé číslo, které jednoznačně určí pozici v matici, nebo to třeba svázat s tím i, které už máš zavedené (což bych udělal asi radši, protože nevím, proč by mi pozice v matici měla nějak závislet na omeze, kterou si uživatel může zadat dle libosti).

Offline

 

Zápatí

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson