viernes, 22 de junio de 2012

Clases en Java


Hace unos días me vi en la necesidad de trabajar un proyecto en java  mediante la Programación orientada a Objetos en Java. Para ello  tuve que crear una clase y dentro de otra clase y llamarlas. A continuación  muestro un ejemplo Básico.


package clases;
public class nuevaclase {
    //Nuevo Metodo
    public void Presion(){
        // Codigo del Nuevo Metodo
        double n=2.333;
        double r=0.0825;
        int t = 400;
        double  v =3.4;
        double p;
      //operacion  
        p =(n*r*t)/v;
     // mensaje   formado en mi nueva clase;
      System.out.println("La presion es: "+p);
    }  
}
La clase  nuevaclase creada en este código  presenta una operación sencilla de la ecuación de gases ideales (para los que nos visitan por cuestiones de dudas de programación, y siempre notan que uso ejemplos relacionados con ingenieria química  la mayoría de las veces, es por que también  soy ingenierio químico).
Ahora aclarado lo anterior ¿Como  llamamos a esta nuevaclase creada  en nuestro método principal?

package clases;

public class Clases {
   
    public static void main(String[] args) {
        //llamando a la nueva clase creada
        // nueva instancia 
        nuevaclase nuevo = new nuevaclase();
       // Metodo.  
        nuevo.Presion();
    }
}
Espero que les sea de ayuda, los comentarios del código explican las partes del programa.

domingo, 17 de junio de 2012

Gráficar Funciones en 3D.

Muchas veces necesitamos herramientas  eficientes y  fáciles de usar. Para ello les traigo una pagina web desarrollada en HTML 5.
la pagina es la siguiente:  graphycalc.

Captura de Pantalla. Visiten la pagina Web y prueben las  herramientas que tenemos disponibles. 



viernes, 15 de junio de 2012

Mensajes de usuario en Matlab parte 2. Inputdlg en Matlab


Matlab dispone de mensajes de usuario personalizados, para poder introducir un dato que se necesite en  nuestro programa disponemos de Inputdlg, su sintaxis es:

>> dato=inputdlg('intruduce Dato','titulo')

dato = 

    '34'

>> whos
  Name         Size            Bytes  Class     Attributes

  Datos        0x0                 0  cell                
  dato         1x1                64  cell                
  h            1x1                 8  double              
  message      1x13               26  char

nos damos cuenta que estamos trabajando con una Celda entoces la forma de cambiar  a formato numerico para poder usarlo seria la siguiente

>> DaTo=str2double(dato)

DaTo =

    34








Trabajando ahora con un arreglo, lo aremos de la siguiente forma.
Datos=str2double(inputdlg({'Dato1','Dato2','Dato3','Dato4'},...
    'Introduce los valores'));
>> Datos

Datos =

     2
     4
     6
    89
>> %longitud del arreglo
>> size(Datos)

ans =

     4     1
>> %analizando Datos  del arreglo
>> Datos(4,1)

ans =

    89

>> Datos(2,1)

ans =

     4




jueves, 7 de junio de 2012

Ecuacion de Antoine en Matlab

Esta es una aplicacion desarrollada, en la cual capturamos los valores de las constantes de la ecuación de
Antoine para determinadas sustancias.


Algunos de los Compuestos Orgánicos disponibles son los siguientes (si programas en Matlab el código esta abierto para que modifiques la aplicación de acuerdo a tus necesidades )



lunes, 4 de junio de 2012

Método del trapecio en matlab.

Realizado en Matlab con  interfaz de usuario.

function calcular_Callback(hObject, eventdata, handles)
f=inline(get(handles.F,'string'));
a=str2num(get(handles.A,'string'));
b=str2num(get(handles.B,'string'));
n=str2double(get(handles.N,'string'));

    
h=(b-a)/n;
 s=f(a)+f(b);
  for i=2:n
      x(i)=a+(i-1)*h;
      s=s+2*f(x(i));
      
  end
  I=s*(h/2);
  set(handles.salida,'string',I);

% --- Executes on button press in graficar.
function graficar_Callback(hObject, eventdata, handles)
f=inline(get(handles.F,'string'));
a=str2num(get(handles.A,'string'));
b=str2num(get(handles.B,'string'));
n=str2double(get(handles.N,'string'));
h=(b-a)/n;
 for i=2:n
      x(i)=a+(i-1)*h;
      y(i)=f(x(i));
 end
  x=[x,b,a,a];
  y=[y,0,0,f(a)];
  fill(x,y,[0.8 0.8 0.9])
  for i=1:n+1;
      x(i)=a+(i-1)*h;
      y(i)=f(x(i));
  end
hold on
 ezplot(f,[min(x):0.2:max(x)]);
 plot(x,y,'og');
 plot(x,y,'g');
function salir_Callback(hObject, eventdata, handles)
close(gcbf);