<div dir="ltr"><div style="font-family:arial,sans-serif;font-size:13px">Fellow ET folks,</div><div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">As many of you know, I am now working on rewriting the Illinois group's staggered vector potental GRMHD code for insertion into the latest ET code as an open-source thorn called IllinoisGRMHD. The motivations for rewriting the existing thorn are threefold:</div>
<div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">1) Make the existing code easier to read and extend, to quickly and efficiently do new science</div>
<div style="font-family:arial,sans-serif;font-size:13px">2) Speed up the code</div><div style="font-family:arial,sans-serif;font-size:13px">3) Make the code smaller and easier to insert into ET.</div><div style="font-family:arial,sans-serif;font-size:13px">
<br></div><div style="font-family:arial,sans-serif;font-size:13px">There are 3 tasks involved in getting our code ready for insertion into ET, and I am happy to announce that the first, most difficult task is complete, as well as Task 2A. Task 2B is underway:</div>
<div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">Task 1) Rewrite the guts of our old GRMHD thorn, including the, Ai->Bi routine, PPM, flux evaluation, and RHS computation routines. To speed up the turnaround time in getting this code ready and quickly try new techniques for optimization, I developed it as a standalone piece of software, allocating memory for gridfunctions filled with random but physical data (think: 10^{-2} noise atop Minkowski background), and then going through the full reconstruction process in the new code & measuring the speed. The code "guts" I described now take up only about 1300 lines of code, where before they took up several times that. </div>
<div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">Task 2A) Embed the code developed in Task 1 into a new thorn called IllinoisGRMHD in our years-old version of ET, adding to it our primitives solver (already open sourced) and boundary condition routines. (We will be abandoning our old boundary condition routines once we move to the latest ET, as ET apparently has a much nicer infrastructure for BCs.) </div>
<div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">Task 2B) I will then write a very simple initial data thorn that sets all input gridfunctions to have random but physical values at all gridpoints. Using these initial data, I will then perform Cowling evolutions and compare output from our current code with the new code. If after N timesteps the results are identical to roundoff error, I will announce that Task 2 is complete, and publicly release the IllinoisGRMHD thorn as an open-source piece of software.</div>
<div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">Task 3) Work with the ET community to embed our new open-sourced thorn into the latest ET. I plan to work with Philipp Moesta on this task, as he has already ported our open-sourced AMR prolongation/restriction operators into a relatively recent version of Carpet. We will work together to embed our work into the *latest* ET.</div>
<div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">-= Timeline =-</div><div style="font-family:arial,sans-serif;font-size:13px">The initial data thorn in Task 2B was written this past weekend, and I am now working on comparing results from our old GRMHD thorn and the new IllinoisGRMHD thorn, using these initial data as input for an evolution. Differences beyond roundoff error in the evolution are regarded as bugs, and I am deep into backtracing differences between the evolution codes at this moment. I hope to complete this task within a couple weeks, and once it is complete I will publicly release the thorn as an open-source module and begin Task 3.</div>
<div style="font-family:arial,sans-serif;font-size:13px"><br></div><div style="font-family:arial,sans-serif;font-size:13px">Please feel free to ask questions or share any feedback/suggestions.</div><div style="font-family:arial,sans-serif;font-size:13px">
<br></div><div style="font-family:arial,sans-serif;font-size:13px">-Zach</div></div>