domingo, 19 de abril de 2009

CALCULO DEL MOVIMIENTO RECTILINEO UNIFORMEMENTE VARIADO

public class Matriz {
int numeroFilas;
int numeroColumnas;
double [][] matriz;

public Matriz(){}
public Matriz(int nF, int nC){
numeroFilas = nF;
numeroColumnas = nC;
matriz = new double[numeroFilas][numeroColumnas];
for(int i = 0; i < numeroFilas; i++)
for(int j = 0; j < numeroColumnas; j++)
matriz[i][j] = 0;
}

public String imprimir(){
String aux ="";

for(int i = 0; i < numeroFilas; i++){
for(int j = 0; j < numeroColumnas; j++){
aux = aux + matriz[i][j] +" ";
}
aux = aux + "\n";
}

return aux;
}


public String imprimir4(){
String aux ="";
aux="("+aux+ matriz[0][0]+"i"+" ";
aux=aux+matriz[0][1]+"j"+" ";
aux=aux+matriz[0][2]+"k"+")";
return aux;
}

public Matriz suma(Matriz B){
if((this.numeroFilas==B.numeroFilas)&(this.numeroColumnas==B.numeroColumnas)){
Matriz r =new Matriz(this.numeroFilas,this.numeroColumnas);
int j;
for(int i=0;i for(j=0;j r.matriz[i][j]=this.matriz[i][j]+B.matriz[i][j];

return r;
}
else{
Matriz r=new Matriz(1,1);
System.out.println("No se pueden sumar las matrices");
return r;

}
}

public Matriz resta(Matriz B){
if((this.numeroFilas==B.numeroFilas)&(this.numeroColumnas==B.numeroColumnas)){
Matriz r =new Matriz(this.numeroFilas,this.numeroColumnas);
int j;
for(int i=0;i for(j=0;j r.matriz[i][j]=this.matriz[i][j]-B.matriz[i][j];

return r;
}
else{
Matriz r=new Matriz(1,1);
System.out.println("No se pueden restar las matrices");
return r;
}
}
public Matriz multiplicacion(Matriz B){
if(this.numeroFilas==B.numeroColumnas){
Matriz r =new Matriz(this.numeroFilas,this.numeroColumnas);
int j;
int k;
for(int i=0;i
for(j=0;j for(k=0;k
r.matriz[i][j]+=this.matriz[i][k]*B.matriz[k][j];

return r;
}
else{
Matriz r=new Matriz(1,1);
System.out.println("multiplicacion no definida");
return r;
}
public Matriz multiplicaEscalar(double a){
Matriz r =new Matriz(this.numeroFilas,this.numeroColumnas);
int j;
for(int i=0;i
for( j=0;j
r.matriz[i][j]=this.matriz[i][j]*a;
return r;

}
}

public class MRUV {
public Particula particula;
public MRUV(){}
public MRUV(Matriz xo,Matriz vo,Matriz a){
particula=new Particula();
particula.setPosicionInicial(xo);
particula.setVelocidadInicial(vo);
particula.setAceleracion(a);
}
public Matriz calcularPosicion(double t){
Matriz posicion;
Matriz xo,vo,a;
xo=this.particula.getPosicionInicial();
posicion=new Matriz(xo.numeroFilas,xo.numeroColumnas);
vo=this.particula.getVelocidadInicial();
a=this.particula.getAceleracion();
posicion=xo.suma(vo.multiplicaEscalar(t));
posicion=posicion.suma(a.multiplicaEscalar(0.5*t*t));
return posicion;


}
public Matriz calculoVelocidad(double t){
Matriz posicion;
Matriz xo,vo,a,v;
xo=this.particula.getPosicionInicial();
posicion=new Matriz(xo.numeroFilas,xo.numeroColumnas);
vo=this.particula.getVelocidadInicial();
a=this.particula.getAceleracion();
v=vo.suma(a.multiplicaEscalar(t));
return v;
}
public Matriz calcularAceleracion(double t)
{

Matriz aceleracion=particula.getAceleracion();
return aceleracion;

}
public static void main(String args[]){
Matriz xo=new Matriz(1,3);
xo.matriz[0][0]=1;xo.matriz[0][1]=2;xo.matriz[0][2]=-5;
Matriz vo=new Matriz(1,3);
vo.matriz[0][0]=1;vo.matriz[0][1]=2;vo.matriz[0][2]=2;
Matriz a=new Matriz(1,3);
a.matriz[0][0]=2;a.matriz[0][1]=3;a.matriz[0][2]=4;
MRUV n=new MRUV(xo,vo,a);
Matriz x;
x=n.calcularPosicion(2);
Matriz v;
v=n.calculoVelocidad(2);
Matriz ac;
ac=n.calcularAceleracion(2);

System.out.println("POSICION INICIAL:\n"+xo.imprimir());
System.out.println("PSCON FINAL EN t=2:\n"+x.imprimir());

System.out.println("VEL. INICIAL:\n"+vo.imprimir());
System.out.println("VEL. FINAL EN t=2:\n"+v.imprimir());
System.out.println("ACELERACION:\n"+a.imprimir());}
{
}
}

lunes, 6 de abril de 2009

PRUEBA: JORGE CEVALLOS

PRIMERA PARTE
PRIMERA MATRIZ-----
-1
2
-3

SEGUNDA MATRIZ-----
1
0
1
0
0


SEGUNDA PARTE:
A+B = 4+2+4

A-B = 0+4+4

A'B =
4 -2 0
6 -3 0
8 -4 0