lunes, 24 de julio de 2017

CÁLCULO PAR MECÁNICO(PAR MOTOR)

Calculando el par mecánico:

Dada la ecuación de calculo de Potencia(motor):

$P_{motor}=M_{motor}*w_{motor}$
$P_{motor}=M_{motor}*\frac{2\pi}{60}*n_{motor}$
$M_{motor}[Nm]=\frac{60}{2\pi}*\frac{P_{motor[watts]}}{n[rpm]} $

donde:

$P$ es la potencia expresado en watts
$M$ es el par motor expresado en Nm
$w$ es la velocidad angular expresado en rad/seg
$n$ son las revoluciones por minuto expresado en rpm

Conversión de unidades(uso práctico)

1 hp = 746 watts
1 Nm = 10.197 kgf cm

Ejercicio práctico:
Un motor eléctrico con desempeño de potencia 3 Hp desarrolla una velocidad de 1430 rpm, acoplado a un reductor con relación de reducción de 30(i):1, calcular el par mecánico resultante.

Desarrollo:

$P=2238$ watts(3 Hp)
$n_{motor}=1430$ rpm
$i=30$ (relación de reducción del reductor)
$n=\frac{n_{motor}}{i}$
$n=\frac{1430}{30}=47.66$ rpm
$M[Nm]=\frac{60}{2\pi}*\frac{P[watts]}{n[rpm]}$
$M=\frac{60}{2\pi}*\frac{2238 watts}{47.66 rpm}$
$M=448.412$ Nm
$M=4572.46$ kgf cm

Calcular la capacidad de alzada, si la salida del reductor esta sujeto a un tambor de diámetro 20 cm, que enrolla un cable de acero(despreciar fuerzas de fricción y peso del cable).

Dada la ecuación par de fuerza:

$M=F*r$

Donde:

$M$ es el par motor expresado en kgf cm
$F$ es la fuerza expresado en kgf
$r$ es la distancia donde se aplica la fuerza

$F=\frac{M}{r}$
$F=\frac{4572.46 kgf \cancel{cm}}{10 \cancel{cm}}$
$F=457.25 kgf$

Conclusión: La capacidad de alzada es de 457.25 kgf

sábado, 17 de diciembre de 2016

Principios y aplicación de los electroimanes

ELECTROMAGNETISMO

Rama de la física que estudia las relaciones recíprocas entre el cuerpo y la corriente eléctrica.

IMANES

Los imanes son materiales que atraen el hierro, al níquel o al cobalto, y a algunas de sus aleaciones. Tipos: Los hay naturales y artificiales (Temporales y permanentes). Se denomina campo magnético de un imán a la zona en la que se manifiestan las fuerzas de atracción o repulsión de dicho imán sobre los cuerpos.

ELECTROIMANES

Las cargas eléctricas en movimiento originan en sus proximidades campos magnéticos.

SOLENOIDE

Un Solenoide consiste en una bobina de hilo conductor recubierto de barniz u otro material aislante. Cada vuelta se denomina espira. Cuando la corriente pasa por el conductor, el solenoide se comporta como un imán, atrayendo al hierro, pero deja de hacerlo al cortar la corriente. La intensidad del campo magnético creado depende de la intensidad de corriente eléctrica que atraviesa el conductor y del número de espiras de a bobina. Cuando varía el campo magnético que atraviesa un conductor, se induce una f.e.m. en dicho circuito, que es proporcional a la velocidad con que varía dicho flujo. (Ley de Faraday)

ELECTROIMANES

Tanto los cuerpos ferromagnéticos como los conductores recorridos por corrientes, que están sumergidos en un campo magnético, quedan sometidos a la acción de fuerzas mecánicas que se denominan fuerzas electromagnéticas ( en realidad, en el caso de cuerpos ferromagnéticos, estas fuerzas son solo de naturaleza magnética).

como caso más interesante, en la práctica, está la fuerza electromagnética de atracción de la armadura de un electroimán. A esta fuerza se la conoce por el nombre de fuerza portante, que aparece, además de en los electroimanes, propiamente dicho, también en las armaduras de los relés y en otros dispositivos de construcción industrial (electrónica, electrotecnia, telecomunicación, etc.).

Supongamos que tenemos presentes varios cuerpos ferromagnéticos como se muestra en la siguiente figura:

Coordenada cartesiana
durante un tiempo dt, uno de los cuerpos, por la acción de la fuerza portante, ha sufrido un desplazamiento dx, en la dirección de esta fuerza, mientras que los otros cuerpos no han sufrido variación en el espacio. Dutante el tiempo dt, las fuentes de energía eléctrica han sufrido una variación nergética:

CONSTRUCCIÓN DE UN ELECTROIMÁN

Para la construcción de un electroimán se puede seguir el procedimiento sistematizado, relacionando leyes físicas, teorías matemáticas y desarrollo tecnológico.

ANTECEDENTES

Los antecedentes para comprender: refleción sobre asignatura de Física general en los temas como ser mecánica clásica(Estática de la partícula, Dinámica de la partícula incluyendo trabajo mecánico), electricidad y magnetismo(Electrostática, Magnetismo y Electrodinámica)

MARCO TEÓRICO

En la búsqueda de explicar los fenómenos naturales a través de la historia, fue encontrando elementos fundamentales de la ectrostática; por ejemplo, el griego Tales de Mileto (ac. 630 - 545 ac.), electrificaba temporalmente el ámbar con frotamiento; Coulomb en 1785 publicó con un vocabulario técnico científico un ensayo de delectricidad y magnetismo. Michael Faraday (1791 - 1867) inglés establecido una representación gráfica con líneas que muestran la dirección y sentido del campo eléctrico que produce una carga eléctrica puntual en reposo. El magnetismo se remonta tanto a la cultura china, como a la griega con minerales naturales de la magnetita, que atrae cuerpos férricos y el uso de la brújula. Hasta la segunda década del siglo XIX se consideraba que no existía relación entre la electricidad y el magnetismo. En 1820 el danés Hans Christian Oested observó que, la aguja de una brújula perturbaba su orientación cuando se aproximaba a un alambre conductor por cuyo interior circulaba corriente eléctrica. Posteriormente, el inglés Michael Faraday en 1831 mostró que, al mover rítmicamente una barra de imán permanente en el interior del cilindro hueco que forman las N vueltas de alambre enrollado y conectado en sus extremos a un instrumento de medición (de la corriente eléctrica), en éste se detectó la presencia de una corriente eléctrica. El frances Jean - Beptiste Biot (1774 - 1862) y Félix Sarvat (1791 - 1841), experimentalmente identificaron y cuantificaron el campo magnético B, en el espacio libre que circunda a un conductor por el que circula una corriente eléctrica, muy semejante éste al del campomagnético que rodea a un imán permanente.

FUNDAMENTO TEÓRICO

El medio (aire, vacío, material...) que rodea a un conductor por el que se mueven cargas eléctricas, así como en algunos de los materiales que están en contacto directo con el conductor, adquieren características magnéticas temporales cuya magnitud depende de su permeabilidad magnética $ (\mu)$. Generalmente, el medio circundante de alrededor de un conductor eléctrico es el espacio libre o vacío, en este medio el valor de la constante de permeabilidad magnética es $\mu_0 = 4\pi 10^{-7}$ tesla metro/amper $(\frac{T*m}{A})$. Cuando el (material) hierro dulce está en la proximidad del medio circundante de un conductor, aquel se magnetiza temporalmente y su permeabilidad relativa $(\mu_r)$ es del orden de 4000, entonces, la permeabilidad magnética del material altamente enriquecido con hierro es: $\mu=\mu_r*\mu_0=4000*4\pi*10^{-7}=5.0265*10^{-3}\frac{T*m}{A}$. Con la ley de Biot-Savart se caracteriza la densidad del campo magnético vectorial (B) que se propicia en el medio (con su correspondiente constante de permeabilidad magnética) que circunda a un conductor por el que se mueve una carga eléctrica (I). La caracterización de B para cualquier punto del medio que se identifica con la letra p, se inicia considerando que un elemento diferencial de carga se mueve en la dirección "ds" del conductor, y aquel se relaciona con el punto p, mediante un vector de posición ($r_{dsp}$) que va del elemento "ds" hasta el punto p, si el medio es el vacio, a éste le corresponde la constante de permeabilidad magnética $\mu_0$ y la ley de Biot-Savart matemáticamente se expresa con la diferencial de la densidad del campo magnético vactorial "dB" con el siguiente producto cruz vectorial. $$dB={\frac{\mu_0*I}{4*\pi(r_{dsP})^3}ds*x*r_{dsP}}$$ Para identificar tanto los elementos físicos como geométricos, y aplicar la ley de Biot-Savart: Primeramente, con la intención de conceptualizar la ley de Biot-Savart, se analizará un conductor delgado de longitud casi "infinita" que está en el espacio libre representado con un $\mu_0$, por el que circula una corriente I. Por ejemplo si el conductor pende, desde una altura infinita hasta llegar al suelo, "tensado en sus dos extremos" figura1, además se supondrá que existe un flujo de carga eléctrica que inicia en el suela y va hacia arriba, con estos elementos será posible prefigurar la ubicación del producto cruz vectorial, en ésta se afirma que: el vector dB a través de interpretar

Biot - Savart

lunes, 28 de marzo de 2016

