Metodos Numericos
Variables:
Los cálculos que no se asignan a una variable en concreto se asignan a la variable de respuesta por defecto que es ans (del inglés, answer):
>>2+3
ans =
5
Sin embargo, si el cálculo se asigna a una variable, el resultado queda guardado en ella:
>>x=2+3
x =
5
Para conocer el valor de una variable, basta teclear su nombre:
>>x
x =
5
Si se añadeun punto y coma (;) al final de la instrucción, la máquina no muestra la respuesta...
>>y=5*4;
... pero no por ello deja de realizarse el cálculo.
>>y
y =
20
Las operaciones se evalúan por orden de prioridad: primero las potencias, después las multiplicaciones y divisiones y, finalmente, las sumas y restas. Las operaciones de igual prioridad se evalúan de izquierda a derecha:>>2/4*3
ans =
1.5000
>>2/(4*3)
ans =
0.1667
Se pueden utilizar las funciones matemáticas habituales. Así, por ejemplo, la función coseno,
>>cos(pi) % pi es una variable con valor predeterminado 3.14159...
ans =
-1
o la función exponencial
>>exp(1) % Función exponencial evaluada en 1, es decir, el número e
ans =
2.7183
Además de la variable pi , MATLAB tiene otrasvariables con valor predeterminado; éste se pierde si se les asigna otro valor distinto. Por ejemplo:
>>eps % Épsilon de la máquina. Obsérvese que MATLAB trabaja en doble precisión
ans =
2.2204e-016
pero...
>>eps=7
eps =
7
Otro ejemplo de función matemática: la raíz cuadrada; como puede verse, trabajar con complejos no da ningún tipo de problema. La unidad imaginaria serepresenta en MATLAB como i o j, variables con dicho valor como predeterminado:
>>sqrt(-4)
ans =
0+ 2.0000i
El usuario puede controlar el número de decimales con que aparece en pantalla el valor de las variables, sin olvidar que ello no está relacionado con la precisión con la que se hacen los cálculos, sino con el aspecto con que éstos se muestran:
>>1/3
ans =
0.3333
>>format long>>1/3
ans =
0.33333333333333
>>format % Vuelve al formato estándar que es el de 4 cifras decimales
Para conocer las variables que se han usado hasta el momento:
>>who
Your variables are:
ans eps x y
o, si se quiere más información (obsérvese que todas las variables son arrays):
>>whos
Name Size Bytes Class
ans 1x1 8 double array
eps 1x1 8double array
x 1x1 8 double array
y 1x1 8 double array
Grand total is 4 elements using 32 bytes
Para deshacerse de una variable
>>clear y
>>who
Your variables are:
ans eps x
Variables vectoriales:
Para definir un vector fila, basta introducir sus coordenadas entre corchetes:
>>v=[1 2 3] % Vector de 3 coordenadas
v=
1 2 3
>>w=[4 5 6];El operador ' es el de trasposición (en realidad trasposición y conjugación):
>>w'
ans =
4
5
6
Si queremos declarar un vector de coordenadas equiespaciadas entre dos dadas, por ejemplo, que la primera valga 0, la última 20 y la distancia entre coordenadas sea 2, basta poner:
>>vect1=0:2:20
vect1 =
0 2 4 6 8 10 12 14 16 18 20
Equivalentemente, si lo que conocemos del vector esque la primera coordenada vale 0, la última 20 y que tiene 11 en total, escribiremos:
>>vect2=linspace(0,20,11)
vect2 =
0 2 4 6 8 10 12 14 16 18 20
A las coordenadas de un vector se accede sin más que escribir el nombre del vector y, entre paréntesis, su índice:
>>vect2(3)
ans =
4
y se pueden extraer subvectores, por ejemplo:
>>vect2(2:5)
ans=
2 4 6 8
o,
>>vect1(:)ans=
0
2
4
6
8
10
12
14
16
18
20
Variables matriciales:
Las matrices se escriben como los vectores, pero separando las filas mediante un punto y coma; así una matriz 3x3:
>>M=[1 2 3;4 5 6;7 8 9]
M =
1 2 3
4 5 6
7 8 9
>>M' % Su traspuesta (su adjunta)
ans =
1 4 7
2 5 8
3 6 9
>>mat=[v;w;0 0 1] % También es una matriz 3x3
mat...
Regístrate para leer el documento completo.