[Camino-users] Camino trajectories generation

K V. Nguyen nvkhieu at toantin.org
Fri Feb 2 01:56:28 PST 2018


Dear Matt Budde,
Thank for your details comments and the direction tutorial to the source
code. I will take a look and try to see what I can do.  😉
Thanks
Khieu

On Thu, Feb 1, 2018 at 8:29 PM, Matt Budde <matt.d.budde at gmail.com> wrote:

> If the   "comment closed surface" is present in the ply file header,
> camino checks the locations of each walker at each step to determine if it
> is still intra/extra as you'd like it to be, which is computationally
> intensive and slow.   This check is in the code somewhere around line 580
> in DiffusionSimulation.java
>
>                  if(p==0.0){
>                 if(substrate.intracellular(walker[i])!=isIntra[i]){
>
>                 logger.severe("walker pos: "+walker[i].r[0]+"
> "+walker[i].r[1]+"  "+walker[i].r[2]);
>
>                 throw new LoggedException("t= "+t+" i= "+i+" has crossed.
> isIntra="+isIntra[i]);
>                 }
>                 }
>
> The substrate.intracellular function first checks to see if this is a
> convexHull mesh (has the "closed surface").  If not, it simply returns
> false.
>
> There's a couple of workarounds that depending on your programming
> experience could be used to avoid those step:
>
> 1) comment out the lines above to avoid checking at each timestep and
> recompile.  Obviously, if the walker jumps between intra/extra spaces, you
> won't catch it.  Be sure to inspect your trajectories using matlab to
> plot/visualize the walkers and make sure you don't get strange behavior.
> It should still initialize the walkers to the intra (which is slow to begin
> the simulation), but doesn't check at each subsequent step.
>
> 2) set your permeability to something very very small (1e-300)? which will
> also avoid this if statement.  However, because the permeability is
> non-zero, it may affect the results.  Obviously check this against the
> non-mesh version to see how it performs, I haven't tested it, but
> conceivably it could work.
>
> 3) if you remove the "comment closed surface" in the ply file header, it
> will also avoid checking at each step.  In this case you can't set the
> initial positions to intra/extracellular.  If you are only interested in
> "-initial uniform", that is not a problem.  You could initialize the runs
> with uniform setting and edit the trajectory files in matlab to only save
> the intracellular walkers.  This approach is least recommended, but exists
> as a possibility.  You could at least give it a try to see what kind of
> speed improvement you get.
>
> Matt (Hall) may have some better insight to this or can tell me if I've
> mis-stated, but option 1 has worked for me in the past to considerably
> speed up the mesh simulations.
>
> -matt (budde)
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.nitrc.org/pipermail/camino-users/attachments/20180202/3859e432/attachment.html>


More information about the Camino-users mailing list