在java中的几何布朗运动

时间:2016-04-28 15:26:45

标签: java arrays algorithm oop geometry

我使用这个类是为了在java中获得几何布朗运动,之后我使用了我在java中获得的值,在R中,为了生成图形,我感觉公式不是因为我的情节看起来像这样的事实是正确的。 java中的代码是:

 public GeometricBrowianMotion(double s0, double mu, double sigma, double t, int N) {
        this.s0 = s0;
        this.mu = mu;
        this.sigma = sigma;
        this.t = t;
        this.N = N;
    }

    public double[] simulate(RandomStream rng) {
        double[] answer = new double[N];
        NormalGen ngen = new NormalGen(rng, new NormalDist());
        for (int i = 0; i < N; i++) {
            answer[i] = s0 * Math.exp((mu - 0.5 * sigma * sigma) * t + sigma * Math.sqrt(t) * ngen.nextDouble());
        }
        return answer;
    }

,情节看起来像这样[在此处输入图像描述] [1]

! [1]:http://i.stack.imgur.com/tFBCc.png

1 个答案:

答案 0 :(得分:0)

我认为你的answer是一系列的位移,移动的步骤。

为了说明布朗的动作,最好绘制位置 - 作为步骤的总和

X[i] = X0 + Sum{i=0..i} (answer[i])

为了获得好照片,我会像这样计算2D动态影像

enter image description here