Deducción de la Chicharronera

El día de hoy, como ni tarea tengo(y si tengo no me acuerdo) y me da flojera escribir otra cosa mucho más interesante, voy a escribir por aquí el modo de obtener la fórmula para resolver ecuaciones de segundo grado(huy, yo y mis grandes demostraciones matemáticas), conocida en el ámbiente académico bajo el sobrenombre de La Chicharronera. Nombre que no supe de donde venía y nadie sabía su origen hasta que le pregunté a Don César Rincón y me dijo:

Le dicen la chicharronera porque hasta la señora de los chicharrones se la sabe.

Ojalá lo anterior aplicara en nuestros tiempos, ahora ni sumar… en fin.

La deduccion de la fórmula a continuación.

Tomemos la ecuación general de segundo grado

Ax^2+Bx+C=0

de donde

Ax^2+Bx=-C

Y dividiendo entre A

x^2+\dfrac{B}{A}x=-\dfrac{C}{A}

Ahora completamos el cuadrado del lado izquierdo, recordemos que para ello dividimos entre 2 el coeficiente de x y elevamos al cuadrado.

x^2+\dfrac{B}{A}x+\left(\dfrac{B}{2A}\right)^2=-\dfrac{C}{A}+\left(\dfrac{B}{2A}\right)^2

Entonces del lado izquierdo de la igualdad tenemos un trinomio cuadrado perfecto, por lo que la ecuacion anterior queda como sigue

\left(x+\dfrac{B}{2A}\right)^2=-\dfrac{C}{A}+\left(\dfrac{B}{2A}\right)^2

Y quitando el cuadrado del lado izquierdo

x+\dfrac{B}{2A}=\pm \sqrt{-\dfrac{C}{A}+\left(\dfrac{B}{2A}\right)^2}

Y despejando a x

x=\pm \sqrt{-\dfrac{C}{A}+\left(\dfrac{B}{2A}\right)^2}-\dfrac{B}{2A}

Ahora, resolvemos la suma que está dentro de la raíz

x=\pm \sqrt{\dfrac{-4AC+B^2}{4A^2}}-\dfrac{B}{2A}

Y tomando la raíz del denominador del primer término

x=\pm \dfrac{\sqrt{-4AC+B^2}}{2A}-\dfrac{B}{2A}

Haciendo la diferencia y ordenando los términos dentro de la raíz

x=\dfrac{-B \pm \sqrt{B^2-4AC}}{2A}

De algún lado tenía que salir, ¿no?. :P

Saludos.

Happy 129 birthday!

Today is the 129 birthday of Albert Einstein(Don Beto for friends). A German physicist who won the Nobel Prize for explain the photoelectric effect. But it’s better known because his theory of relativity and famous formula E = mc^2.

Einstein Tongue

Maybe someday I can make Don Beto’s dream come true: Develop an Unified Field Theory.

Happy birthday Albert.

Great spirits have always encountered violent opposition from mediocre minds. The mediocre mind is incapable of understanding the man who refuses to bow blindly to conventional prejudices and chooses instead to express his opinions courageously and honestly.

Einstein Archives Online.

Einstein Image and Impact. 

3.14

Today is the \pi day. In american date form today is 3/14, a poor approximation to \pi.

Some ways to calculate \pi are:

  • Leibniz’s series: \sum_{n=0}^{\infty }{{{\left(-1\right)^{n}}\over{2\,n+1}}}=\frac{1}{1} - \frac{1}{3} + \frac{1}{5} - \frac{1}{7} + \frac{1}{9} - \cdots = \frac{\pi}{4}
  • Euler’s series: \sum_{n=0}^{\infty }\cfrac{2^n n!^2}{(2n + 1)!}=1 + \frac{1}{3} + \frac{1 \cdot 2}{3 \cdot 5} + \frac{1 \cdot 2 \cdot 3}{3 \cdot 5 \cdot 7} + \cdots = \frac{\pi}{2}
  • Wallis’ product: \prod_{n=1}^{\infty }{{{4\,n^2}\over{4\,n^2-1}}}=\frac{2}{1} \cdot \frac{2}{3} \cdot \frac{4}{3} \cdot \frac{4}{5} \cdot \frac{6}{5} \cdot \frac{6}{7} \cdot \frac{8}{7} \cdot \frac{8}{9} \cdots = \frac{\pi}{2}
  • Easiest way :P : atan(1)=\frac{\pi}{4}

Have fun trying to generate a lot of \pi digits and burn your CPU!

FisCom 01

En mi primera clase de Física Computacional se supone nos dieron una intro super express de lo que es un sistema unix-like y FORTRAN, me aburrí la mitad como la mayoría puede suponer. Aunque la parte de FORTRAN si me hacía bastante falta, no sabía una pizca. Nos dejaron la primera tarea, bastante sencilla por cierto. Sólo 3 problemas:

  • Realizar un programa que calcule el factorial de un número.
  • Escribir un programa que calcule la suma de los primeros N naturales.
  • Calcular los primeros 100 términos de la sucesión de Fibonacci.

Sencilla la tarea, cualquier muchacho con un rato programando puede hacerlos. El detalle que me pareció interesante es el tamaño de los ejecutables generados por distintos compiladores. He aquí el resultado:

  1. Realizar un programa que calcule el factorial de un número.
    • Compilando con g77:
      g77 -o factorial.g77 factorial.f
    • Compilando con gfortran(g95):
      g95 -o factorial.g95 factorial.f
    • Compilando con ifc(Intel Fortran Compiler):
      ifort -ofactorial.ifc factorial.f
  2. La tabla de tamaños de archivo y tiempo de ejecución es la siguiente:

    Compilador Tamaño de Ejecutable(KB) Tiempo de Ejecución(s)
    g77 8 0.037
    g95 8 0.095
    ifort 476 0.065

    Y el código es:

    data N/5/      integer i
    real fact      fact=1
    do i=1,N
        fact=fact*i
    end do
    print *,'El factorial de',N,'es',fact
    END

  3. Escribir un programa que calcule la suma de los primeros N naturales.
    • Compilando con g77:
      g77 -o nnaturales.g77 nnaturales.f
    • Compilando con gfortran(g95):
      g95 -o nnaturales.g95 nnaturales.f
    • Compilando con ifc(Intel Fortran Compiler):
      ifort -onnaturales.ifc nnaturales.f
  4. La tabla de tamaños de archivo y tiempo de ejecución es la siguiente:

    Compilador Tamaño de Ejecutable(KB) Tiempo de Ejecución(s)
    g77 8 0.051
    g95 8 0.101
    ifort 476 0.087

    Y el código es:

    data N/100/      integer i
    real sum
    sum=0
    do i=1,N
        sum=sum+i
    end do
    print *,'La suma de los primeros',N,'naturales es',sum
    END

  5. Calcular los primeros 100 términos de la sucesión de Fibonacci.
    • Compilando con g77:
      g77 -o fibonacci.g77 fibonacci.f
    • Compilando con gfortran(g95):
      g95 -o fibonacci.g95 fibonacci.f
    • Compilando con ifc(Intel Fortran Compiler):
      ifort -ofibonacci.ifc fibonacci.f
  6. La tabla de tamaños de archivo y tiempo de ejecución es la siguiente:

    Compilador Tamaño de Ejecutable(KB) Tiempo de Ejecución(s)
    g77 12 0.033
    g95 12 0.066
    ifort 476 0.338

    Y el código es:

    data N/100/      integer i
    real a0,a1,tmp      
    i = 0
    a0 = 0
    a1 = 1
    print *,'El termino',i,'de la sucesion de fibonacci es',a0
    i = i+1
    print *,'El termino',i,'de la sucesion de fibonacci es',a1
    i = i+1
    do i=2,N
        print *,'El termino',i,'de la sucesion de fibonacci es',a0+a1
        tmp = a0
        a0 = a1
        a1 = tmp+a1
    end do
    END

¿Opioniones al respecto?.

Seguiré posteando códigos y curiosidades, saludos a todos.

Quema de Libros

Ayudante: …hay libros que no hacen distinción entre función recíproca y función inversa…

G: ¿Apoco hay libros que no hacen distinción en eso?. ¡Deberían quemarlos!.

DW: Seee, ha de ser el Spivak. 

G & DW: lol