CanizoCortesMonica

Anuncio
MATEMÁTICAS, FUNDAMENTO DE CUALQUIER PROGRAMA.
Mónica Canizo Cortés. Dra. María de Lourdes Sandoval Solís.
Resumen
Durante mi estancia dentro del programa Verano de Talentos trabaje con el programa MATLAB,
a través del cual empecé el desarrollo de habilidades de programación, utilizando de manera
simultánea la diferencia entre la aritmética real y flotante, comprobada a través de ecuaciones de
segundo grado con sus respectivas soluciones y la ecuación de recta. Para ello se utilizó formas
básicas de programación, como la condición if-end, misma que fue ocupada para ejercicios de
solución de raíces de ecuaciones de segundo grado; además del comando while-end, el cual fue
ocupado para obtener sumatorias finitas de números naturales; junto con estos comandos se
utilizo el comando plot el cual ayuda a obtener una gráfica. Con estas instrucciones bases se
graficaron dentro de dicho programa diversos triángulos a los cuales se les aplico translación,
escala y reflexión respecto a los ejes ordenada y abscisa, para poder obtener de cierta manera
principios de algunas animaciones.
Descripción del trabajo desarrollado
Empecé el trabajo de la estancia con la forma general de la ecuación de segundo grado
(
), la cual solucioné a través de la Solución General de la Ecuación de Segundo
Grado
. Después calculé las raíces de la operación cuadrática
obteniendo los resultados
,
; mismos que trate de comprobar dentro del
programa MATLAB, primero coloque diary (comando que me permite colocarle un nombre al
archivo de texto que estoy trabajando), luego coloque las raíces
y
(sqrt indica raíz) obteniendo como resultados 6.374 y -23.3745
respectivamente, luego sustituí en las soluciones de las raíces originales w1^2+17*w1-149 y
w2^2+17*w2-149 obteniendo como resultados 0 y -5.6843e-014; por último coloque diary off
(comando que permite cerrar el archivo). De esta manera es posible ver que las computadoras no
siempre dan resultados correctos. Luego se realiza la respectiva gráfica, definiendo el eje de las
abscisas con el vector w=-24:.1:7; (delimitando el mínimo (-24), el máximo (7) y el incremento
(.1)) y se evalúa y=w.^2+17*w-149; en este caso las raíces fueron 6.3745 y -23.3745, por lo
que se colocará la gráfica basada en la w, determinando la intersección en la misma. Por último
se coloca plot (w, y) (acción que sirve para graficar tomando en cuenta los puntos) y luego grid
(condición que sirve para que la grafica tenga rejilla).
Después trabaje con el programa pero volviéndolo menos especifico para que este pudiera
trabajar con cualquier número, para ello primero abro un editor con el comando edit y luego
utilicé otro comando, input para que solicitará por pantalla el término cuadrático, el término
lineal, y el término independiente (a=input('Dar el coeficiente del termino cuadrático '), y así con
las demás variables); luego coloque
(disc me permite realizar una síntesis mas
adelante de algunas acciones que quiera realizar para no estar colocando las mismas una y otra
vez, pero estas no debe contener valores numéricos). Sustituyo dentro de la variable de las
abscisas para obtener sus respectivas raíces
,
.
Verifico en la formula general aplicándola en la y o eje de las ordenadas
y
. Genero la gráfica pero como esta vez no se conoce cual es la raíz más
pequeña se utiliza una condición para crear los vectores;
, coloco una bandera para ver
como se genera el eje de las abscisas
, introduzco un margen a la izquierda y derecha de
las raíces dentro de este incluyo un absoluto para que resulten equivalentes de cierto modo dentro
de la gráfica
también genero un limite inferior y superior el cual
será restado y sumando al margen de las raíces respectivamente, para obtener una gráfica mas
simétrica,
y
Se forma un incremento para asegurar 500 números
entre el mínimo y el máximo dentro de la gráfica, con el comando incabs,
y se obtiene el vector en caso de que if sea verdadero, es decir, que w1
sea menor que w2
luego colocamos else esto con el fin de tener una
condición que respalde por si if es falso, es decir que w1 sea mayor o igual que w2, en esta ocasión
también se genera una bandera,
; un incremento
los limites
inferior y superior
y
; el incremento
y su
respectivo vector
para dar fin a la condición se coloca end. Se determina el
eje de las ordenadas con
y se termina con
y
También comprobé la aplicación de dos ciclos el primero fue el for/end el cual fue utilizado para
realizar una suma sistemática dentro de MATLAB, para ello se coloca el comando sum (sirve
para calcular la suma del total de elementos dentro de un vector, y se coloca el cero ya que al
correr el programa no se sabe a cuanto equivale dicho comando). Inicia el ciclo for con un vector
; después del cual ira incluida la sumatoria anteriormente mencionada
(esta acción sirve como fórmula para obtener los resultados de las sumas que irán resultando cada
vez que se avance el número con el cual se este trabajando). Se termina el ciclo con el comando
end.
Para la comprobación del comando while/end se aplico de igual manera una sumatoria, la cual
consistía en dar primeramente un valor al numero inicial del cual partirían las siguientes
indicaciones n=1. La sumatoria igualmente al comando anterior empezará con cero y
posteriormente se iniciará el comando o ciclo con la indicación while n<=10, justificando que el
ciclo terminará cuando llegue a 10. Se hace la operación de suma sum=sum+n, se indica la suma
entre los números n=n+1; y se termina el ciclo con end.
Posteriormente utilizando la ecuación de la recta y los anteriores comandos se realizaron
triángulos especificando el eje de las ordenadas y de las abscisas, este ultimo siempre sería
utilizado generalmente como vector X=0:5:35 ; y=1; se especifican los vectores de los cuales
dependerá el triangulo original, ya que de este dependerán los consiguientes x1=1:.1:9;
x2=7:.1:9; x3=1:.1:7; al igual que se especifican las ecuaciones con las cuales se trabajaran
y1=3*(x1)/8+13/8; y2=-5*(x2)72+55/2; y3=4*(x3)/3+2/3; además de que se especifica a
cuantas escalas se estarán manejando los triángulos con una condición, for n=1:10 trabajando los
vectores y las ecuaciones de las cuales depende el segundo triangulo, se tiene entonces el
segundo triangulo el cual estará a escala del primero inc=.5*n; posteriormente se van
estableciendo
los
ejes
de
este
segundo
triangulo
de igual manera este incremento se aplicará al ultimo eje de las
abscisas y a todo el eje de las ordenadas.
Para la traslación se utiliza el incremento, es decir, que en base a la función del eje x se realiza
una suma o una resta del incremento al mismo, dentro del eje y, para ello se utiliza un comando if
mod(n,2)==0, y se coloca un
al igual que en el segundo
triangulo, esto en caso de que sea par; pero si esta condición es falsa se hará un incremento de
1.5 a todos los ejes de las abscisas; else
… y termina el
ciclo
con
end.
Y
se
grafican
ambos
triángulos.
Representan los colores de las líneas.
Estos resultados se guardan en el primer triangulo
Se coloca una pausa en la traslación con pause (1) y se termina el ciclo con end.
La gráfica es:
Al inicio:
Al final:
Luego invertí uno de los triángulos marcando primero las coordenadas dentro de las cuales se iba
a realizar el triangulo
y a continuación introduje los datos de las rectas en
las cuales se basaría el triangulo (tanto del eje de las abscisas como de las ordenadas, en este
último es en donde se basa mi inversión) x1=1:.1:9;…. Y las demás abscisas, X1=-x1;x2=x2;x3=-x3; y todas las ordenadas pendientes. Se grafican los triángulos.
La gráfica quedaría así:
10
9
8
7
6
5
4
3
2
1
-15
-10
-5
0
5
10
15
Para el trabajo final que es el de realizar una figura utilicé la ecuación de la recta aplicada dentro
de MATLAB y para ello genere ambos ejes y grafique los mismos dentro del editor de MATLAB
x1=0:.1:50;
y1=25*(x1)/50;
plot(x1,y1,'m')
Obteniendo así la siguiente figura:
Posteriormente dibuje un triangulo en base a la ecuación de la recta:
% eje de las abscisas
x1=0:.1:50;
x2=25:.1:50;
x3=0:.1:25;
% eje de las ordenadas
y1=25*(x1)/50;
y2=-25*(x2)/25+1875/25;
y3=50*(x3)/25;
% graficando
plot(x1,y1,'m',x2,y2,'m',x3,y3,'m')
Luego obtuve su inversión con los siguientes comandos (hold on sirve para graficar todos los
datos que se requieren):
hold on
x=-60:5:60;
y=1;
% eje de las ordenadas originales del primer triangulo
x1=0:.1:50;
x2=25:.1:50;
x3=0:.1:25;
% Inversión respecto a y
x1=-x1; x2=-x2 ; x3=-x3 ;
y1=25*(x1)/50;
y2=-25*(x2)/25-1875/25;
y3=50*(x3)/25;
% graficando
plot(x,y,x1,-y1,'b',x2,-y2,'b',x3,-y3,'b')
Grafico su inversión:
hold on
x=-60:5:60;
y=1;
% Primer triángulo
x1=0:.1:50;
x2=25:.1:50;
x3=0:.1:25;
% Inversión respecto a y
x1=-x1; x2=-x2 ; x3=-x3 ;
y1=25*(x1)/50;
y2=-25*(x2)/25-1875/25;
y3=50*(x3)/25;
% graficando
plot(x,y,x1,y1,'g',x2,y2,'g',x3,y3,'g')
plot(x,y,x1,-y1,'b',x2,-y2,'b',x3,-y3,'b')
Grafico la inversión de ambos ejes:
hold on
x=-60:5:60;
y=1;
% Primer triángulo
x1=0:.1:50;
x2=25:.1:50;
x3=0:.1:25;
% Inversión respecto a y
x1=-x1; x2=-x2 ; x3=-x3 ;
y1=25*(x1)/50;
y2=-25*(x2)/25-1875/25;
y3=50*(x3)/25;
% graficando
plot(x,y,x1,y1,'g',x2,y2,'g',x3,y3,'g')
plot(x,y,x1,-y1,'b',x2,-y2,'b',x3,-y3,'b')
Y al final grafico toda una figura:
hold on
x=-60:5:60;
y=1;
% Primer triángulo
x1=0:.1:50;
x2=25:.1:50;
x3=0:.1:25;
% Inversión respecto a y
x1=-x1; x2=-x2 ; x3=-x3 ;
y1=25*(x1)/50;
y2=-25*(x2)/25-1875/25;
y3=50*(x3)/25;
n=0;
% Segundo triángulo sin inversión y sin translación
inc=.5*n;
x11=0:.1:50+inc;
x22=25+inc:.1:50+inc;
x33=0:.1:25+inc;
y11=25*(x11-inc)/50;
y22=-25*(x22-inc)/25+1875/25;
y33=50*(x33-inc)/25;
% graficando
plot(x,y,x1,y1,'g',x2,y2,'g',x3,y3,'g')
plot(x,y,x1,-y1,'b',x2,-y2,'b',x3,-y3,'b')
plot(x,y,x11,y11,'m',x22,y22,'m',x33,y33,'m')
plot(x,y,x11,-y11,'r',x22,-y22,'r',x33,-y33,'r')
hold off
Bibliografía
Shoichiro Nakamura, ANALISIS NUMERICO Y VISUALIZACION GRAFICA CON
MATLAB, Person educación 1997.
Spivak, Michael. CÁLCULO INFINITESIMAL , Barcelona: Reverté, 1992.
Agradecimientos
Al programa por el posible acceso al mismo, a mí asesora María de Lourdes Sandoval por la
ayuda y el apoyo brindado durante mí estancia, y a mí familia por permitirme continuar con mis
estudios hasta la actualidad.
Opinión personal respecto al programa
Me parece muy bien ya que éste ayuda a tener un panorama más específico de la carrera en
elección y ayuda a establecer opciones claras con respecto a la misma. Además de que los
asesores fomentan el compañerismo y la colaboración mutua entre alumnos y profesores, y más
que nada porque colabora en el crecimiento de un estudiante como tal.
Descargar