96 research outputs found

    An Efficient Modified "Walk On Spheres" Algorithm for the Linearized Poisson-Boltzmann Equation

    Full text link
    A discrete random walk method on grids was proposed and used to solve the linearized Poisson-Boltzmann equation (LPBE) \cite{Rammile}. Here, we present a new and efficient grid-free random walk method. Based on a modified `` Walk On Spheres" (WOS) algorithm \cite{Elepov-Mihailov1973} for the LPBE, this Monte Carlo algorithm uses a survival probability distribution function for the random walker in a continuous and free diffusion region. The new simulation method is illustrated by computing four analytically solvable problems. In all cases, excellent agreement is observed.Comment: 12 pages, 5 figure

    A deterministic particle method for one-dimensional reaction-diffusion equations

    Get PDF
    We derive a deterministic particle method for the solution of nonlinear reaction-diffusion equations in one spatial dimension. This deterministic method is an analog of a Monte Carlo method for the solution of these problems that has been previously investigated by the author. The deterministic method leads to the consideration of a system of ordinary differential equations for the positions of suitably defined particles. We then consider the time explicit and implicit methods for this system of ordinary differential equations and we study a Picard and Newton iteration for the solution of the implicit system. Next we solve numerically this system and study the discretization error both analytically and numerically. Numerical computation shows that this deterministic method is automatically adaptive to large gradients in the solution

    Convergence Analysis of Markov Chain Monte Carlo Linear Solvers Using Ulam--von Neumann Algorithm

    Get PDF
    The convergence of Markov chain--based Monte Carlo linear solvers using the Ulam--von Neumann algorithm for a linear system of the form x = Hx + b is investigated in this paper. We analyze the convergence of the Monte Carlo solver based on the original Ulam--von Neumann algorithm under the conditions that ||H|| \u3c 1 as well as ρ(H) \u3c 1, where ρ(H) is the spectral radius of H. We find that although the Monte Carlo solver is based on sampling the Neumann series, the convergence of Neumann series is not a sufficient condition for the convergence of the Monte Carlo solver. Actually, properties of H are not the only factors determining the convergence of the Monte Carlo solver; the underlying transition probability matrix plays an important role. An improper selection of the transition matrix may result in divergence even though the condition ||H|| \u3c1 holds. However, if the condition ||H|| \u3c 1 is satisfied, we show that there always exist certain transition matrices that guarantee convergence of the Monte Carlo solver. On the other hand, if ρ(H) \u3c1 but ||H|| ≥ 1, the Monte Carlo linear solver may or may not converge. In particular, if the row sum ∑ n/j= 1|Hij \u3e 1 for every row in H or, more generally, ρ(H+) \u3e1, where H+ is the nonnegative matrix where H+ij = |Hij|, we show that transition matrices leading to convergence of the Monte Carlo solver do not exist. Finally, given H and a transition matrix P, denoting the matrix H* via H*ij = H2ij/Pij, we find that ρ(H*) \u3c 1 is a necessary and sufficient condition for convergence of the Markov chain--based Monte Carlo linear solvers using the Ulam--von Neumann algorithm

    On the Rapid Estimation of Permeability for Porous Media Using Brownian Motion Paths

    Full text link
    We describe two efficient methods of estimating the fluid permeability of standard models of porous media by using the statistics of continuous Brownian motion paths that initiate outside a sample and terminate on contacting the porous sample. The first method associates the "penetration depth" with a specific property of the Brownian paths, then uses the standard relation between penetration depth and permeability to calculate the latter. The second method uses Brownian paths to calculate an effective capacitance for the sample, then relates the capacitance, via angle-averaging theorems to the translational hydrodynamic friction of the sample. Finally, a result of Felderhof is used to relate the latter quantity to the permeability of the sample. We find that the penetration depth method is highly accurate in predicting permeability of porous material

    Acceleration and Parallelization of ZENO/Walk-on-Spheres

    Get PDF
    AbstractThis paper describes our on-going work to accelerate ZENO, a software tool based on Monte Carlo methods (MCMs), used for computing material properties at nanoscale. ZENO employs three main algorithms: (1) Walk on Spheres (WoS), (2) interior sampling, and (3) surface sampling. We have accelerated the first two algorithms. For the sake of brevity, the paper will discuss our work on the first one only as it is the most commonly used and the acceleration techniques were similar in both cases.WoS is a Brownian motion MCM for solving a class of partial differential equations (PDEs). It provides a stochastic solution to a PDE by estimating the probability that a random walk, which started at infinity, will hit the surface of the material under consideration. WoS is highly effective when the problem's geometry is additive, as this greatly reduces the number of walk steps needed to achieve accurate results. The walks start on the surface of an enclosing sphere and can make much larger jumps than in a direct simulation of Brownian motion. Our current implementation represents the molecular structure of nanomaterials as a union of possibly overlapping spheres. The core processing bottleneck in WoS is a Computational Geometry one, as the algorithm repeatedly determines the distance from query point to the material surface in each step of the random walk.In this paper, we present results from benchmarking spatial data structures, including several open-source implementations of k-D trees, for accelerating WoS algorithmically. The paper also presents results from our multicore and cluster parallel implementation to show that it exhibits linear strong scaling with the number of cores and compute nodes; this implementation delivers up to 4 orders of magnitude speedup compared to the original FORTRAN code when run on 8 nodes (each with dual 6-core Intel Xeon CPUs) with 24 threads per node

    Neuron splitting in compute-bound parallel network simulations enables runtime scaling with twice as many processors

    Get PDF
    Neuron tree topology equations can be split into two subtrees and solved on different processors with no change in accuracy, stability, or computational effort; communication costs involve only sending and receiving two double precision values by each subtree at each time step. Splitting cells is useful in attaining load balance in neural network simulations, especially when there is a wide range of cell sizes and the number of cells is about the same as the number of processors. For compute-bound simulations load balance results in almost ideal runtime scaling. Application of the cell splitting method to two published network models exhibits good runtime scaling on twice as many processors as could be effectively used with whole-cell balancing
    corecore