1
$\begingroup$

Any references/links on codes for SLEs written in C++ or Matlab that I can run in Windows (visual studio)?

The only code I found was:http://math.arizona.edu/~tgk/research.html but the link was empty. Any suggestions?

Also how about papers that at least give good pseudocode for modelling SLEs for various k?

$\endgroup$
3
  • 2
    $\begingroup$ Brent Werness has some things on his website you might be interested in. math.washington.edu/~bwerness/code.html $\endgroup$
    – tmh
    Commented Jul 12, 2016 at 5:36
  • $\begingroup$ I would just write to Prof. Kennedy at the Univ. of Arizona if you want to use his code and the link is broken. $\endgroup$ Commented Jul 12, 2016 at 6:30
  • $\begingroup$ I wish Werness had his code public. I much rather work with it. I will make a request. $\endgroup$
    – user133100
    Commented Jul 12, 2016 at 17:35

2 Answers 2

2
$\begingroup$

The code from the above link is downloadable from https://archive.org.

Link to the snapshots

The latest snapshot from 2010: https://web.archive.org/web/20100707204150/http://math.arizona.edu/~tgk/fast_sle1.0.tar.gz

$\endgroup$
2
$\begingroup$

I have code for that here: github link (and pictures)

I cannot guarantee that it's easy to compile in windows though, as I only have access to linux and OSX; the implementation itself is just plain Euler's method.

$\endgroup$
5
  • $\begingroup$ Do you have any documentation for your code? Maybe you can summarize the algorithm briefly? $\endgroup$
    – Elle Najt
    Commented Oct 9, 2019 at 22:12
  • 1
    $\begingroup$ Hi, as I said the algorithm is Euler's method to compute the map $g_1$: discretize time with steps of $\epsilon$, and let $g_{k+1,\epsilon}(z) = g_{k,\epsilon}(z) + 2 \epsilon / (g_{k,\epsilon}(z) - B_{k\epsilon})$ and to do that, the driving process needs to be sampled every $\epsilon$. Stop when the imaginary part is negative (meaning we are on the curve), or at time 1; in the last case, I color the starting point according to the sign of the real part of $g_1(z)-B_1$, which is the same as making the driving process constant after time 1. $\endgroup$ Commented Oct 15, 2019 at 20:39
  • $\begingroup$ Thanks! Let me make sure I'm understanding right. Instead of sampling the path, you sample the partition. Also, because of the discretization, points that are near to the real axis will eventually jump below it, and at that time you check whether they are to the right or left of the singularity. For the points that never have their imaginary part become negative, you just check whether the driving process was always to the left or right of it (which seems like a good guess of whether it will end up on the left or right?). That last bit also functions as a lookahead / time saver for all points. $\endgroup$
    – Elle Najt
    Commented Nov 21, 2019 at 19:51
  • $\begingroup$ Not "always to the left" but just "to the left at the end of the simulation interval" (that's equivalent to saying that you take as a driving process the stopped Brownian $B_{t \wedge 1}$ that is constant after time $1$, and then it's equivalent to "always to the left after time $1$". But otherwise, yes to all. $\endgroup$ Commented Nov 25, 2019 at 10:17
  • $\begingroup$ One thing I never got around to trying would be to have a dynamical partition of the time interval, and to only refine it whenever $g_t(z)-B_t$ becomes too small. That would be very fast away from the curve and very precise close to it. The issue is that you might be close to the actual curve but far away from the coarse approximation, that would need precise information on modulus of continuity of the driving process at various scales, and its relation with curve regularity, plus more global effects on the curve. Could be a nice but quite involved numerical project. $\endgroup$ Commented Nov 25, 2019 at 10:22

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .