<div dir="ltr"><div><div><div><div><div><div>I'm going to habor a guess here, but try adding a call to the following after you solve for the potential and before you get the acceleration to:<br><br></div>call Grid_fillGuardCells(CENTER, ALLDIR, doEos=.false., &<br>            selectBlockType=LEAF,unitReadsMeshDataOnly=.true.)<br><br></div>Don't forget you'll have to add a:<br><br></div>use Gravity_interface, only: Grid_fillGuardCells<br><br></div>to the subroutine before the variable declarations. This will make sure the guard cells all have the proper potential in them before you attempt to calculate the acceleration, which uses the guard cells to calculate the finite difference of the potential.<br><br></div>Cordially,<br><br></div>Josh<br></div><br><div class="gmail_quote"><div dir="ltr">On Tue, Feb 28, 2017 at 11:58 PM Ryan Farber <<a href="mailto:rjfarber@umich.edu">rjfarber@umich.edu</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg">Oops, I didn't notice you had sent this to flash-users when I replied to you yesterday.<br class="gmail_msg"><br class="gmail_msg"></div>The BHTree solver with bhtreeAcc=1 does indeed work perfectly (y gravitational acceleration attached, <br class="gmail_msg">all plots from this email come from debugging runs done with FLASH 4.4).<br class="gmail_msg"><br class="gmail_msg"></div>However, the "production" version of FLASH I'm working with (heavily modified) is a bit too old for me to be <br class="gmail_msg">able to use this fix. Moreover, old work used other solvers in which the acceleration is computed from the potential <br class="gmail_msg">in Gravity_accelOneRow (which is done the exact same way independent of the solver employed to compute<br class="gmail_msg"></div>the potential, as I've verified), and I'm worried how this bug may affect that old work. Also, I just gotta know!!!<br class="gmail_msg"></div>I had a dream about debugging this last night...<br class="gmail_msg"><br class="gmail_msg"></div>Any way, if I use BHTree without the "bhtreeAcc=1" then it computes the acceleration through the potential.<br class="gmail_msg"></div>But, in this case Gravity_accelOneRow doesn't get called on the first time step. So, I made the<br class="gmail_msg"></div>Driver_initFlash edits as described in my first email to get *accelOneRow called on the 1st time step.<br class="gmail_msg"></div>And I get the attached y gravitational acceleration, which looks pretty nice but still has a weird jump on the<br class="gmail_msg"></div>boundary.<br class="gmail_msg"><br class="gmail_msg"></div>Do you think the boundary jump is supposed to be there? Or is this a bug?<br class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><br class="gmail_msg"><div class="gmail_msg"><div class="gmail_extra gmail_msg">Best,<br clear="all" class="gmail_msg"></div><div class="gmail_extra gmail_msg"><div class="gmail_msg"><div class="m_7252280551003454124m_1822373384628925401gmail_signature gmail_msg" data-smartmail="gmail_signature"><div dir="ltr" class="gmail_msg"><div class="gmail_msg"><div dir="ltr" class="gmail_msg"><div dir="ltr" class="gmail_msg">--------<div class="gmail_msg">Ryan</div></div></div></div></div></div></div>
<br class="gmail_msg"><div class="gmail_quote gmail_msg"></div></div></div></div></div></div></div></div></div></div></div></div></div></div><div dir="ltr" class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_extra gmail_msg"><div class="gmail_quote gmail_msg">On Mon, Feb 27, 2017 at 1:32 PM, Joshua Wall <span dir="ltr" class="gmail_msg"><<a href="mailto:joshua.e.wall@gmail.com" class="gmail_msg" target="_blank">joshua.e.wall@gmail.com</a>></span> wrote:<br class="gmail_msg"></div></div></div></div></div></div></div></div></div></div></div></div></div></div><div dir="ltr" class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_extra gmail_msg"><div class="gmail_quote gmail_msg"><blockquote class="gmail_quote gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg">Hello Ryan,<br class="gmail_msg"><br class="gmail_msg"></div>      I double checked this morning, and Richard Wunsch's BHTree gravity includes variables for storing the gravitation acceleration at each cell if you use his solver with the added option bhtreeAcc at setup like this (make sure you take out any references to other gravity solvers in the simulation Config file):<br class="gmail_msg"><br class="gmail_msg"></div>./setup DustCollapse +auto +3d --with-unit=physics/Gravity/GravityMain/Poisson/BHTree bhtreeAcc=1<br class="gmail_msg"><br class="gmail_msg"></div>If you check in the code in source/physics/Gravity/GravityMain/Poisson/BHTree/Gravity_accelOneRow.F90 you can see how the accelerations are calculated and stored exactly from both the grid and any sinks in the code. I've been using his potential solver for some time (in Flash 4.2.2, including getting the accelerations) and find it to be both robust and fast. Or perhaps you could use his implementation as an example of how to structure your own modifications to Gravity_accelOneRow.F90.<br class="gmail_msg"><br class="gmail_msg"></div>Note that if you do use his code it already includes the gravity accel variables in source/physics/Gravity/GravityMain/Poisson/BHTree/Config, which I encourage you to check out as it describes the other options for the code. The paper for this method is in prep still I believe.<br class="gmail_msg"><br class="gmail_msg"></div>Hope this helps!<br class="gmail_msg"><br class="gmail_msg"></div>Josh<br class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><br class="gmail_msg"><div class="gmail_quote gmail_msg"><span class="gmail_msg"><div dir="ltr" class="gmail_msg">On Sat, Feb 25, 2017 at 10:03 PM Ryan Farber <<a href="mailto:rjfarber@umich.edu" class="gmail_msg" target="_blank">rjfarber@umich.edu</a>> wrote:<br class="gmail_msg"></div></span><div class="gmail_msg"><div class="m_7252280551003454124m_1822373384628925401h5 gmail_msg"><blockquote class="gmail_quote gmail_msg" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr" class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">Dear FLASH users,<div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><br class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">I decided to look at the components of the gravitational acceleration for the supplied </div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">DustCollapse problem (FLASH 4.3), and have noticed some weird artifacts on the block boundaries.</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><br class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">The issue seems somewhat similar to one Thomas Peters' <a href="http://flash.uchicago.edu/pipermail/flash-users/2014-May/001440.html" class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg" target="_blank">refinement issue</a> (a plotting bug)</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">but I chatted with ngoldbaum on the yt IRC channel and the conclusion was the artifacts </div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">are on the FLASH side of things.</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><br class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">The only edits I made to the DustCollapse problem supplied with FLASH 4.3 were:</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><br class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">* Config: added the following lines</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">VARIABLE grac</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">VARIABLE poix</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">VARIABLE poiy</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">VARIABLE poiz</div></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><br class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">* Driver_initFlash.F90: copied to problem directory and modified the original lines:</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  if(.not. dr_restart) then</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">     call Grid_getListOfBlocks(LEAF,blockList,blockCount)</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">     call Gravity_potentialListOfBlocks(blockCount,blockList)</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">     call Particles_initForces()</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  end if<br class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><br class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  ! If we want to free any arrays created during simulation</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  ! initialization that are no longer needed, do it here.</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  call Simulation_freeUserArrays()</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><br class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  call IO_outputInitial(  dr_nbegin, dr_initialSimTime)</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  if(dr_globalMe==MASTER_PE)print*,'Initial plotfile written'</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><br class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  if(dr_globalMe==MASTER_PE)print*,'Driver init all done'</div></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><br class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><br class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">**to**</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  if(.not. dr_restart) then</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">     call Grid_getListOfBlocks(LEAF,blockList,blockCount)</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">     call Gravity_potentialListOfBlocks(blockCount,blockList)</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">     call Particles_initForces()</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><br class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">     call Gravity_accelListOfBlocks(blockCount, blockList, IAXIS, GRAC_VAR)</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">     call Gravity_accelListOfBlocks(blockCount, blockList, JAXIS, GRAC_VAR)</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">     call Gravity_accelListOfBlocks(blockCount, blockList, KAXIS, GRAC_VAR)</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  end if</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><br class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  ! If we want to free any arrays created during simulation</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  ! initialization that are no longer needed, do it here.</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  call Simulation_freeUserArrays()</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><br class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  call IO_outputInitial(  dr_nbegin, dr_initialSimTime)</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  if(dr_globalMe==MASTER_PE)print*,'Initial plotfile written'</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><br class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  STOP(99)</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><br class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  if(dr_globalMe==MASTER_PE)print*,'Driver init all done'</div></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><br class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">* Gravity_accelOneRow: modified the original lines:</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  do ii = iimin+1, iimax-1</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">     grav(ii) = grav(ii) + delxinv * (gpot(ii-1) - gpot(ii+1))</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  enddo<br class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><br class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  grav(iimin) = grav(iimin+1)     ! this is invalid data - must not be used</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  grav(iimax) = grav(iimax-1)</div></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><br class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">**to**</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  do ii = iimin+1, iimax-1</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">     grav(ii) = grav(ii) + delxinv * (gpot(ii-1) - gpot(ii+1))</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><br class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">     if (sweepDir .eq. SWEEP_X) then</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">       solnVec(POIX_VAR, ii, pos(1), pos(2)) = grav(ii)</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">     end if</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">     if (sweepDir .eq. SWEEP_Y) then</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">       solnVec(POIY_VAR, pos(1), ii, pos(2)) = grav(ii)</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">     end if</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">     if (sweepDir .eq. SWEEP_Z) then</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">       solnVec(POIZ_VAR, pos(1), pos(2), ii) = grav(ii)</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">     end if</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  enddo</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><br class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  grav(iimin) = grav(iimin+1)     ! this is invalid data - must not be used</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  grav(iimax) = grav(iimax-1)</div></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  if (sweepDir .eq. SWEEP_X) then</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">    solnVec(POIX_VAR, iimin, pos(1), pos(2)) = grav(iimin+1)</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">    solnVec(POIX_VAR, iimax, pos(1), pos(2)) = grav(iimax-1)</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  end if</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  if (sweepDir .eq. SWEEP_Y) then</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">    solnVec(POIY_VAR, pos(1), iimin, pos(2)) = grav(iimin+1)</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">    solnVec(POIY_VAR, pos(1), iimax, pos(2)) = grav(iimax-1)</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  end if</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  if (sweepDir .eq. SWEEP_Z) then</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">    solnVec(POIZ_VAR, pos(1), pos(2), iimin) = grav(iimin+1)</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">    solnVec(POIZ_VAR, pos(1), pos(2), iimax) = grav(iimax-1)</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">  end if</div></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><br class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">Slices were taken along the x-axis.</div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><br class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"></div><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">Thanks for your help,<br class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg" clear="all"><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479m_-4857368356063029674gmail_signature m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><div dir="ltr" class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><div dir="ltr" class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><div dir="ltr" class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg"><div class="m_7252280551003454124m_1822373384628925401m_4233117519383131479gmail_msg gmail_msg">Ryan</div></div></div></div></div></div>
</div></div>
</blockquote></div></div></div></div></div></div></div></div></div></div></div><div dir="ltr" class="gmail_msg">-- <br class="gmail_msg"></div><div class="m_7252280551003454124m_1822373384628925401HOEnZb gmail_msg"><div class="m_7252280551003454124m_1822373384628925401h5 gmail_msg"><div data-smartmail="gmail_signature" class="gmail_msg"><div dir="ltr" class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg"><div class="gmail_msg">Joshua Wall<br class="gmail_msg"></div>Doctoral Candidate<br class="gmail_msg"></div>Department of Physics<br class="gmail_msg"></div>Drexel University<br class="gmail_msg"></div>3141 Chestnut Street<br class="gmail_msg"></div>Philadelphia, PA 19104<br class="gmail_msg"></div></div>
</div></div></blockquote></div></div></div></div></div></div></div></div></div></div></div></div></div></div></blockquote></div><div dir="ltr">-- <br></div><div data-smartmail="gmail_signature"><div dir="ltr"><div><div><div><div><div>Joshua Wall<br></div>Doctoral Candidate<br></div>Department of Physics<br></div>Drexel University<br></div>3141 Chestnut Street<br></div>Philadelphia, PA 19104<br></div></div>