Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System;
- using System.IO;
- namespace hw2_AM2060
- {
- class BrownianMotion
- {
- public static bool outputToFile(string filename, double[] data) {
- StreamWriter sw = new StreamWriter(String.Format(@"C:\Users\Conrad\{0}.csv",filename));
- foreach (double item in data) { sw.Write(item + ","); }
- sw.Close();
- return true;
- }
- public static void generateWalk(double[] data, int n, double T, double sigma)
- {
- double deltat = T / n;
- double Delta = sigma * Math.Sqrt(deltat);
- //Initialising Random seed
- Random rand = new Random();
- //The Bernoulli Trial
- // D represents Delta in this use case, but naming it Delta would be confusing and would cause issues (in that order (: )
- double BernoulliBoi(double D) {
- if (Convert.ToBoolean(rand.Next(2)))
- {
- return D;
- }
- else { return D * (-1); }
- }
- data[0] = 0;
- for (int i = 0; i < n-1 ; i++)
- {
- data[i+1] = data[i] + BernoulliBoi(Delta);
- }
- }
- static void Main()
- {
- double[] walk = new double[10];
- generateWalk(walk, 10, 10, 2);
- outputToFile("walk", walk);
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement