UNIVERDIDAD NACIONAL AUTONOMA DE HONDURAS

14
UNIVERDIDAD NACIONAL AUTONOMA DE HONDURAS Facultad de Ciencias Escuela de Fisica Elctricidad y Magnetismo INTRODUCCIÓN A MATHEMATICA Inst. Leorely Reyes INTROUCCIÓN SUMA, RESTA, MULTIPLICACION Y DIVISIÓN Para que el programa pueda realizar la actividad señalada, deberán seleccionar la tecla shift + enter para que el programa devuelva la actividad señalada. (Debug) In[1]:= 2 + 2 (Debug) Out[1]= 4 INTRODUCCIÓN DE SÍMBOLOS DE USO COMÚN Como se sabe, en la clase de Electricidad y Magnetismo se trabaja con diversos sistemas de coordenadas y diversas variables. Muchas de estas están en alfabeto griego o son símbolos matemáticos específicos. Para que haya consistencia al momento de hacer los cálculos es necesario conocer cómo se introducen dichas variables en Mathematica.

Transcript of UNIVERDIDAD NACIONAL AUTONOMA DE HONDURAS

Page 1: UNIVERDIDAD NACIONAL AUTONOMA DE HONDURAS

UNIVERDIDAD NACIONAL AUTONOMA DE HONDURAS

Facultad de Ciencias Escuela de Fisica

Elctricidad y Magnetismo

INTRODUCCIÓN A MATHEMATICAInst. Leorely Reyes

→INTROUCCIÓN

SUMA, RESTA, MULTIPLICACION Y DIVISIÓN⇒Para que el programa pueda realizar la actividad señalada, deberán seleccionar la tecla shift + enter para que el programa devuelva la actividad señalada.

(Debug) In[1]:= 2 + 2

(Debug) Out[1]= 4

→INTRODUCCIÓN DE SÍMBOLOS DE USO COMÚN

⇒Como se sabe, en la clase de Electricidad y Magnetismo se trabaja con diversos sistemas de coordenadas y diversas variables. Muchas de estas están en alfabeto griego o son símbolos matemáticos específicos. Para que haya consistencia al momento de hacer los cálculos es necesario conocer cómo se introducen dichas variables en Mathematica.

Page 2: UNIVERDIDAD NACIONAL AUTONOMA DE HONDURAS

→OPERACIONES BÁSICAS

⇒A continuación se enuncian operaciones básicas que se pueden realizar con números:

2 FS-321PRACTICA1.nb

Page 3: UNIVERDIDAD NACIONAL AUTONOMA DE HONDURAS

→ASIGNACIÓN DE VARIABLES(Debug) In[2]:= a = 3

(Debug) Out[2]= 3

(Debug) In[3]:= b := 2

(Debug) In[4]:= a + b

(Debug) Out[4]= 5

◼ En general, es preferible definir en letras minúsculas variables que almacenen valores numéricos,o funciones escalares, mientras que en letras mayúsculas es preferible almacenar funciones vectoriales. Sin embargo, hay ciertas variables en letras mayúsculas que no se pueden usar para almacenar funciones o valores numéricos, debido a que cumplen otras funciones en Mathematica. A continuación se detallan dichas variables:

→FUNCIONES ESPECIALES Mathematica tambi´en puede desarrollar cálculos con funciones trigonométricas, logarítmicas, exponen-ciales, etc. A continuación, se describen algunas funciones especiales de uso común:

→DEFINICIÓN DE FUNCIONES

↦ La manera de definir una funci´on con una variable independiente en Mathematica,

por ejemplo f(x)=3 sen(2x -π2

):

FS-321PRACTICA1.nb 3

Page 4: UNIVERDIDAD NACIONAL AUTONOMA DE HONDURAS

(Debug) In[5]:= f[x_] = 3 * Sin2 * x -π

2

(Debug) Out[5]= -3 Cos[2 x]

↦ El procedimiento es similar para funciones con dos variables independientes. Consideremos la

función g(x,y)= y

(x^2+y^2)^32:

(Debug) In[6]:= g[x_, y_] = y / (x^2 + y^2)^3 / 2

(Debug) Out[6]=

y

2 x2 + y23

↦Al tener funciones definidas, usted puede evaluarlas para así obtener el valor correspondiente de la variable independiente una vez evaluada.

(Debug) In[7]:= f[Pi / 2]

(Debug) Out[7]= 3

→INTEGRACIÓN

◼ Para poder calcular la antiderivada de una función, se hace uso del comando Integrate, de la siguiente manera:

(Debug) In[8]:= Integrate[f[x], x]

(Debug) Out[8]= -3

2Sin[2 x]

◼ En Mathematica tambi´en se pueden desarrollar integrales indefinidas en más de una variable.

(Debug) In[9]:= Integrate[Sqrt[x^2 - y^2], x, y]

(Debug) Out[9]=

1

62 x y x2 - y2 + x3 ArcTan

y

x2 - y2 - y3 Logx + x2 - y2

Se debe respetar el orden de integraci´on de la integral indefinida. Si el primer diferencial es respecto a x y el segundo respecto a y, el orden de integraci´on es inverso en Mathematica.

↘INTEGRALES DEFINIDAS

◼ Para poder desarrollar una integral definida, el proceso es similar al de una integral indefinida, con la salvedad de que se definen los límites de integración.

4 FS-321PRACTICA1.nb

Page 5: UNIVERDIDAD NACIONAL AUTONOMA DE HONDURAS

(Debug) In[10]:= Integrate[f[x], {x, 3, 1}]

(Debug) Out[10]=

3

2(-Sin[2] + Sin[6])

◼ El procedimiento para desarrollar integrales definidas en varias variables es similar también

(Debug) In[11]:= Integrate[Sqrt[x^2 - y^2], {x, 0, 1}, {y, -1, 1}]

(Debug) Out[11]=

1

6+ⅈ

↘INTEGRALES

◼ La idea de realizar integrales la misma que la de integrales sencillas. El uso de

(Debug) In[12]:= x ⅆx

(Debug) Out[12]=

x2

2

(Debug) In[13]:= 1

2

x ⅆx

(Debug) Out[13]=

3

2

◼ Al momento de realizar integrales múltiples se utilizael comando “integrate” por pasos.

(Debug) In[16]:= h[x_, y_, z_] := x2 * y * Sqrt[z]

(Debug) In[17]:= I1[y_, z_] = Integrate[h[x, y, z], x]

(Debug) Out[17]=

1

3x3 y z

(Debug) In[18]:= I2[z_] = Integrate[I1[y, z], y]

(Debug) Out[18]=

1

6x3 y2 z

(Debug) In[19]:= Integrate[I2[z], z]

(Debug) Out[19]=

1

9x3 y2 z3/2

◼ Resolviendola ahora pero con limites de integración por ejemplo: ∫1

7∫7

2∫0

πx y

2z ⅆxⅆy ⅆz

(Debug) In[20]:= l[x_, y_, z_] := x y2 * Sqrt[z]

FS-321PRACTICA1.nb 5

Page 6: UNIVERDIDAD NACIONAL AUTONOMA DE HONDURAS

(Debug) In[21]:= i1[y_, z_] = Integrate[l[x, y, z], {x, 0, π}]

(Debug) Out[21]=

1

2π2 y2 z

(Debug) In[22]:= i2[z_] = Integrate[i1[y, z], {y, 7, 2}]

(Debug) Out[22]= -335

6π2 z

(Debug) In[23]:= Integrate[i2[z], {z, 1, 7}]

(Debug) Out[23]= -335

9-1 + 7 7 π2

(Debug) In[24]:= N-335

9-1 + 7 7 π2

(Debug) Out[24]= -6436.39

↘OPERACIONES AVANZADAS

(Debug) In[14]:= Integrate[Exp[n * x], {x, 0, Infinity}]

(Debug) Out[14]= ConditionalExpression-1

n, Re[n] < 0

◼ La salida del programa sería una expresión condicional. Esto implica que podríamos obtener resultados en términos de variables desconocidas al aplicar un conjunto de condiciones al momento de integrar. Así, usando el ejemplo anterior: si se asume que n es un número negativo, se deben establecer las siguientes dos condiciones:⇒n es un número real.⇒n es un número menor que cero.

(Debug) In[15]:= FullSimplify[Integrate[Exp[n * x], {x, 0, Infinity}], n ϵ Reals && n < 0]

(Debug) Out[15]= -1

n