TERMODINÁMICA - CONCEPTOS Y DEFINICIONES

Iniciaremos el estudio de la termodinámica con un resúmen de conceptos básicos de suma importancia en toda materia de la ingeniería.

Conceptos básicos:


Termodinámica.- Es la ciencia que trata del calor "Termo" y del trabajo "Dinámica"; ó es la ciencia de la energía y la entropía. Otra definición: ciencia que trata del calor y del trabajo y de aquellas propiedades de las substancias que guardan alguna relación con calor y trabajo.

Sistema termodinámico.- Es una cantidad de masa e identidad fija, la cual nos sirve para nuestro estudio; todo lo que esta fuera del sistema es e medio exterior, y el sistema está separado de este por sus límites ó fronteras dichos limites pueden ser movibles ó fijos.

Sistema termodinámico cerrado ó aislado.- Es aquel que no influye de ninguna manera el medio exterior. No intercambia masa por lo tanto la masa del sistema es constante.

Sistema termodinámico abierto.- Es aquel en el que si influye el medio exterior, en este caso si existe un intercambio de masa por lo tanto esta puede aumentar, disminuir y cambiarse.

Volumen de control (v.c).- Es el volumen definido en el espacio en el que uno se interesa para efectuar un estudio ó análisis particular. La superficie de este volúmen de control se llama "superficie de control" y es siempre una superficie cerrada.

Proceso de cuasiequilibrio ó cuasiestático.- Es aquel en el cual la desviación respecto del equilibrio termodinámico es infinitesimal, y todos los estados por los que pasa un sistema durante un proceso de cuasiequilibrio puede considerarse en equilibrio.

Volúmen específico.- (v) El volumen específico  de una sustancia se define como su volumen(V) por unidad de masa(m). La densidad ($\rho$) es el reciproco del volumen específico.

$v=\frac{V}{m}$ ; $\rho=\frac{m}{V}$ ; $v=\frac{1}{\rho}$. Unidades en $[\frac{m^{3}}{Kg}]$.

Presión(P).- Es la fuerza (F) por unidad de area (A)

$P=\frac{dF}{dA}$ ; $P=\frac{F}{A}[\frac{Kgf}{cm^{2}}]$


Presión manométrica ó efectiva (Pe) ó (Pm).- Es igual a la presión absoluta (PA) menos la presión atmosférica (Patm)


\[P_{m}=PA-P_{atm}; [\frac{Kgf}{cm^2}]\]

Presión atmosférica normal = 1,0332 $\frac{Kgf}{cm^{2}}$ = 760 mmHg = 1atm.
\[v=\frac{V}{m}\]

Propiedades y estado de una substancia.-

Si consideramos una masa dada de agua, reconocemos que tal agua puede existir en varias formas. Si es líquida inicialmente, se vuelve vapor al calentarla o se solidifica si se enfría.

O sea, que hablamos de diferentes fases de una substancia. Una fase está definida como una cantidad de materia homogénea en todas sus partes. Cuando está presente más de una fase, las fases están separadas, una de otra, por los límites de fase. En cada fase la substancia puede existir a varias presiones y temperaturas, o , usando el término termodinámico, en varios estados.

El estado puede identificarse o describirse por ciertas propiedades macroscópicas observables; estas propiedades termodinámicas pueden dividirse en dos clases generales: intensivas y extensivas 

Procesos y ciclos.-

Siempre que una o más de las propiedades de un sistema cambien, diremos que ha ocurrido un cambio de estado.

Estado termodinámico


Un estado termodinámico es un conjunto de los valores que toman las propiedades de un sistema termodinámico que deben ser especificadas para reproducir el sistema. Los parámetros individuales son conocidos como variables de estado, parámetros de estado o variables termodinámicas. Todo estado termodinámico esta descrito por variables de estado(conjunto de datos que identifican al estado termodinámico de naturaleza térmica y mecánica).
Las variables medibles fundamentales son:
  • Presión(p).-
  • Temperatura(T)
  • Volúmen(V)
Coordenada cartesiana
Si consideramos un gráfico en el cual usando el gráfico anterior, tenemos un estado 1 y un estado 2, Decimos entonces: "Todo proceso termodinámico implica un estado inicial el cual llamaremos en este caso estado 1 y concluye en el estado final estado 2, en el cual el proceso termodinámico queda representada por linea de trazos( realizamos linea de trazo ya que desconocemos totalmente que ocurre en el transcurso "Proceso Real")".

Entonces nuestra gráfica representando el proceso es el siguiente:

Proceso representado en coordenada cartesiana
Mediante el gráfico nos damos cuenta que tanto la presión como la temperatura aumentan, Del estado 1 se efectúa un proceso en el cual es un proceso "Real" hacia el estado 2; decimos que el proceso esta en equilibro tanto en el estado 1 y 2, estando en desequilibrio en el transcurso del proceso.

Decimos que cuando se representa un proceso Real, no significa que en el transcurso del proceso no existan presiones y temperaturas, en realidad si existe y todo el tiempo. solo que no podemos cuantificarlos cuando el sistema esta en desequilibrio.
También decimos que la trayectoria del proceso termodinámico es desconocida(No sabemos por donde se efectua, en el gráfico lo representamos con linea recta pero en relidad la desconocemos si es así o nó). Comparandola con una historia, solo sabemos que nuestra historia comienza en 1 y termina en 2.

¿ Como transcurre el proceso ? ¿ como saber ?


Este es uno de los problemas con el cual se encuentra la termodinámica.
Necesitamos buscar una solución aunque sea inventada.
Desde esta perspectiva la termodinámica invento la solución, En vez de tener un proceso real, se realizo tener un proceso ideal, teniendo así una trayectoria conocida, conociendo lo datos de todos los posibles estados termodinámicos intermedios( infinitos puntos ).

Llamamos la trayectoria conocida, como proceso Quasi-Equilibrio, Quiere decir que el desequilibrio que va provocando la transformación, va siendo infinitesimal. Estamos creando un modelo del proceso termodinámico.

Ejercicio

Enunciado:

En un aparato de cilindro y pistón hay 10 litros de agua a una presión de 1,5 $\frac{Kgf}{cm^2}$, el 80% del volúmen está ocupado por vapor y el resto de líquido, determine la temperatura y el título.

Solución:

Datos:

p = 1,5 $\frac{kgf}{cm^2} \approx 1,461 \frac{kgf}{cm^2}$

con la presión absoluta p=1,461.Nos dirigimos a la tabla 241(Propiedades del vapor de agua saturado) y tabulamos los siguientes datos:

$v_{ls}=0,001051 \frac{m^3}{kg}$
$v_{vss}=1,210 \frac{m^3}{Kg}$
$T_s=110^{\circ}C$

La temperatura del sistema es $110^{\circ}C$

El sistema contiene 10 litros de agua:

$V=10 \cancel{L}*\frac{1m^3}{1000 \cancel{L}}=0,01m^3$

Entonces la proporción en volúmen de vapor saturado(al 80 % según enunciado) como líquido saturado(al 20%) sería el siguiente:

$V_{ls}=0,002 m^3$
$V_{vs}=0,008 m^3$

Dado que el volúmen específico se define como:

$v=\frac{V}{m}$

despejando tenemos entonces:

$v_{ls}=\frac{V_{ls}}{m_{ls}}$
$v_{vss}=\frac{V_{vss}}{m_{vss}}$

Despejando las anteriores ecuaciones obtenemos las masas tanto para líquido saturado como para vapor saturado seco:

$m_{ls}=\frac{V_{ls}}{v_{ls}}$
$m_{vss}=\frac{V_{vss}}{v_{vss}}$

sustituyendo:

$m_{ls}=\frac{0,002\cancel{m^3}}{0,001051\frac{\cancel{m^3}}{kg}} = 1,90295 kg$
$m_{vss}=\frac{0,008\cancel{m^3}}{1,21\frac{\cancel{m^3}}{kg}} = 0,006612 kg$

masa total del sistema:

$m_{total}=m_{ls}+m_{vss} = 1,90295 kg + 0,006612 kg = 1,90956 kg$

calculamos el título(proporcion de vapor en el sistema):

$x = \frac{m_{vss}}{m_{total}} = \frac{0,006612\cancel{kg}}{1,90956\cancel{kg}} = 0,003463$

El título es 0,003463

Enunciado complementario:

El contenido del aparato se enfría muy lentamente hasta una temperatura de $30^{\circ}C$, Determinar en esta última condición: la presión, el título y si es que aún hay vapor, determinar el título.

Solución:

Dado que el sistema nuevamente esta en equilibrio y no hay fuerzas adicionales a las anteriores, decimos que el proceso es isobárico(se mantiene la misma presión usada anteriormente), p = $1,5\frac{kgf}{cm^2}$

Del enunciado tenemos:
$T_2 = 30^{\circ}C$

De tabla tabulamos los siguientes datos:

$v_{ls}=0,001005\frac{m^3}{kg}$
$v_{vss}=32,94\frac{m^3}{kg}$

Dado que la temperatura $T_2$ es de $30^{\circ}C$ el cual esta por muy debajo de la temperatura de saturación($110^{\circ}C$) correspondiente a la presión de saturación de $p=1,5\frac{kgf}{cm^2}$, concluimos que es un líquido subenfriado y carece de título(no se encuentra en el intervalo cerrado por la campana en la parte gráfica[Diagrama p-v]).

