Generating sinusoidal wave in MATLAB but I get STRAIGHT line instead??
    4 visualizaciones (últimos 30 días)
  
       Mostrar comentarios más antiguos
    
I am trying to learn about the signals and wave for awhile now, It worked at the beggining but when I added few lines I get now curved line, I know it meant to be easy but not sure whats wrong .. I am using possion distribution !
here is my code..
    function S = trial(lambdaMax,lambda,T)
t = 0;
I = 0;
S = [];
 u = rand;
t = t - log(u)/lambdaMax;
 while t < T
     u = rand;
    if (u <= lambda(t)/lambdaMax)
        I = I+1;
        S(I) = t;
    end
    u = rand;
    t = t - log(u)/lambdaMax;
end
this is the script to run it,,
lambdaMax=50;
T=1;
lambda =@(x) lambdaMax * sin(x); 
S = trial(lambdaMax,lambda,T);
figure
hold on
plot(S,lambda(S),'*')
xlabel('t')
ylabel ('sin(x)')
4 comentarios
  Jan
      
      
 el 26 de Jun. de 2011
				Well, as far as I remember the sinus *is* a curved line.
Naturally the computations are correct in the sense that Matlab interpretes the shown code correctly. So if you expect a different result, most likely your expectations are wrong.
Please take the time to formulate a question and explain the difference between "curved line" and "sin wave" with any details.
Respuesta aceptada
  Jan
      
      
 el 26 de Jun. de 2011
        If you call your function "trial" with T=2*pi you get a full period of a sinusidal curve. With T=1 you get just the first part, which looks almost straight, but it has a small curvature.
Más respuestas (0)
Ver también
Categorías
				Más información sobre Get Started with MATLAB en Help Center y File Exchange.
			
	Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

