













































Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Prepara tus exámenes
Prepara tus exámenes y mejora tus resultados gracias a la gran cantidad de recursos disponibles en Docsity
Prepara tus exámenes con los documentos que comparten otros estudiantes como tú en Docsity
Encuentra los documentos específicos para los exámenes de tu universidad
Estudia con lecciones y exámenes resueltos basados en los programas académicos de las mejores universidades
Responde a preguntas de exámenes reales y pon a prueba tu preparación
Consigue puntos base para descargar
Gana puntos ayudando a otros estudiantes o consíguelos activando un Plan Premium
Comunidad
Pide ayuda a la comunidad y resuelve tus dudas de estudio
Ebooks gratuitos
Descarga nuestras guías gratuitas sobre técnicas de estudio, métodos para controlar la ansiedad y consejos para la tesis preparadas por los tutores de Docsity
Manual para estudiar física y dar exámenes
Tipo: Guías, Proyectos, Investigaciones
1 / 53
Esta página no es visible en la vista previa
¡No te pierdas las partes importantes!














































CMCM Rev.02A 30 de abril de 2014
GNU Octave es un lenguaje de alto nivel destinado para el cálculo numérico. Provee una interfaz sencilla, orientada a la línea de comandos (consola), que permite la resolución de problemas numéricos, lineales y no lineales, además permite la ejecución de scripts y puede ser usado como lenguaje orientado al procesamiento por lotes. Octave nació alrededor del año 1988, y fue concebido originalmente para ser usado en un curso de diseño de reactores químicos para los alumnos de Ingeniería Química de la Universidad de Texas y la Universidad de Wisconsin-Madison.
Octave posee una gran cantidad de herramientas que permiten resolver problemas de algebra lineal, cálculo de raíces de ecuaciones no lineales, integración de funciones ordinarias, manipulación de polinomios, integración de ecuaciones diferenciales ordinarias y ecuaciones diferenciales algebraicas. Sus funciones también se pueden extender mediante funciones definidas por el usuario escritas en el lenguaje propio de Octave o usando módulos dinámicamente cargados escritos en lenguajes como C, C++ y Fortran entre otros.
23 321 − 34
- −10.1 11.
2.e−2 = 210^(−2) = 0. 2.1e+5 = 2.110^(5) = 210000
Atención: para separar la parte entera de la parte decimal hay que usar PUNTO DECIMAL.
1.3. ¿Cómo escribir las operaciones aritméticas elementales?
Tabla 1.1. Operaciones aritméticas elementales. [ Fuente: GNU Octave] Operación Símbolo Octave Suma + Resta - Multiplicación * División /
6+4/2+3. 5.22*3.1416/6− 4
Se puede utilizar Octave como simple calculadora, escribiendo expresiones aritméticas y terminando por RETURN (
1.4. Orden en que se realizan las operaciones aritméticas
Cuando en una expresión hay varios operadores aritméticos, el orden en que se realizan las operaciones es determinante: las operaciones NO SE EFECTÚAN SIEMPRE EN EL ORDEN EN QUE ESTÁN ESCRITAS. El orden viene determinado por las reglas siguientes:
PARA MODIFICAR ESTE ORDEN SE USAN PARÉNTESIS :
2+3^4/2 = 2+(3^4)/2 = 2+81/2 = 2+(81/2) = 2+40.5 = 42. 2+3^(4/2) = 2+3^2 = 2+(3^2) = 2+9 = 11 (2+3^4)/2 = (2+(3^4))/2 = (2+81)/2 = 83/2 = 41.
Las variables en OCTAVE no necesitan ningún tipo de declaración y pueden almacenar sucesivamente distintos tipos de datos: enteros, reales, escalares, matriciales, caracteres, etc. Para CREAR una variable basta con asignarle un valor. Para ASIGNAR un valor a una variable se utiliza una instrucción de asignación:
ab= AB= x1=1/ y1=1−4^
1.6. Variables predefinidas
Algunos nombres están predefinidos por OCTAVE:
Variables Función ans Variable del sistema para almacenar el resultado de evaluar expresiones i , j unidad imaginaria : raiz cuadrada de -
Inf “Infinito”: número mayor que el más grande que se puede almacenar NaN “Not a Number : magnitud no numérica resultado de cálculos indefinidos
Escribir en OCTAVE:
0,2 2 + 1 2
0, 2 13
Ejemplo 4 (EJEMPLOS VARIABLES PREDEFINIDAS).
1.7. Funciones matemáticas elementales
A continuación se ofrece una lista con las funciones matemáticas más comunes que posee OCTAVE. Tabla 1.2. Funciones elementales
Variables Función
sign(x) devuelve el signo del argumento
Tabla 1.3. Funciones Trigonométricas Directa Función Inversa Función sin(x) Seno (en radianes) asin(x) Arco-seno cos(x) Coseno (en radianes) acos(x) Arco-coseno tan(x) Tangente (en radianes) atan(x) Arco-tangente sec(x) Secante asec(x) Arco-secante csc(x) Cosecante acsc(x) Arco-cosecante cot(x) Cotangente acot(x) Arco-cotangente
Tabla 1.4. Funciones hiperbólicas Directa Función Inversa Función sinh(x) Seno hiperbólico asinh(x) Arco-seno hiperbólico cosh(x) Coseno hiperbólico acosh(x) Arco-coseno hiperbólico tanh(x) Tangente hiperbólica atanh(x) Arco-tangente hiperbólica
El argumento de las funciones puede ser un número, una variable o una expresión conteniendo ambas cosas. Cuando en una expresión aparece alguna función, su valor se calcula antes que cualquier otra cosa.
sqrt(7) sqrt(7/5) a=2.1; sqrt(2a) exp(3) exp(x) 7exp(5/4)+3.
2
% Apartado (1) z1=3+4i z1_barra=conj(z1) z2=4+3i z_suma=z1+z z_producto=z1z z_cociente=z1/z z_potencia=z1^ % Apartado (2) ro=sqrt(z1z1_barra) alfa=atan(b/a) ro=abs(z1) alfa=angle(z1) % Apartado (3) z1_trig=ro(cos(alfa)+isin(alfa)) z1_polar=roexp(ialfa) % Apartado (4) sin(z1) cos(z1)
Ejemplo 5 (Operarciones con números complejos).
Un vector-fila de dimension n se puede definir en OCTAVE escribiendo sus componentes entre corchetes rectos ( [ ] ) y separándolos por comas o espacios en blanco:
v=[1,−1,0,2.88] v = 1.00000 −1.00000 0.00000 2.
La orden anterior crea en OCTAVE una variable de nombre v que “contiene” un vector-fila de longitud 4. Un vector-columna se crea igual, pero separando las componentes por “punto y coma”:
w=[0;1;2;3;4;5] w = 0 1 2 3 4 5
crea una variable de nombre w , que “almacena” un vector-columna de longitud 6.
Las matrices se definen de forma similar a los vectores, introduciendo sus filas como vectores-fila y separando unas filas de otras mediante punto y coma o saltos de línea.
v=[2;−1] z=A*v
Ejemplo 9 (Producto de vectores / matrices).
Las setencias:
permiten calcular, respectivamente, el determinante y el rango de una matriz A. Tabla 2.1. Funciones de operación vectorial: Función Descripción cart2pol transforma coordenadas cartesianas a polares cart2sph transforma coordenadas cartesianas a esféricas pol2cart transforma coordenadas polares a cartesianas sph2cart transforma coordenadas esféricas a cartesianas cross producto vectorial dot producto escalar norm módulo de un vector
Dados los vectores:
Calcular, con OCTAVE, los siguientes apartados:
a = [3 −1 2]; b = [1 1 −2]; %Apartado (1) S=dot(a,b) %Apartado (2) V=cross(a,b) %Apartado (3) N=norm(V) U=V/N
Ejemplo 10 (Operaciones vectoriales).
El tensor de la figura, se ajusta hasta que la tensión
momento respecto al punto O de la tensión del cable ,que actúa en el punto A, y la magnitud de ese momento.
1.7 m
2.1 m
1.3 m 0.7 m
n_AB=[0.7 1.3 −2.1]; T = 2.5*(n_AB/norm(n_AB)); r = [1.7 0 2.1]; M_o = cross(r,T); M_mag = norm(M_o); fprintf (’M_o = r x T = ( %g)i + ( %g)j + ( %g)k [kN.m]\n’,M_o(1),M_o(2),M_o(3)); fprintf(’M_mag = |M_o| = %1.4f [kN.m]\n’, M_mag)
Ejemplo 11 (Mecánica vectorial).
Una compañía petrolera dispone de tres refinerías de petróleo. Estas se denominan de la siguiente forma: Refinería 1, Refinería 2 y Refinería 3. Cada refinería produce tres productos basados en el crudo: Alquitrán, Gasóleo y Gasolina. Supongamos que, de un barril de petróleo, se sabe que:
Supongamos que hay una demanda de estos productos de la siguiente manera:
¿Cuántos barriles de crudo necesitará cada refinería para satisfacer la demanda?. El enunciado se puede representar de la siguiente forma:
Definimos la matriz y el segundo miembro del sistema.
A=[4 2,2; 2,5,2; 1,2.5,5]; b=[600;800;1000];
Calculamos y comprobamos la solución del sistema.
x=A\b A*x
Solución OCTAVE : La Refinería 1 necesitará 31.25 barriles de crudo La Refinería 2 necesitará 87.50 barriles de crudo La Refinería 3 necesitará 150.00 barriles de crudo
Ejemplo 13 (Modelo de petróleo refinado).
La forma más sencilla de dibujar, con OCTAVE, una función y=f(x) es con la orden:
Dibuja la gráfica de la función:
ezplot(’sin(x^2)*x/2’)
Esta orden dibuja la gráfica de la función dada por la expresión anterior, para x
Ejemplo 14.
Si se quiere dibujar la función en un intervalo distinto, [a,b], hay que indicarlo expresamente en la orden:
Dibuja la gráfica de la función:
ezplot(’sqrt(1−x^2)’)
Ejemplo 17.
Una vez que se ha representado una gráfica, se puede modificar la amplitud de los ejes (el recinto del plano XY que es visible), mediante la orden:
ezplot(’sqrt(1−x^2)’) axis([−2,2,−1,2])
Ejemplo 18 (MODIFICACIONES DE LAS GRÁFICAS).
Se puede añadir un título y etiquetas a los ejes:
title(’Figura prueba’) xlabel(’Eje de las x’) ylabel(’Lo que quieras’)
Ejemplo 19 (MODIFICACIONES DE LAS GRÁFICAS).
Cada vez que se dibuja una gráfica nueva se borra la anterior, si la había. Si se desean hacer varias gráficas, “una encima de otra", sin que se borren las anteriores, se pueden usar las siguientes órdenes:
La orden hold on hace que no se borre el contenido de la ventana gráfica cuando se den nuevas órdenes de dibujo. Se suspende con hold off.
ezplot(’sin(x^2)*x/2’,[−4,4]) hold on ezplot(’x−2’,[−4,4]) ezplot(’x^2−1/x’,[−4,4]) hold off
Ejemplo 20 (AÑADIR NUEVAS GRÁFICAS).
También se pueden dibujar varias gráficas separadas en la misma ventana, usando la orden:
Esta orden divide la ventana gráfica, en subgráficos de m filas y n columnas, y se dispone a dibujar en el p-ésimo de ellos. Los ejes se numeran correlativamente, de izquierda a derecha y de arriba hacia abajo.