→ Ajustes de Datos y Gráficos◼ Algunas veces los datos tomados en laboratorio son pares de datos, que luego se deberan

de ajustar a un modelo teórico (práctica#4 Capacitores). Debido a esto también debemos aaprender a hacer listas de datos y gráficarlas.Usaremos datos reales utilizados para medir la longitud de onda de un sónido (frecuencia3400Hz) que obedecian la ecuación nλ=d, que posteriormente se utilizarón para medir lavelocidad del sonido.

(Debug) In[29]:= datos := {{1, 10}, {2, 19.5}, {3, 30}, {4, 40}, {5, 50.9},{6, 61.3}, {7, 71.7}, {8, 82.3}, {9, 92}, {10, 102.3}, {11, 109.2}}

◼ Para gráficar un conjunto de datos utilizamos el comando ListPlot

6 FS-321PRACTICA1.nb

Page 7: UNIVERDIDAD NACIONAL AUTONOMA DE HONDURAS

(Debug) In[30]:= A = ListPlot[datos]

(Debug) Out[30]=

2 4 6 8 10

20

40

60

80

100

◼ Para encontrar el valor de la pendiente, al cual se ajustan nuestros datos usaremos el comando FindFit.

(Debug) In[31]:= ajuste = FindFit[datos, n * λ, {λ}, n]

(Debug) Out[31]= {λ → 10.1458}

(Debug) In[33]:= Ajuste = 10.1458 * n;

(Debug) In[34]:= B = Plot[Ajuste, {n, 0, 11}]

(Debug) Out[34]=

2 4 6 8 10

20

40

60

80

100

◼ Los gráficos anteriores se mirarian mejor uno encima del otro para poder observar el comportamiento, ademas seria bueno que fueran de distintos colores para poder comparar demejor manera. Para compararlos usaremos el comando Show

FS-321PRACTICA1.nb 7

Page 8: UNIVERDIDAD NACIONAL AUTONOMA DE HONDURAS

(Debug) In[35]:= Show[A, B]

(Debug) Out[35]=

2 4 6 8 10

20

40

60

80

100

◼ Para cambiar el color de nuestro gráfico se usa el comando PlotStyle

(Debug) In[37]:= B1 = Plot[Ajuste, {n, 0, 11}, PlotStyle → Red]

(Debug) Out[37]=

2 4 6 8 10

20

40

60

80

100

(Debug) In[38]:= Show[A, B1]

(Debug) Out[38]=

2 4 6 8 10

20

40

60

80

100

8 FS-321PRACTICA1.nb

Page 9: UNIVERDIDAD NACIONAL AUTONOMA DE HONDURAS

(Debug) In[44]:= B2 = Plot[Ajuste, {n, 0, 11}, PlotStyle → Red, PlotLabel → "Ajuste experimental",PlotLegends → {"n*λ=d"}, AxesLabel → {"n", "d (cm)"}]

(Debug) Out[44]=

2 4 6 8 10n

20

40

60

80

100

d (cm)

Ajuste experimental

n*λ=d

(Debug) In[46]:= Show[A, B2, AxesLabel → {"n", "d (cm)"}, PlotLabel → "Ajuste lineal"]

(Debug) Out[46]=

2 4 6 8 10n

20

40

60

80

100

d (cm)

Ajuste lineal

n*λ=d

FS-321PRACTICA1.nb 9

Page 10: UNIVERDIDAD NACIONAL AUTONOMA DE HONDURAS

Gráficos de dos variables

(Debug) In[47]:= Plot3D[g[x, y], {x, -10, 10}, {y, -5, 5}]

(Debug) Out[47]=

⇒Vectores ◼ Un vector se expresa de manera parecida a una funci´on para mostrar de

que variables depende y sus componente se colocan entre llaves y separadaspor comas.

v1 = {2, 3};

(Debug) In[49]:= (*El vector no depende de ninguna varible*)

◼ Definimos el vector ρ y ϕ en términos de los componentes cartesianos, luego realizamosla gráfica de los campos vectoriales.

(Debug) In[51]:= ρ1 := {x, y}

◼ Para realizar la gráfica de una campo vectorial utilizamos el comando“StreamPlot” :

10 FS-321PRACTICA1.nb

Page 11: UNIVERDIDAD NACIONAL AUTONOMA DE HONDURAS

(Debug) In[52]:= StreamPlot[ρ1, {x, -5, 5}, {y, -5, 5}]

(Debug) Out[52]=

-4 -2 0 2 4

-4

-2

0

2

4

↦Vectores en 3D

(Debug) In[62]:= r1 := x

Sqrtx2 + y2 + z2,

y

Sqrtx2 + y2 + z2,

Z

Sqrtx2 + y2 + z2

FS-321PRACTICA1.nb 11

Page 12: UNIVERDIDAD NACIONAL AUTONOMA DE HONDURAS

(Debug) In[66]:= VectorPlot3D[{x, y, z}, {x, -5, 5}, {y, -5, 5}, {z, -5, 5}]

(Debug) Out[66]=

-5

0

5

-5

0

5

-5

0

5

◼ Para generar superficies equipotenciales en electromagnetismo, utilizamos las superficies de contorno. El formato del argumento es muy similar al de Plot3D pero con otro comando:

(Debug) In[82]:= ContourPlot[g[x, y], {x, -10, 10}, {y, -5, 5}]

(Debug) Out[82]=

-10 -5 0 5 10

-4

-2

0

2

4

12 FS-321PRACTICA1.nb

Page 13: UNIVERDIDAD NACIONAL AUTONOMA DE HONDURAS

OPERACIONES CON VECTORES

◼ Adicionalmente, podemos realizar todas las operaciones que ya conocemos sobre estos vectores. Definamos dos vectores en coordenadas cartesianas de nuevo:

(Debug) In[67]:= v3 = {2, 3, 4};

(Debug) In[68]:= v4 = {5, 2, 6};

(Debug) In[69]:= v3 + v4

(Debug) Out[69]= {7, 5, 10}

(Debug) In[70]:= v3 - v4

(Debug) Out[70]= {-3, 1, -2}

(Debug) In[71]:= productopunto = Dot[v3, v4]

(Debug) Out[71]= 40

(Debug) In[72]:= productocruz = Cross[v3, v4]

(Debug) Out[72]= {10, 8, -11}

◼ Para obtener la divergencia utilizamos el comando Div, el primer argumentoes el vector y el segundo son los nombres de las coordenadas.

(Debug) In[73]:= v6[x_, y_, z_] := {Sin[x], Exp[y / 2], z}

(Debug) In[74]:= Div[v6[x, y, z], {x, y, z}]

(Debug) Out[74]= 1 +ⅇy/2

2+ Cos[x]

(Debug) In[75]:= v7[r_, θ_, ϕ_] := 4 * r2, Sin[θ] * Cos[ϕ], -2 * Cos[ϕ]

(Debug) In[76]:= Div[v7[r, θ, ϕ], {r, θ, ϕ}, "Spherical"]

(Debug) Out[76]= 8 r +4 r2 + Cos[θ] Cos[ϕ]

r+

Csc[θ] 4 r2 Sin[θ] + Cos[θ] Cos[ϕ] Sin[θ] + 2 Sin[ϕ]

r

◼ De manera similar podemos obtener el rotacional utilizando el comandoCurl:

(Debug) In[78]:= Curl[v6[x, y, z], {x, y, z}, "Cartesian"]

(Debug) Out[78]= {0, 0, 0}

(Debug) In[79]:= Curl[v7[r, θ, ϕ], {r, θ, ϕ}, "Spherical"]

(Debug) Out[79]= -Csc[θ] (2 Cos[θ] Cos[ϕ] - Sin[θ] Sin[ϕ])

r,2 Cos[ϕ]

r,Cos[ϕ] Sin[θ]

r

◼ De la misma manera podemos obtener el gradiente y el laplaciano:

FS-321PRACTICA1.nb 13

Page 14: UNIVERDIDAD NACIONAL AUTONOMA DE HONDURAS

(Debug) In[80]:= Grad[v6[x, y, z], {x, y, z}, "Cartesian"]

(Debug) Out[80]= {Cos[x], 0, 0}, 0,ⅇy/2

2, 0, {0, 0, 1}

(Debug) In[81]:= Laplacian[v6[x, y, z], {x, y, z}, "Cartesian"]

(Debug) Out[81]= -Sin[x],ⅇy/2

4, 0

14 FS-321PRACTICA1.nb