Copyright (c) 2007-2009 Lawrence Livermore National Security, LLC. Produced at the Lawrence Livermore National Laboratory (Nathan Barton ) CODE-OCEC-08-104. Please also read the file NOTICES. This file is part of the mdef package (revision 0.2) and is free software: you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. A copy of the GNU Lesser General Public License may be found in the file NOTICES. If this file is missing, see . ###################################################################### This package contains the following sub-packages: (*) utilIO: library for serialization and file input/output (*) mdefFUtil: library of fortran utility routines (*) tprof: library for profiling (*) femODF: Provides tools for working with probability density functions, primarily over orientation space and pole figures. Primarily based on standard finite element methods. (*) asf (adaptive sampling framework): Provides the guts of the adaptive sampling algorithm that has been used in multi-scale modeling of material strength. Database storage is based on a metric tree, and there are implementations using kriging (mkri) and ellipsoid-of-accuracy based interpolants (mell). The asf package also provides some utilities, such as a class for doing parallel input. (*) matlib: Provides the guts of material models based on crystal elasto-viscoplasticity. Most often used models are evptn, evpgl, and evppg. This package also provides guts for rigid-viscoplasticity. The mspB subdirectory builds mspB interfaces to the crystal models, and these interfaces can be used from the python based material point simulator. (*) coupler: Provides multi-scale material models based on polycrystal plasticity and adaptive sampling. Builds libraries and executables for use in MPMD parallelism. (*) mspBCases: library wrapping various mspB implementations; meant primarily to serve as a single point of contact for compiled programs which are going to use mspB material models (*) tools: Tools for using the material models, working with orientation distribution functions, comparison to diffraction based experimental data, and the like. ###################################################################### If you have this software, you are on the bleeding edge of material model development! We are working on packaging the software to install more easily on linux-like systems, including OSX, but we still have a ways to go. You will need to have installed: (*) Fortran 90 (*) Babel (in ./contrib) (*) hdf5, built with shared library support (*) scipy (python package for scientific applications) Optional packages: (*) boost and mtl if you want to build asf (*) Coop if you want to use MPMD parallelism (*) dx (http://opendx.org) if you want graphics for pole figures, orientation distribution functions and the like (*) units if you want to use the python tool for unit conversions Some details related to particular system types are listed below. The build system uses a mixture of a python based build tool and autoconf and friends for the asf sub-package. ########## # LC If you have access to the Livermore Computing machines (http://computing.llnl.gov), the mdef package is installed in /usr/apps/mdef/stable on some of the computing platforms. ########## # OSX and linux Currently, asf has not been fully ported to build under Mac OSX. But much of the other code does build. This probably holds for other linux-like platforms. On OSX, you can grab many of the things you need, as necessary, from fink (http://finkproject.org) and superpack (http://macinscience.org or http://www.scipy.org/Download). The superpack distribution provides scipy. Note that (as of 3/18/2009) the gfortran that comes with superpack is fine, but you will want to build babel against the newer gfortran from fink, so the fink gfortran (/sw/bin/gfortran) should show up first in your path. From fink, get: hdf5 hdf5-shlib gfortran openmpi openmpi-dev boost1.33 atlas units Note that you want to use babel with the 'native' python on OSX, not the fink version. The fink build does not play nicely with babel. If you need to build babel (highly likely if you have your own machine), untar the file in contrib and do something like: ./configure --prefix=/usr/local PYTHON=/usr/bin/python --with-mpi make sudo make install If you want asf to build, you will also need to install boost and mtl. But nevermind about that for now as asf does not yet build under OSX anyway. ########## To install without asf, do something like: tar -zxf mdef-0.2.tar.gz export MDEF_TOOLS_PREFIX=`pwd`/tools export PYTHONPATH=$MDEF_TOOLS_PREFIX/python/buildScripts:$MDEF_TOOLS_PREFIX/python/babel export PATH=$PATH:$MDEF_TOOLS_PREFIX/python/buildScripts:$MDEF_TOOLS_PREFIX/python/buildScripts/buildMake export AWKPATH=$MDEF_TOOLS_PREFIX/python/buildScripts/buildMake python ./tools/python/buildScripts/buildMatlib.py --packageBaseDir=`pwd`/packages --no-coop --install-dir=$HOME/mdef ... and then go and get a cup of coffee, as it will take a while to build. There is a material point simulator in tools/python/pyMps with some examples. Try doing, in a bash shell: . ~/mdef/*/bin/setup.sh cd tools/python/pyMps ./main.py --prob-name=ex1EvptnTi64 -l fne_alpha.in -l ti_alpha_lumped.quats_wts -l fne_beta.in -l ti_beta_lumped.quats_wts -l ex1.py --exec='evpcModelName="evptnTi64"' --exec='doMonotonic=True' --exec='doCyclic=False' --exec-file=ex1.py --in-scratch Output should be in mpsRun_ex1EvptnTi64 (a symbolic link to a scratch directory). This tests a relatively small subset of the functionality. Future releases may have a more comprehensive set of examples. For now, you are stuck contacting us to get examples with nice graphical outputs, fancier driver scripts, sample material model inputs, and whatever else. ########## To build/install with asf, do something like: tar -zxf mdef-0.2.tar.gz mkdir packages/ cd packages mkdir hdf5 ln -s hdf5/1.6.5 ln -s boost-1_33 ln -s mtl cd .. python ./tools/python/buildScripts/buildCoupler.py --packageBaseDir=`pwd`/packages --no-coop --install-dir=$HOME/mdef ###################################################################### For electronic versions of relevant published articles, see: (*) http://www3.interscience.wiley.com/journal/108567238/issue (*) http://dx.doi.org/10.1115/1.2884331 (*) http://dx.doi.org/10.1016/j.ijplas.2007.03.004 (*) http://stacks.iop.org/0965-0393/13/707 (*) http://stacks.iop.org/0965-0393/15/369 (*) http://dx.doi.org/10.1080/073033002100000182 (*) http://dx.doi.org/10.1115/1.2870234 ###################################################################### For more information, contact: Nathan Barton Lawrence Livermore National Laboratory