9 research outputs found

    On lazy evaluation as a tool to optimize the efficiency of large scale numerical simulations in Python

    Get PDF
    Scientists working on mathematical models want to concentrate on the design of models. They pay little attention to numerical methods such as the finite element method (FEM), their implementation and parallelization. The escript module in python provides an environment in which scientists can define new models using a language of partial differential equation (PDE) and spatial functions which is natural for the formulation of continuous models. This approach defines a high level of abstraction from the underlying data structures and frees modelers from issues of optimized implementation and parallelization. In its current implementation escript evaluates expressions which define PDE coefficients immediately for all nodes or elements of an FEM mesh. In the paper we will demonstrate that for complex rheologies such as the Drucker-Prager plasticity model, the memory requirements for this strategy are the limiting factor for scaling up the mesh size. The python module is backed by an escript C++ library where the processing is performed. We will discuss an new extension to the PDE coefficient handling provided by this C++ library which uses a lazy evaluation technique and will demonstrate the efficiency of this new extension in terms of compute time and memory usage for a practical engineering application, namely the simulation of elastic-plastic, saturated porous media. (C) 2010 Published by Elsevier Ltd

    esys-Escript User’s Guide: Solving Partial Differential Equations with Escript and Finley Release - 3.2.1 (r3613)

    Get PDF
    esys.escript is a python-based environment for implementing mathematical models, in particular those based on coupled, non-linear, time-dependent partial differential equations. It consists of four major components • esys.escript core library • finite element solver esys.finley (which uses fast vendor-supplied solvers or our paso linear solver library) • the meshing interface esys.pycad • a model library. The current version supports parallelization through both MPI for distributed memory and OpenMP for distributed shared memory. Please see Chapter 2 for changes to the way to launch esys.escript scripts. For more info on this and other changes from previous releases see Appendix B. If you use this software in your research, then we would appreciate (but do not require) a citation. Some relevant references can be found in Appendix D

    esys-Escript User’s Guide: Solving Partial Differential Equations with Escript and Finley Release - 3.3.1 (r4302)

    Get PDF
    esys.escript is a python-based environment for implementing mathematical models, in particular those based on coupled, non-linear, time-dependent partial differential equations. It consists of five major components • esys.escript core library • finite element solver esys.finley (which uses fast vendor-supplied solvers or our paso linear solver library) • the meshing interface esys.pycad • a model library. • an inversion library. The current version supports parallelization through both MPI for distributed memory and OpenMP for distributed shared memory. In this release there are a number of small changes which are not backwards compatible. Please see Appendix B to see if your scripts will be affected. If you use this software in your research, then we would appreciate (but do not require) a citation. Some relevant references can be found in Appendix D. For Python3 support, see Appendix E

    esys-Escript User’s Guide: Solving Partial Differential Equations with Escript and Finley Release - 3.4.2 (r4925)

    Get PDF
    esys.escript is a python-based environment for implementing mathematical models, in particular those based on coupled, non-linear, time-dependent partial differential equations. It consists of five major components • esys.escript core library • finite element solver esys.finley (which uses fast vendor-supplied solvers or our paso linear solver library) • the meshing interface esys.pycad • a model library. • an inversion library. The current version supports parallelization through both MPI for distributed memory and OpenMP for shared memory. In this release there are a number of small changes which are not backwards compatible. Please see Appendix B to see if your scripts will be affected. If you use this software in your research, then we would appreciate (but do not require) a citation. Some relevant references can be found in Appendix D. For Python 3 support, see Appendix E

    esys-Escript User’s Guide: Solving Partial Differential Equations with Escript and Finley. Release - 3.4.1 (r4596)

    Get PDF
    esys.escript is a python-based environment for implementing mathematical models, in particular those based on coupled, non-linear, time-dependent partial differential equations. It consists of four major components • esys.escript core library • finite element solver esys.finley (which uses fast vendor-supplied solvers or our paso linear solver library) • the meshing interface esys.pycad • a model library. The current version supports parallelization through both MPI for distributed memory and OpenMP for distributed shared memory. Please see Chapter 2 for changes to the way to launch esys.escript scripts. For more info on this and other changes from previous releases see Appendix B. If you use this software in your research, then we would appreciate (but do not require) a citation. Some relevant references can be found in Appendix D

    esys-Escript User’s Guide: Solving Partial Differential Equations with Escript and Finley Release - 3.4 (r4488)

    Get PDF
    esys.escript is a python-based environment for implementing mathematical models, in particular those based on coupled, non-linear, time-dependent partial differential equations. It consists of five major components • esys.escript core library • finite element solver esys.finley (which uses fast vendor-supplied solvers or our paso linear solver library) • the meshing interface esys.pycad • a model library. • an inversion library. The current version supports parallelization through both MPI for distributed memory and OpenMP for distributed shared memory. In this release there are a number of small changes which are not backwards compatible. Please see Appendix B to see if your scripts will be affected. If you use this software in your research, then we would appreciate (but do not require) a citation. Some relevant references can be found in Appendix D. For Python3 support, see Appendix E

    esys-Escript User’s Guide: Solving Partial Differential Equations with Escript and Finley Release - 4.0 (r5402)

    Get PDF
    esys.escript is a python-based environment for implementing mathematical models, in particular those based on coupled, non-linear, time-dependent partial differential equations. It consists of five major components: • esys.escript core library • finite element solvers esys.finley, esys.dudley, esys.ripley, and esys.speckley (which use fast vendor-supplied solvers or the included PASO linear solver library) • the meshing interface esys.pycad • a model library • an inversion module. All esys.escript modules should work under both python 2 and python 3, see Appendix E. The current version supports parallelization through MPI for distributed memory, OpenMP for shared memory on CPUs, as well as CUDA for some GPU-based solvers. This release comes with some significant changes and new features. Please see Appendix B for a detailed list. If you use this software in your research, then we would appreciate (but do not require) a citation. Some relevant references can be found in Appendix D

    Numerical modelling of damage evolution and fracture propagation in brittle materials

    Get PDF
    corecore