Advertisement
Guest User

Untitled

a guest
Nov 12th, 2019
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.42 KB | None | 0 0
  1. using System;
  2. using System.IO;
  3.  
  4. namespace hw2_AM2060
  5. {
  6. class BrownianMotion
  7. {
  8. public static bool outputToFile(string filename, double[] data) {
  9. StreamWriter sw = new StreamWriter(String.Format(@"C:\Users\Conrad\{0}.csv",filename));
  10. foreach (double item in data) { sw.Write(item + ","); }
  11. sw.Close();
  12. return true;
  13. }
  14.  
  15.  
  16. public static void generateWalk(double[] data, int n, double T, double sigma)
  17. {
  18.  
  19. double deltat = T / n;
  20. double Delta = sigma * Math.Sqrt(deltat);
  21. //Initialising Random seed
  22. Random rand = new Random();
  23. //The Bernoulli Trial
  24. // D represents Delta in this use case, but naming it Delta would be confusing and would cause issues (in that order (: )
  25. double BernoulliBoi(double D) {
  26. if (Convert.ToBoolean(rand.Next(2)))
  27. {
  28. return D;
  29. }
  30. else { return D * (-1); }
  31. }
  32. data[0] = 0;
  33. for (int i = 0; i < n-1 ; i++)
  34. {
  35. data[i+1] = data[i] + BernoulliBoi(Delta);
  36. }
  37. }
  38. static void Main()
  39. {
  40. double[] walk = new double[10];
  41. generateWalk(walk, 10, 10, 2);
  42. outputToFile("walk", walk);
  43. }
  44. }
  45. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement