import java.util.*;
public class Sistema {
//masa de las partículas térmicas
final double Mt=1.0;
//masa de las partículas brownianas
double Mb;
//velocidad de las partículas térmicas
double Vt;
//Posición de las partícula browniana
public double X, Y;
//Velocidad de la partícula browniana
double Vx, Vy;
//números aleatorios
Random rnd=new Random();
public Sistema(double Vt, double Mb) {
this.Vt=Vt;
this.Mb=Mb;
//estado inicial
X=0;
Y=0;
Vx=0;
Vy=0;
}
public void evolucion(){
double Ux, Uy, angulo, Wx, Wy;
angulo=2*Math.PI*rnd.nextDouble();
Ux=Vt*Math.cos(angulo);
Uy=Vt*Math.sin(angulo);
Wx=Vx-Ux; Wy=Vy-Uy;
angulo=2*Math.PI*rnd.nextDouble();
Vy+=(Mt/(Mt+Mb))*(Wy*(Math.cos(angulo)-1)+Wx*Math.sin(angulo));
Vx+=(Mt/(Mt+Mb))*(Wx*(Math.cos(angulo)-1)-Wy*Math.sin(angulo));
X+=Vx;
Y+=Vy;
}
}
|