Diagrama p-T

No hay vapor, dado que es un líquido subenfriado(temperatura menor a la de saturación, ver parte gráfica[diagrama p-t]).

Diagrama p-T

domingo, 13 de marzo de 2016

Programación en la ingeniería


Programación en Ingeniería


Nuestro primer ejemplo en programación de computadoras involucra la evaluación de formulas matemáticas. Escribiremos y ejecutaremos programas en Python, trabajando con variables, como realizar cálculos de funciones matemáticas como ser $e^x$ y $seno(x)$, y usar Python para calculos interactivos.
Asumimos que tienes conocimientos básicos con el uso de computadoras como ser manejo de archivos y carpetas.
Nuestro primer programa: Una formula
La Linea de comando o shell, que la mayoria de los sistemas pone a nuestro alcance es una poderosa y transparente interface entre el usuario y lo interno de una computadora. en sistemas Windows, GNU/Linux, Unix, IOS entre otros. En el momento de de instalar Python( en el sistema Windows ), tambien se instala una aplicación llamada IDLE, el cual es un ambiente de desarrollo integrado, parecido al interprete de comandos, pero mas enriquecido para hacer uso de Python. Abrimos la aplicación IDLE y nos mostrara la siguiente ventana:

Situandonos en el sector del simbolo >>>( conocido como prompt: carácter o conjunto de caracteres que se muestran en la línea de comandos para indicar que está a la espera de ordenes), podemos ejecutar instrucciones Python.

Idle python 3

Un simple ejercicio podria ser el siguiente:

>>> from math import *
>>> w = 90
>>> sin(w)

0.8939966636005579 #resultado

La primera línea nos permite tener acceso a sin, cos, etc. La siguiente línea define una variable w en el cual asignamos el valor de 90, que es usada en computacion como lineas de procedimientos. las instrucciones ingresadas por nosotros estan descritas luego del simbolo ">>>", los resultados sin el simbolo.

Hola Mundo estilo matemático con introducción de dato


Una forma no muy peculiar de un Hola mundo a nuestro estilo, seria el siguiente:

Para efectuar este ejercicio, debemos crear un archivo llamado HolaMundo.py, con el siguiente contenido (obviar la numeración de la parte izquierda):
import sys, math
r = float(sys.argv[1])
s = math.sin(r)
print(" Hola Mundo, el resultado es: " + str(s))

Para ejecutar nuestro ejemplo, tendremos que ejecutar la consola de comandos de nuestro sistema, luego ingresar en la carpeta donde esta situado nuestro archivo y ejecutar la siguiente instrucción:

python HolaMundo.py 90

Obteniendo como resultado: Hola mundo, el resultado es: 0.893996663601

Explicación del programa:

import sys, math
La primera parte del código realiza una importación de las herramientas a utilizar, Python dispone de muchas librerias(Herramientas) estandares para realizar otro tipo de acciones.

r = float(sys.argv[1])
r es una variable, en el cual se otorga una variable del tipo float que es otorgada mediante el argumento en la posición 1, la libreria sys nos permite entre otras cosas, poder hacer capturas de los argumentos pasados mediante ejecución de instrucciones por consola

s = math.sin(r)
asigna a la variable s, el cual contiene el resultado de la expresion seno de el valor de r.

print(" Hola Mundo, el resultado es: " + str(s)), imprime la linea del mensaje. str(s), realiza la conversion de la variable de tipo float al tipo de variable string, ya que print, solo permite realizar impresiones en pantalla del tipo string.

Nuestra primera formula sera enfocado al movimiento vertical de una esfera en el aire. Por la segunda ley de Newton el modelo matemático para el movimiento de un balón y encontrar su posición vertical (variable y), varia con el tiempo(variable t), acordamos la siguiente formula:
$$y(t)=v_0t-\frac{1}{2}gt^2$$ Donde $v_0$ es la velocidad inicial del balon, g es la aceleración de la gravedad, y t es el tiempo. Obeservamos que el eje y es tomado como el inicio del balón, entonces y=0 cuando t=0.
Para obtener el tiempo en que toma el balón en ir y volver, tenemos que considerer y=0, podemos dar solucion con la formula cuando y=0:
$$V_0t-\frac{1}{2}gt^2=t(v_0-\frac{1}{2}gt)=0 : t=0 o t=2v_0/g$$
El ballon retorna despues de $2frac{v_0,g}$ segundos, ademas que una restriccion interesante para t e[0, 2vo/g] Usando
Evaluación de la siguiente expresión aritmética: $$y=5*0.6-\frac{1}{2}*9.81*0.6^2$$

Teniendo instalado Python de manera correcta, podemos hacer uso de la consola interactiva para ir probando algunas operaciones, presionamos las teclas Windows + r, escribimos cmd y presionamos enter, enseguida nos aparecera una ventana en modo consola, escribimos python y presionamos enter, ya estamos listos para realizar la práctica.

Considerando que en Python la notación de exponenciación se lo realiza con doble asterisco "**".
print(5*0.6-0.5*9.81*0.6**2)


Resultado(Correcto): 1.2342
print(5*0.6-(1/2)*9.81*0.6**2)

Resultado(Incorrecto): 3.0

Ejecución de un programa

Guardamos el texto anterior:

print 5*0.6-0.5*9.81*0.6**2

en el archivo primerPrograma.py

Para ejecutarlo seria del siguiente modo: python primerPrograma.py

Usando variables


La mayoria de los lenguajes de programación incluyendo Python hacen uso de variables similares a las empleadas en matemáticas.
Cuando evaluamos la enterior función $y(t)$, lo hicimos con valores fijos; Realizar cambios consecutivos para realizar diferentes cálculos sería un tarea tediosa y a la vez expuesta a errores, entonces podriamos facilitar el cálculo para otros parámetros haciendo el uso de variables. Para este acometido podemos hacer uso de las variables $v_0$(forma declarativa v0), $g$(forma declarativa g), $t$(forma declarativa t)y $y$(forma declarativa y)inicializada formalmente con la expresión empleando las tres variables anteriores.
Como alternativa usando variables en nuestro programa seria:
 v0 = 5
 g = 9.81
 t = 0.6
 y = v0*t - 0.5*g*t**2
 print(y)

Tenemos que tener consideración que en Python los nombres de variables pueden contener cualquier letra ya sea en minuscula o mayuscula, cualquier numero del 0 al 9 e incluso underscore(_), la primera letra de toda variable no puede ser un número. Python, realiza una distincion referente a las minusculas y mayusculas; es por esto que la variable x es diferente a la variable X.
Como ejemplo de variables alternativas en el caso anterior tenemos:

 velocidad_inicial = 5
 aceleracioDeLaGravedad = 9.81
 TIEMPO = 0.6
 PosicionVerticalDelBalon = velocidad_inicial*TIEMPO - 0.5*aceleracionDeLaGravedad*TIEMPO**2
 print(PosicionVerticalDelBalon)

El uso de variables con nombres mas descriptivos, dara simplicidad a las expresiones matemáticas, a medida que estas expresiones van creciendo podriamos presentar problemas de legibilidad, entonces podemos hacer un recorte en el código utilizando barra invertida (\).

Uso indiscriminado en nombres de variables

Ciertamente estamos obligados a respetar las posibles nomenclaturas para nuestras variables, como se aclaro anteriormente(La primera letra de las variables no pueden ser números y solo pueden ser letras o underscore).

Además de estas restricciones, Python hace uso de ciertas palabras reservadas. Estas palabras reservadas no pueden ser usadas como nombres de variables, entre ellas tenemos: and , as , assert , break , class , continue , def , del , elif , else , except , False , finally , for , from , global , if , import , in , is , lambda , None , nonlocal , not , or , pass , raise , return , True , try , with , while , y yield
Tomemos en cuenta que cualquier uso de estos nombres de variables nos darian un error en programación(obviamente en Python). podriamos considerar el uso de estas variables, aumentando un underscore al final del nombre, pero esa práctica no es aconsejable por diversos motivos, por ahora nos abstendremos de usarlos en nuestros programas.

Comentarios

A lo largo de las declaraciones de un programa, nos resultaria de gran utilidad acompañar algunos comentarios, ya sean aclarativos o de indicaciones, Los comentarios en Python inician con el caracter $#$, y todos los demas caracteres en la linea serán ignorados cuando el programa se ejecute. un ejemplo aclaratorio de comentarios es el siguiente:

 v0 = 5 # velocidad inicial
 g = 9.81 # aceleracion de la gravedad
 t = 0.6 # tiempo
 y = v0*t - 0.5*g*t**2 # posicion vertical
 print(y) # imprimimos el resultado

Dando formato a números y textos

En vez de tener un número como resultado de un cálculo, podriamos tener algo mas informativo. en este caso una forma mas explicativa seria:
 Con t=0.6 s, la altura del balon es de 1.23 m.


Vemos que esta forma es mas entendible para la mayoria de los usuarios, en python tendriamos que realizarlo de la siguiente manera:
 print("con t=%g s, la altura del balon es de %.2f m." % (t, y))


con lo cual Python nos imprimirá el contenido encerrado entre los caracteres '' ó "", El detalle a tomar consideracion son %g y %.2f , campos donde las variables serán introducidas de manera correcta. donde g nos permitira desplegar un número de la manera mas corta posible y .2f nos permite desplegar un número con dos decimales despues del punto.
La representación completa de nuestro programa entonces seria:

 v0 = 5
 g = 9.81
 t = 0.6
 y = v0*t - 0.5*g*t**2
 print("con t=%g s, la altura del balon es de %.2f m." % (t, y))

Una lista importante a tomar en consideración para los siguientes formatos es:
%s      un caracter
%d      un número entero
%0xd    un número entero con x cantidad de ceros a la izquierda
%f      notación decimal con seis decimales
%e      notación científica compacta, con letra e en el exponente
%E      notación científica compacta, con letra E en el exponente
%g      decimal compacto o notación científica (con e)
%G      decimal compacto o notación científica (con E)

Otra fórmula, conversion de Farenheit a Celsius


En nuestro siguiente ejercicio implica la conversion de la medida temperatura dada en Farenheit en su respoectivo equivalente a Celcius.
Dada la siguiente ecuación:

$$C=\frac{5}{9}(F-32)$$
En esta formula la variable C contiene el valor de grados en Centígrados y F el valor de grados en Farenheit.
 F = 21
 C = (5/9)*(F-32)
 print(C)

Usando la función Root

Problema: considerando el movimiento vertical del balón, ahora nos hacemos la siguiente pregunta: ¿Cuanto tiempo demora el balón para alcanza la altura $y_c$?, la respuesta es sencilla, cuando $y=y_c$ tenemos.
$$y_c=v_0-\frac{1}{2}gt^2$$ Reconocemos que esa ecuación es una acuación cuadrática que deberia resolverse con respecto a t.
$$\frac{1}{2}gt^2-v_0t+y_c=0$$ Usando ya las formulas bien conocidas para obtener las dos soluciones de la ecuación, encontrandolas así:
$$t_1=\frac{v_0-\sqrt{v_0^2-2gy_c}}{g}, t_2=\frac{v_0+\sqrt{v_0^2-2gy_c}}{g}$$

Objetos en Python

Cuando realizamos la siguiente instrucción:

F = 21


En realidad lo que realizamos es la creación del Objeto de tipo entero manteniendo el valor 21, La variable F actúa como un nombre para ese objeto entero. De la misma manera si realizamos:

C = 32.0


Python reconoce 32.0 como un número real entonces crea un objeto con nombre C del tipo float, conteniendo el valor 32.0, de hecho hemos realizado la creación de objetos y la asignación inmediata de los valores que contendran( Las asignaciones se realizan de derecha a izquierda ).
Existen una gran cantidad de diferentes objetos tipos en Python, además también nosotros podemos crear a nuestra manera objetos personificados.
Un ejemplo común del objeto str( "String", Cadena de caracteres ):

s = "Un texto que contiene un integer %d y un float %f" % (2, 2.0)
print(s)


Podemos ver que asignamos un cadena de caracteres a la variable s, el cual vendria a ser un objeto del tipo str.
seguidamente ejecutamos la función print, pasandole como parámetro nuestra variable objeto de tipo str s.
Teniendo como resultado:

Un texto que contiene un integer 2 y un float 2.000000

Evitando la división entera


Como regla de oro, deberias evitar la realización de divisiones enteras en Python, hay muchas maneras de poder realizar esto. podemos obligar a que la división comprenda de por lo menos un elemento del tipo float, también podemos obligar la transformación de un tipo entero a un tipo float, como veremos en el siguiente ejemplo:

F = ( 9.0 / 5 )*C + 32
F = ( 9 / 5.0 )*C + 32
F = ( 9 / 5 )*float(C) + 32


Explicación en lineas:
  1. Podemos ver que el numerador en la fracción es de tipo float.
  2. El denominador en la fracción es de tipo float.
  3. La variable de tipo C, se transforma a una variable de tipo float; El resultado es erroneo ya que la division se efectúa primero dando como resultado 1

Usando más funciones matemáticas


Nuestro siguiente ejemplo hace uso de algunas funciones matemáticas del módulo Math de la libreria estandar de Python. vemos la definición de la función seno hiperbólico de un número real x, designado como sinh(x) mediante la ecuación:

$$\sinh(x)=\frac{1}{2}(e^x-e^{-x})$$ Podemos evaluar sinh(x) de tres formas
from math import sinh, exp, e, pi
x = 2*pi
r1 = sinh(x)
r2 = 0.5*(exp(x) - exp(-x))
r3 = 0.5*(e**x - e**(-x))
print r1, r2, r3


miércoles, 2 de marzo de 2016

Aprendiendo a programar

Una de las grandes cuestiones para los que se inician en las diferentes carreras técnicas o de licenciaturas es: ¿con que lenguaje de programación iniciar a programar?, decirles que las respuestas son muchas y ninguna de ellas es mejor que las otras. Escuelas, institutos y universidades optan por iniciar sus cursos de introducción a la programación con Pascal (Lenguaje de programación desarrollado entre 1968 y 1969, publicado en 1970 desarrollado por el profesor suizo Niklaus Wirth) cuyo objetivo principal es el de facilitar el aprendizaje de programación a alumnos tomando énfasis en la programación estructurada y en la estructuración de datos, Pascal es un lenguaje de programación que entra en la clasificación de lenguajes de programación de alto nivel(mayor similitud al lenguaje humano).
Las dos herramientas mayormente utilizadas en los inicios de programación son los diagramas de flujos y pseudo-códigos.
Diagramas de flujo: Es una representación gráfica de un algoritmo. Los símbolos utilizados han sido normalizados por el instituto Norteamericano de Normalización (Ansi).
Pseudo-código: Es una herramienta de programación en la que las instrucciones se escriben en palabras similares al inglés o español, que facilitan tanto la escritura como la lectura de programas. el pseudo-código se puede definir como un lenguaje de especificación de algoritmos.
Énfasis en la programación estructurada, el lenguaje pascal empezó siendo uno de los precursores de la enseñanza considerando en primera instancia el uso de la metodología en la programación estructurada; cabe decir que no es la única, pero que para su mejor entendimiento es preferible este punto de partida.
La programación estructurada significa escribir un programa de acuerdo a las siguientes reglas:
- El programa tiene un diseño modular.
- Los módulos son diseñados de modo descendente.
- Cada módulo se codifica utilizando tres estructuras de control básicas: secuencia, selección y repetición.
Cada estructura responde a dos preguntas ¿qué hace? ¿como lo hace?

El lenguaje Pascal estándar presenta una serie de características que lo hacen idóneo como primer o segundo lenguaje de programación, desde el punto de vista del aprendizaje y como lenguaje de propósito general para la resolución de aplicaciones de todo tipo, características más sobresalientes:

- Lenguaje excelente para el aprendizaje de la programación.
- Lenguaje de propósito general.
- Lenguaje procedimental.
- Lenguaje estructurado.
- Lenguaje recursivo.
- Gran riqueza de tipos.
- Producción por compiladores incorporados a editores.
- Facilidad para realizar programación modular debido a la posibilidad de diseñar subprogramas o módulos del tipo procedimiento o función.

la resolución un problema con computadora tiene las siguientes fases:

- Análisis del problema.
- Diseño del algoritmo.
- Codificación.
- Compilación y ejecución.
- Verificación y mantenimiento.
- Documentación y mantenimiento.

Herramienta de desarrollo integrado(IDE)
Para nuestro avance utilizares la herramienta freePascal IDE. Esta herramienta se puede descargar gratuitamente.

Reglas de la estrustura de un programa en Pascal:

program identificador {cabecera del programa}
uses identificadores
label lista de etiquetas {sección de etiquetas}
const
   definiciones de constantes
type
   declaración de tipos de datos definidos por el usuario
var
   declaracion de variables

procedure
   definiciones de procedimientos
function
   definiciones de funciones

begin
   sentencias   {cuerpo del programa}
end


lunes, 29 de febrero de 2016

Diseño de diagrama de flujos de algoritmos

Los diagramas de flujos son una representación gráfica de un algoritmo o de una porción  de algoritmo. estos haciendo uso de figuras como ser:
ovalos, rectangulos, rombos, circulos.
Todos estos conectados con flechas denominados lineas de flujo, que nos ayudan a hacer el seguimiento de las acciones.
Para efectuar un diagrama de flujo de un algoritmos, inicializamos con un ovalo de inicio como así también de culminación.
El rectangulo es usado para la realización de una acción, como ser cálculos o entradas y salidas.
El rombo es usado para efectuar una decisión.
los circulos son usados para efectuar conectores.

Solución al problema 0x000000ED UNMOUNTABLE_BOOT_VOLUME con puppy linux

Para la solución de este problema, podríamos usar un cd de instalación de Windows, pero veo mas factible hacer el uso de una unidad USB Booteable o un Cd booteable conteniendo la distribución de Linux "puppy linux" o alguna otra distribución, ya que el tiempo de descarga es mucho menor (unos 208 MegaBytes aprox.) y fácil de conseguirlo. La iso de la distribución la pueden conseguir en Descargar PuppyLinux ; necesitamos arrancar el sistema con la unidad booteable, luego en una terminal escribir el siguiente código:
ntfsfix /dev/sda1
Nota: donde el dispositivo sería sda1, caso contrario cambiar. Una vez realizada esta acción, reiniciar el sistema arrancando desde la unidad de disco duro.