Matlab - dibujar funciones senoidales

 
Vista:
sin imagen de perfil

dibujar funciones senoidales

Publicado por ximo (6 intervenciones) el 18/09/2021 18:13:09
Buenas
Se me pide , en clase el siguiente ejercicio y no se como enfocarlo, solo quiero el planteamiento inicial porque no entiendo como se plantea de inicio
Se que una seria y=(amplitud)*sin(pulsacion*t)
que t la sacaria de un input= t('valor t');
pero me pierdo en como introducir los dos vectores y como los cogeria y
os paso el problema, gracias por todo



Realiza un programa para la representación de hasta 8 funciones seno en una
misma ventana (utiliza subplot). El usuario deberá introducir 2 vectores de igual tamaño (hasta 8 elementos),
uno correspondiente a los valores de amplitud y otro a los valores de pulsación
de cada función seno a representar, además de un parámetro t con el número
de segundos a representar. El programa deberá ser capaz de:
- Detectar si el usuario ha cometido un error o infracción al introducir los parámetros de entrada (vectores de distinto tamaño o mayores de 9 elementos).
- Generar las correspondientes funciones seno tomando en consideración, en cada caso, el parámetro t de segundos a representar.
- Representar dichas funciones seno en una misma ventana (subplot), de forma ordenada y de fácil visualización, según el número de funciones demandadas.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

dibujar funciones senoidales

Publicado por damian (22 intervenciones) el 19/09/2021 06:54:22
Hola. Cuando te pida el tiempo solo escribe el tiempo máximo q quieras, por ejemplo: 60
cuando te pida los vectores de "w" y de "A" escríbelos entre corchetes, por ejemplo: [5 45 7] y [ 45 35 12]
Los corchetes se escriben con Alt+91 y Alt+93

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
t=input('ingresar el valor del tiempo a representar (en segundos): ');
t=0:0.01:t;
A=input('ingresar amplitud/es A: ');
w=input('ingresar el valor de la/s frefuencia/s: ');
w=sort(w); %es para ordenar el vector w y al graficarlo estén ordenados por frecuencia
 
 
if length(w)==length(A)
 
    if length(A)<=8 && length(w)<=8
 
       for n=1:length(w)
           subplot(length(w),1,n)
           y=A(n)*sin(w(n)*t);
           plot(t,y)
           title(['y' num2str(n) ' = ' num2str(A(n)) ' sin(' num2str(w(n)) 't)'])
       end
 
    else
        fprintf('\n')
        fprintf('los vectores "A" y "w" pueden tener como máximo una longitud de 8\n')
 
    end
else
   fprintf('\n')
   fprintf('los vectores "A" y "w" deben tener las mismas dimensiones\n')
end

A las funciones no las guardé en ningún lado, solamente las escribí para que te aparezcan en los títulos de cada subplot porque no se como las necesitas, como function_handle?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

dibujar funciones senoidales

Publicado por ximo (6 intervenciones) el 19/09/2021 07:34:05
Muchisimas gracias, no sabes lo que me has ayudado
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

dibujar funciones senoidales

Publicado por ximo (6 intervenciones) el 19/09/2021 13:00:49
damian me dejas tu email, darias alguna clase on line etc...?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar