martes 23 de junio de 2009

Frases

Ser impaciente y esperar...

Curso antiayuda Peto Menahem

miércoles 3 de junio de 2009

La primera ciudad del mundo abastecida con estiércol

Los caminos de las energías renovables son inescrutables. La humanidad se encuentra tan acorralada con las desventajas de los combustibles fósiles que no paran de inventar nuevas vías para seguir disfrutando de una energía barata. La ciencia ha recorrido todo el espectro de posibilidades, desde la luz del sol, hasta la fuerza de las mareas, pasando por el viento, el calor de la tierra y otras muchas que tratan de posicionarse como alternativas reales al petróleo. Pues bien, Lünen, una ciudad de unos 90.000 habitantes, situada al norte de Dortmund(Alemania), se va a convertir pronto en la primera del mundo que conseguirá abastecerse de energía utilizando biogás. Lo llamativo del asunto es que este gas no proviene de grandes bolsas subterráneas, sino del vientre del ganado. Hablando claro: de sus excrementos.
¿Cómo se obtiene el biogás? Se trata simplemente de la descomposición natural del detritus orgánico. La creación y utilización del biogás de manera artificial se remonta a la segunda guerra árabe-israelí, a mediados de los años setenta del siglo XX, cuando el precio del petróleo subió ostensiblemente al ser utilizado como arma política, lo que hizo que se investigasen otras posibilidades de producir energía. Este proceso desprende una mezcla de gases que surge gracias a microorganismos anaerobios, es decir, sin presencia de oxígeno, que descomponen la materia orgánica. Las bacterias consumen el carbono y el nitrógeno y como resultado se produce una combinación de gases formado por un 70% de metano, 20% de anhídrido carbónico y un poco de monóxido de carbono y anhídrido sulfuroso.

El biogás obtenido mediante este proceso será quemado en una planta de cogeneración para que pueda generar calor y electricidad. La planta podría producir 6.8 megavatios de energía verde, que es suficiente para abastecer alrededor de 26.000 hogares. El biogás actualmente se está usando en todo el mundo de modo experimental pero las autoridades locales aseguran que la pequeña ciudad de Lünen tendrá el honor de ser la primera del planeta que conseguirá abastecerse de modo regular con el biogás generado de las deposiciones de los animales de granja. El sustento energético de la población se efectuará mediante una red de biogás que pretenden llevar a cabo a la mayor brevedad en la forma de un gasoducto subterráneo. El calor generado durante el proceso será distribuido en toda la ciudad y podrá dar abasto al 30-40 % del total de la población.
Las ventajas del biogás son muchas, pues además de generar electricidad sin agravar el problema del calentamiento global del planeta, también elimina los residuos orgánicos que produce la naturaleza (ganado, plantas muertas, etc). Las desventajas podrían ser que este tipo de energía se presta a los entornos rurales antes que a los urbanos y, además, que producen gases nocivos (aunque en muy poca cantidad), como el ácido sulfhídrico que hay que eliminar. De todos modos, Lünen ya está lista para producir su biogás y no te extrañe que les dediquen algún monumento a sus útiles animales de granja.

Quien iba a decir que una cosa tan sucia produciría una energía tan limpia.

miércoles 27 de mayo de 2009

Frases

...Algunas cosas las hace el hombre, y otras el hambre...

Profesor Web

viernes 22 de mayo de 2009

Fujitsu Venus: El procesador más rápido del mundo

El procesador en cuestión fue bautizado como "Venus", un nombre que puede no ser muy original pero es mucho más agradable que el SPARC64 VIIIfx que tuvo al principio. La presentación fue llevada a cabo en el "Fujitsu Forum 2009", y la única imagen que ha trascendido los medios nos muestra a un procesador significativamente más grande de lo que hemos vista hasta ahora. Sin embargo, el tamaño físico no es lo único grande en este procesador. Su capacidad, de acuerdo a sus desarrolladores, puede alcanzar un pico máximo de 128 Gigaflops, aproximadamente dos veces y medio el poder de procesamiento del mejor exponente de Intel en existencia


.
Ahora, nosotros los usuarios tal vez estemos acostumbrados a ver los logros de Fujitsu a través de otros productos y componentes, como son discos duros y ordenadores portátiles, pero lo cierto es que Fujitsu ha demostrado tener una gran experiencia en la fabricación de procesadores y ordeandores de alto poder. Es más, su súperordenador "Numerical Wind Tunnel" fue primero en la lista de los 500 ordenadores más poderosos del mundo entre 1993 y 1996, lo cual no es poco.

El procesador ha sido fabricado con tecnología de 45 nm, y cuenta con un total de ocho núcleos. Como si eso fuera poco, Fujitsu ha declarado que Venus requiere solamente un tercio de la energía que necesita el mejor chip de Intel. Hasta el momento se desconocen otros detalles como la cantidad de caché y las propiedades de su zócalo, pero pocas dudas quedan de que Venus es el procesador más poderoso del planeta. Aún no se tiene una idea específica de las aplicaciones prácticas del procesador (y podría demandar varios años determinarlas), sin embargo se especula que Venus podría tener un uso intensivo en campos como la medicina, en el desarrollo de nuevas drogas. Además, un detalle no menos importante: Fujitsu ha dicho que la posibilidad de adaptar esta tecnología para crear procesadores de consumo general, "no ha sido descartada".

jueves 21 de mayo de 2009

Calculadora números complejos

Este, no es más que una calculadora. Lo interesante, es que se trata de números complejos, como 10+5i, por ejemplo.. con un menú de opciones.

#include
#include
#include
#include

struct complejo tpolar (struct complejo);
struct complejo trectangular(struct complejo);
struct complejo bsuma (struct complejo, struct complejo);
struct complejo fpotencia (struct complejo, float);
struct complejo fproducto (struct complejo, struct complejo);
struct complejo { float a, b; };
struct complejo fdivision (struct complejo, struct complejo);

int main(void)
{
int opcion;
printf ("\t\t\t\tNUMEROS COMPLEJOS\n\n");
printf ("Seleccione la operacion que quiera realizar\n\n");
printf ("1-Pasaje de forma rectangular a forma polar\n");
printf ("2-Pasaje de forma polar a forma rectangular\n");
printf ("3-Sumar dos numeros complejos. Nota: Ingrese los valores en forma rectangular\n");
printf ("4-Multiplicar dos numeros complejos. Nota: Ingrese los valores en forma polar\n");
printf ("5-Dividir dos numeros complejos. Nota: Ingrese los valores en forma polar\n");
printf ("6-Potenciacion. Nota: Ingrese los valores en forma polar\n\n");
printf ("Nota: La fase de los numero complejos debera ser ingresada en radianes y sera devuelta tambien en radianes \n\n");
scanf ("%d", &opcion);
switch (opcion)
{
case 1 :
printf ("\n1-PASAJE DE FORMA RECTANGULAR A FORMA POLAR\n\n");
struct complejo fpolar, frectangular;
printf ("Ingrese la parte real del numero complejo:");
scanf ("%f", &frectangular.a);
printf ("Ingrese la parte imaginaria de numero complejo:");
scanf ("%f", &frectangular.b);
fpolar = tpolar (frectangular);
printf ("\nEl modulo del numero complejo es =%f\n", fpolar.a);
printf ("La fase del numero complejo es =%f\n\n", fpolar.b);
system("PAUSE");
return EXIT_SUCCESS;

break ;

case 2 :
printf ("\n2-PASAJE DE FORMA POLAR A FORMA RECTANGULAR\n\n");
struct complejo frec, fpol;
printf ("Ingrese el modulo de numero complejo:");
scanf ("%f", &fpol.a);
printf ("Ingrese la fase de numero complejo:");
scanf ("%f", &fpol.b);
frec = trectangular (fpol);
printf ("\nLa parte imaginaria del numero complejo es =%f\n", frec.a);
printf ("La parte real del numero complejo es =%f\n\n", frec.b);
system("PAUSE");
return EXIT_SUCCESS;

break ;

case 3 :
printf ("\n3-SUMAR DOS NUMEROS COMPLEJOS\n\n");
struct complejo z2p,z1p, csuma;
printf ("Ingrese la parte real del primer numero complejo:");
scanf ("%f", &z1p.a);
printf ("Ingrese la parte imaginaria del primer numero complejo:");
scanf ("%f", &z1p.b);
printf ("\nIngrese la parte real del segundo numero complejo:");
scanf ("%f", &z2p.a);
printf ("Ingrese la parte imaginaria del segundo numero complejo:");
scanf ("%f", &z2p.b);
csuma = bsuma (z1p, z2p);
printf ("\nEl resultado es= %f +j%f\n\n", csuma.a,csuma.b);
system("PAUSE");
return EXIT_SUCCESS;

break ;

case 4 :
printf ("\n4-MULTIPLICAR DOS NUMEROS COMPLEJOS\n\n");
struct complejo z2pa,z1pa, producto;
printf ("Ingrese el modulo del primer numero complejo:");
scanf ("%f", &z1pa.a);
printf ("Ingrese la fase del primer numero complejo:");
scanf ("%f", &z1pa.b);
printf ("\nIngrese el modulo del segundo numero complejo:");
scanf ("%f", &z2pa.a);
printf ("Ingrese la fase del segundo numero complejo:");
scanf ("%f", &z2pa.b);
producto = fproducto (z1pa, z2pa);
printf ("\nEl resultado del producto es= Modulo= %f Fase=%f\n\n", producto.a,producto.b);
system("PAUSE");
return EXIT_SUCCESS;

break ;

case 5 :
printf ("\n5-DIVIDIR DOS NUMEROS COMPLEJOS\n\n");
struct complejo z2pb,z1pb, division;
printf ("Ingrese el modulo del primer numero complejo:");
scanf ("%f", &z1pb.a);
printf ("Ingrese la fase del primer numero complejo:");
scanf ("%f", &z1pb.b);
printf ("\nIngrese el modulo del segundo numero complejo:");
scanf ("%f", &z2pb.a);
printf ("Ingrese la fase del segundo numero complejo:");
scanf ("%f", &z2pb.b);
division = fdivision (z1pb, z2pb);
printf ("\nEl resultado de la division es= Modulo= %f Fase=%f\n\n", division.a,division.b);
system("PAUSE");
return EXIT_SUCCESS;

break ;

case 6 :
printf ("\n6-POTENCIACION\n\n");
struct complejo z1pc, potencia;
float exponencial;
printf ("Ingrese el modulo del numero complejo:");
scanf ("%f", &z1pc.a);
printf ("Ingrese la fase del primer numero complejo:");
scanf ("%f", &z1pc.b);
printf ("\nIngrese el exponencial:");
scanf ("%f", &exponencial);
potencia = fpotencia (z1pc, exponencial);
printf ("\nEl resultado de la operacion es= Modulo= %f Fase=%f\n\n", potencia.a,potencia.b);
system("PAUSE");
return EXIT_SUCCESS;

break ;

default : printf ("\nNo corresponde a ninguna opcion dada\n\n");

}

system("PAUSE");
return EXIT_SUCCESS;

}
struct complejo tpolar (struct complejo z)

{
float g,h,s,d;
struct complejo w;
g= pow (z.a,2);
h= pow (z.b,2);
s=g+h;
w.a = sqrt (s);
d=z.a/z.b;
w.b= atan (d);

return (w);

}
struct complejo trectangular (struct complejo z)

{
float c,d;
struct complejo w;
c = cos (z.b);
w.a = c * z.a;
d = sin(z.b);
w.b = d * z.a;
return (w);

}
struct complejo bsuma (struct complejo x, struct complejo y)

{
struct complejo w;
w.a= x.a + y.a;
w.b= x.b + y.b;
return (w);
}
struct complejo fproducto (struct complejo x, struct complejo y)

{
struct complejo w;
w.a = x.a * y.a;
w.b = x.b + y.b;
return (w);
}
struct complejo fdivision (struct complejo x, struct complejo y)

{
struct complejo w;
w.a = x.a / y.a;
w.b = x.b - y.b;
return (w);
}
struct complejo fpotencia (struct complejo x, float y)

{
struct complejo w;
w.a = pow (x.a, y);
w.b = x.b * y;
return (w);
}