domingo, 29 de junio de 2014

Método de Bisección en C, Usando funciones

# include<stdio.h>
# include<conio.h>
# include<math.h>
# include<process.h>
# include<string.h>
# define TOL 0.000001
# define F(x) (x)*log10(x) - 1.2

void Bisect();
int i=1, n;
float raiz = 1;

void main(){
 printf("\n Solucion por el Metodo de Biseccion \n");
 printf ("\n La ecuacion es: ");
 printf("\n\t\t\t (x)*log10x) -1.2 = 0 \n\n");
 printf("Numero Maximo de Iteracciones: ");
 scanf ("%d",&n);
 Bisect();
}
void Bisect(){
 float x1,x2,x0;
 float f0,f1,f2;
 int j=0;
  for (x2=1;;x2++){
   f2 = F(x2);
   if(f2 >0){
    break;
   }
   
  }
  for (x1=x2-1;;x2--){
   f1 = F(x1);
   if(f1<0){
    break;
   }
  }
printf ("\t\t------------------------------------\t\t");
printf ("\n\t\t Iteracion                 Raiz \n");
printf("\t\t-------------------------------------\t\t");
 for (;i<=n;i++){
  x0 = (x1+x2)/2.0;
  f0 = F(x0);
    if (f0==0){
     raiz = x0;
    }
  if(f0*f1<0){
   x2=x0;
  }
     else{
      x1 = x0;
      f1= f0;
     }
  printf("\n\t\t Iteracion %d ", i);
  printf("\t  :\t %f", x0);
  if(fabs((x1-x2)/x1) < TOL ){
  printf("\n\t\t ------------------------------------");
    printf("\n\t\t Raiz = %f",x0);
 printf("\n\t\t Iteracion = %d\n",i);
 printf("\t\t-------------------------------------");
 getch(); 
   exit(0);
   }
  }
printf("\n\t\t---------------------------------------");
printf("\n\t\t\t Raiz = %7.5f",x0);
printf("\n\t\t\t Iteracion = %d\n", i-1);
printf("\t\t-----------------------------------------");
 
getch();
}
Ejecutando:

martes, 17 de junio de 2014










Avogadro es un programa para dibujar estructuras moleculares realizando enlaces químicos, se pueden visualizar en 3D rotando la estructura, cambiando la perspectiva visual, y haciéndola girar en cualquier sentido y dirección sólo con los movimientos del ratón. Las vistas de las estructuras moleculares son espectaculares.




lunes, 5 de mayo de 2014

'Kalzium' un gran Software de GNU para estudiantes de Quimica




Kalzium proporciona todo tipo de información sobre la tabla periódica de los elementos. Puede obtener abundante información sobre los elementos, además de utilizar distintos modos de visualización para mostrarlos. Es libre y está sujeto a los términos de la licencia pública GNU.

Puede visualizar la tabla periódica de los elementos por grupos, bloques y familias. Puede visualizar gráficos de datos de las propiedades de un grupo de elementos, como su punto de ebullición o su masa atómica. Puede viajar atrás en el tiempo para ver qué elementos eran conocidos en una fecha determinada. También puede calcular masas moleculares.

GUIA DESCARGA WINDOWS

miércoles, 23 de abril de 2014

Operación con matrices usando Sympy-Python

isra@linuxmint ~ $ python
Python 2.7.4 (default, Sep 26 2013, 03:20:56) 
[GCC 4.7.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from sympy import Matrix
>>> Matrix([[1,2,3],[4,6,7]])
[1, 2, 3]
[4, 6, 7]
>>> A=Matrix([[1,2,3],[4,6,7]])
>>> b=3
>>> c = b*A
>>> c
[ 3,  6,  9]
[12, 18, 21]
>>> 
>>> x=Symbol('x')
>>> y=Symbol('y')
>>> H = Matrix([[x+y,4],[3,x-y]])
>>> H
[x + y,     4]
[    3, x - y]
>>> h = H*H
>>> h
[(x + y)**2 + 12,             8*x]
[            6*x, (x - y)**2 + 12]
>>> #matris identidad
... 
>>> eye(4)
[1, 0, 0, 0]
[0, 1, 0, 0]
[0, 0, 1, 0]
[0, 0, 0, 1]
>>> #matris ceros
... 
>>> zeros(4)
[0, 0, 0, 0]
[0, 0, 0, 0]
[0, 0, 0, 0]
[0, 0, 0, 0]
>>> #matris unos
... 
>>> ones(5,6)
[1, 1, 1, 1, 1, 1]
[1, 1, 1, 1, 1, 1]
[1, 1, 1, 1, 1, 1]
[1, 1, 1, 1, 1, 1]
[1, 1, 1, 1, 1, 1]
>>> v1 = Matrix([1,2,3])
>>> v2 = Matrix([5,7,8])
>>> v3 = v1.cross(v2)
>>> v3
[-5, 7, -3]
>>> #producto punto
... 
>>> v4 = v1.dot(v2)
>>> v4
43

martes, 22 de abril de 2014

Integrando Con Sympy- Python

isra@linuxmint ~ $ python
Python 2.7.4 (default, Sep 26 2013, 03:20:56) 
[GCC 4.7.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from sympy import*
>>> ## integrando con sympy
>>> x=Symbol('x')
>>> y=Symbol('y')
>>> integrate(cos(x))
sin(x)
>>> integrate(log(x),x)
^[[1~x*log(x) - x
>>> integrate(log(x),x)
x*log(x) - x
>>> integrate(x**2 + cosh(x))
x**3/3 + sinh(x)
>>> ## integrales definidas
... 
>>> integrate(x**3,(x,-1,1))
0
>>> integrate(sin(x),(x,-pi/2,pi/2))
0
>>> integrate(cos(x),(x,-pi/2,pi/2))
2
>>> ## al infinito 
... 
>>> integrate(cos(x),(x,-pi/2,pi/2))
2
>>> integrate(x**3,(x,-1,+oo))
oo
>>> integrate(exp(-x**2),(x,-oo,+oo))
sqrt(pi)