Giter Site home page Giter Site logo

tianjuchen / neml Goto Github PK

View Code? Open in Web Editor NEW

This project forked from argonne-national-laboratory/neml

0.0 0.0 0.0 22.49 MB

Modular consitutive modeling library for structural materials

License: Other

CMake 0.54% Python 28.27% C++ 70.24% Fortran 0.73% C 0.13% Shell 0.09%

neml's Introduction

NEML: the Nuclear Engineering material Model Library

Documentation Status Test Status

Documentation Status Test Status

NEML (the Nuclear Engineering Material model Library) is a tool for creating and running structural material models. While it was originally developed to model high temperature nuclear reactors, the tool is general enough to apply to most types of structural materials.

The focus of NEML is on modularity and extensibility. The library is structured so that adding a new feature to an existing material model should be as simple as possible and require as little code as possible.

NEML material models are modular -- they are built up from smaller pieces into a complete model. For example, a model might piece together a temperature-dependent elasticity model, a yield surface, a flow rule, and several hardening rules. Each of these submodels is independent of the other objects so that, for example, switching from conventional J2 plasticity to a J2 theory requires only a one line change in an input file, if the model is already implemented, or a relatively small amount of coding to add the new yield surface if it has not been implemented. All of these objects are interchangeable. For example, the damage, viscoplastic, and rate-independent plasticity models all use the same yield (flow) surfaces, hardening rules, elasticity models, and so on.

As part of this philosophy, the library only requires new components provide a few partial derivatives and NEML uses this information to assemble the Jacobian needed to do a fully implement, backward Euler integration of the ordinary differential equations comprising the model form and to provide the algorithmic tangent needed to integrate the model into an implicit finite element framework.

Documentation and tutorials are available here.

License

The library is provided under an MIT license found in the LICENSE file.

The NEML distribution contains a copy of the pybind11 header library, which has its own license contained in the pybind11 subdirectory.

The NEML distribution contains a copy of the rapidxml header library, which has its own license contained in the rapidxml subdirectory.

Python package

The python package version of the software available on PiPy requires:

  1. A working C++ compiler.
  2. Linkable version of BLAS and LAPACK.

This version does not support multithreading or linking with external C/C++/Fortran codes.

neml's People

Contributors

reverendbedford avatar tianjuchen avatar bwspenc avatar janzenchoi avatar arovinelli avatar hugary1995 avatar chakra34 avatar dschwen avatar dylanjm avatar lynnmunday avatar maxnezdyur avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.