El cual simboliza un nuevo comando de entrada (como en la calculadora cuando se realiza alguna operaci
on).
Observe el siguiente ejemplo:
>> 10-8
Este resultado queda almacenado en la memoria del computador y puede ser utilizado como cualquier
calculadora,
>> ans + 3
>> 10 - 8;
Escalares:
Octave no s
olo almacena valores en la variable ans, tambien se puede guardar informacion con el nombre de
variable que tu escojas. Escribe el siguiente codigo:
>>
>>
>>
>>
>>
a = 1+2;
a
pi
format long
pi
t = 1:5
t = 1:0.5:3
t = 10:-1:5
A(2,:)
t(2:4)
linspace:
linspace es otra muy buena utilidad para generar vectores. Consta de tres parametros, si el u
ltimo es omitido
crea un vector de 100 puntos, como se puede observar en el siguiente ejemplo:
>> linspace(0,1,6)
>> linspace(0,1)
a = [1 2 3];
b = [4 5 6];
3*a
3.*a
b/2
a.^2
a.*b
a*b
Funciones:
Las funciones son un concepto poderoso porque permite reutilizar y ordenar el codigo. Octave tiene algunas
funciones por defecto, escribe el siguiente codigo:
>>
>>
>>
>>
Las funciones round, ceil y floor consiguen redondear cada componente del vector E de diferentes maneras.
Ahora prueba las siguientes funciones:
>> F = [1 4 9]
>> sum(F)
>> sqrt(F)
En efecto, la funci
on sum realiza la suma de las componentes del vector y sqrt calcula la raiz cuadrada de
cada componente. Las siguientes funciones tambien pueden ser muy u
tiles:
>> min(F), max(F), mean(F), prod(F), sort(F)
Sin embargo algunas veces es necesario crear nuestra propia funcion. Para crearla se debe dirigir al editor
de Octave, luego dirjase a Archivo Nueva funci
on, esto abrira un cuadro de texto donde puede colocar el
nombre de la funci
on. Se recomienda nombrarla con extension .m, por ejemplo suma.m. Lo anterior generar
a
un c
odigo con una estructura predeterminada (las lneas que contengan al inicio el smbolo #, ## o % no
son ejecutadas, son comentarios muy u
tiles para documentar nuestro codigo). Usted debera ver algo as:
...
function [retval] = suma (input1, input2)
endfunction
El c
odigo dentro de function y endfunction son ejecutados cada vez que se llame la funcion. En este caso el
nombre de la funci
on es suma y debe coincidir con el nombre del archivo. Las palabras input1 e input2 son
las variables de entrada y retval es la variable de salida. Ahora modifiquemos la funcion:
...
function [resultado] = suma (a, b)
resultado = a + b;
endfunction
(1)
El objetivo es obtener la velocidad en funcion del tiempo. Donde v(t) es la velocidad en m/s en cualquier
tiempo t (s), g = 9,81m/s2 la gravedad, m = 68kg la masa del objeto y cr = 0,25kg/m el coeficiente de
rozamiento del objeto con el aire.
a) Cree una nueva funci
on llamada velocidad.m.
b) Reescriba la funci
on con el siguiente c
odigo:
function [resultado] = velocidad (t, g, m, cr)
resultado = sqrt(g*m/cr)*tanh(sqrt(g*cr/m)*t);
endfunction
c) En la ventana de comandos, construya un vector columna de tiempo desde 0s hasta 20s con pasos de
tiempo de 2s usando el siguiente c
odigo:
>> t = [0:2:20]'
e) Grafique la funci
on, agregue un ttulo, nombres de los ejes y dibuje una grilla usando el siguiente c
odigo:
>>
>>
>>
>>
>>
plot(t, v)
title('Grafica de la velocidad en funcion del tiempo')
xlabel('Tiempo (s)')
ylabel('Velocidad (m/s)')
grid
e) Cu
al es la velocidad terminal?
Referencias
Chapra S. Applied Numerical Methods with Matlab. Edicion 3. Editorial McGraw-Hill