Commit Graph

56 Commits

Author SHA1 Message Date
Pratheek Shanthraj 590eb31ed0 some more renaming or thermal related routines 2014-09-26 18:07:48 +00:00
Pratheek Shanthraj dabfa6d2e6 renamed get/put thermal to get/put temperature and thermal_none to thermal_isothermal 2014-09-26 16:07:26 +00:00
Pratheek Shanthraj c2c5c0c521 subsumed constitutive_damage/thermal into constitutive 2014-09-23 10:38:20 +00:00
Pratheek Shanthraj c029554c31 better naming damage_local --> damage_brittle 2014-09-23 08:43:16 +00:00
Pratheek Shanthraj bb7f9be6ea remove obsolete constitutive field modules 2014-09-22 20:57:12 +00:00
Martin Diehl ea66511160 added dislokmc (dislotwin modification) 2014-08-08 11:04:40 +00:00
Martin Diehl fa45ef456e fixed commercial FEM interfaces to work with damage_local 2014-08-04 18:18:28 +00:00
Luv Sharma d5952138e3 corrected wrong dimensions of aTolstate and inclusion order of files in abaqus and marc interfaces 2014-07-03 12:52:33 +00:00
Luv Sharma 499eb7cdbe included damage and thermal files in Abaqus and Marc intefaces 2014-07-03 10:59:27 +00:00
Martin Diehl 4bb5439994 removed copyright from *.f90 and *.f files, will be added using the deployMe script for release/nightly build. Now based on presence of svn:keywords property set (usually "Id"). Similar thing will be done for .py, .sh, and .config files but more involved because they might be executable 2014-03-29 08:20:36 +00:00
Martin Diehl 5d4017bbfc introduced homogenization_none to substitute isostrain with ngrains 1.
cleaned up homogenization isostrain (has no state)
2014-03-13 23:20:50 +00:00
Martin Diehl 1c7ed337d7 corrected linebreak in comment 2013-10-17 12:52:46 +00:00
Franz Roters 4d184b1ee4 improved comments 2013-10-14 14:35:41 +00:00
Philip Eisenlohr a2169e338f fixed type-casting problems (mainly with Lib_VTK_IO) 2013-09-26 17:21:46 +00:00
Christoph Kords 3fcc00910c fixed bug that occured under marc (and abaqus?) with openmp:
"lastLovl" (for marc) and "lastStep" (for abaqus) have to be global module variables in FEsolving.f90 instead of local variables in the respective DAMASK_* files; otherwise they are initialized with zero each time hypela2/umat is called.
2013-08-08 12:53:03 +00:00
Christoph Kords 9f0fe873ba plain mode (no ping pong) now seems to work for marc, further testing needed
regular sequence of computation modes is
inc 0: 1,1,1,…
inc 1: 0,0,0,…
          7,1,1,…
          0,0,0,…
          1,1,1,…
and so on

after a cutback the computation modes follow as
inc 5: 8,0,0,…
          1,1,1,…
          0,0,0,…
          1,1,1,…
2013-08-02 16:19:45 +00:00
Christoph Kords fa3be9a967 corrected lastLovl introduced in rev2593 2013-08-02 15:44:28 +00:00
Christoph Kords 8d6b840802 removed variable lastMode from FE_solving, used to be used for detection of first call after ping pong; now this is done by checking for a change in the lovl (macro) or a change in the calculation step (abaqus) 2013-08-02 13:28:50 +00:00
Christoph Kords 7d2206356e parallelExecution flag now passed as input variable by CPFEM_general; flag is set on the solver level (DAMASK_abaqus_exp.f, DAMASK_marc.f90, etc.) 2013-08-02 11:20:11 +00:00
Martin Diehl 0f1bb4f555 corrected doxygen documentation tags 2013-06-25 06:08:33 +00:00
Martin Diehl 2a5dfbbfa0 removed #define Marc and substituted #ifdef Marc by #ifdef Marc4DAMASK which is defined by either the submit scripts or DAMASK_marcXXXX.f90 2013-04-30 09:49:30 +00:00
Christoph Kords 650b7ef4ac added python script that produces vtk files with the (node based and ip based) deformed mesh from marc output file 2013-04-23 18:30:56 +00:00
Christoph Kords 51552b027d fixed bug: initialize computation mode to zero, used to be unset for lovl=4 and not(timinc < theDelta .and. theInc == inc), which unpredictably caused trouble with marc 2013-04-23 14:42:22 +00:00
Martin Diehl 8da7544978 marc doesn't need error prone setup_code any more, moved Marc includes from code/include to lib/includeMarc
DAMASK_marcXXXX.f90 now is not a copy any more but contains one definition and an include statement

setup_code of spectral solver is now replaced by the standard 1) configure 2) make 3) make install
2013-04-22 14:41:33 +00:00
Christoph Kords 60fa91be9a calculation of cellnode positions now available in python via damask.core
first call damask.core.mesh.mesh_init_postprocessing(meshfilename) to initialize all necessary mesh variables
then damask.core.mesh.mesh_build_cellnodes(nodes) calculates the cellnode positions for a given list of node positions
the meshfile that is needed for the init is created automatically by mesh_init in DAMASK

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
For marc simulations, run
 ./code/setup/setup_code.sh
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2013-04-21 18:48:59 +00:00
Martin Diehl 6b46a9c338 introduced output of initial geometry (vtk file) to mesh 2013-04-18 16:40:49 +00:00
Christoph Kords 2a6ac44496 Major restructuring of mesh.f90 due to introduction of "cells". A cell is the volume (area in 2D elements) that surrounds an ip. It is described by up to 8 cell nodes and is used to calculate ip volume, area, and face normals. It can also be used to generate a mesh for e.g. paraview that contains ip output as cell centered data.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
For marc simulations, run
 ./code/setup/setup_code.sh
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2013-04-15 08:13:20 +00:00
Martin Diehl 924d943edc simplified interface of CPFEM_general (removed P and F, made cs and dcs/dE optional)
commented and cleaned up the marc interface.

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
For marc simulations, run
 ./code/setup/setup_code.sh
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2013-04-09 10:08:00 +00:00
Franz Roters 02f092492e updated copyright header 2013-03-22 17:35:05 +00:00
Martin Diehl ada2beb8b8 reorganized calculation modes for CPFEM, now having better readable and cleaner structure 2013-03-01 11:48:29 +00:00
Martin Diehl 04c2b22766 removed time information from interface routines, should work now 2013-02-26 12:49:07 +00:00
Martin Diehl 9ec87e8d1f moved include statement of IO.f90 before corresponding use statement, still untested 2013-02-26 06:28:28 +00:00
Pratheek Shanthraj 07ff1f7c93 reporting current time for most module inits 2013-02-25 16:34:59 +00:00
Philip Eisenlohr d189a6a7a0 polishing 2012-11-21 16:57:57 +00:00
Philip Eisenlohr d9a98417ca switched element library to geomType based.
saves to copy same geometry description for different elements that are essentially similar regarding the IP number but differ in total node count.

introduced quadratic tetrahedron (Marc element 127 -- element 157 might also work, but did not perform well in fully elastic calc so far)
2012-11-15 22:45:20 +00:00
Christoph Kords aec163941d calculate ip coordinates only once when the first ip enters calculation mode 2012-11-15 12:31:39 +00:00
Martin Diehl 7e683ca7c3 removed coordinates from call to CPFEM_general and introduced direct storage of coordinates to mesh_ipCoordinates 2012-11-14 14:38:10 +00:00
Martin Diehl a86d528a4a replaced call flush(6) by flush(6), slightly improved formating for output of gfortran version 2012-11-06 15:50:20 +00:00
Martin Diehl 6301787df4 moved the the variable cutBack from FEsolving.f90 (where it was not used at all) to the interface routines to make responsibility of cut back control clear
PLEASE RUN setup_code.py IF YOU DO MARC SIMULATIONS, THE INTERFACE HAS CHANGED
2012-10-02 12:46:58 +00:00
Martin Diehl 73349d02f5 merged precision info into the file prec.f90 and removed prec_single.f90
precision information is now parsed as a makro, defined by the compiler, eg. -DFLOAT=8 for 8 byte long floats or -- in case no values is given -- for the FEM wrapper by the interface files.

Please don't forget to run setup_code.py  !!!!!!!!!!!

abaqus_v6.env is adjusted to specify the standard precision (float=8, int=4) and got some extra compilation options, some deprecated warning supressors are removed

Optional Marc modification will follow that allow automatic selection of suitable precision
2012-08-28 16:08:17 +00:00
Franz Roters 823013d485 new plasticity: none
see material.config for necessary parameters (lattice_structure, elastic constants)
2012-07-03 11:16:38 +00:00
Martin Diehl b2fd3e1180 introduced preprocessor identifiers Marc, Abaqus, and Spectral to enable conditional compilation. This allows deleted dummy functions that are used by one solver only.
Mainly affected modules are IO and mesh. Most of the changes in mesh result from reordering the functions when grouping them depending on their solver.
Further advantage is that FE solver do not need FFTW and kdtree2 anymore. The include files for these two libraries moved to DAMASKROO/lib now as I figured out how to use a include path in the Makefile.
Put all the files I got when testing compilation with abaqus in a folder which to become the abaqus compilation test.
2012-06-15 16:10:21 +00:00
Franz Roters 7754416b35 now both getSolverJobName and getSolverWorkingDirectoryName use unit 5! 2012-06-13 09:58:06 +00:00
Franz Roters a5c27f22ca now uses unit 5 for file name inquiery (unit 6 points to stdout in 2012, might be a bug though) 2012-06-13 07:28:43 +00:00
Franz Roters 5b7f2e122e fixed usage of OpenMP function library 2012-06-12 09:44:05 +00:00
Martin Diehl bd9667bd4b added new, flexible debugging scheme.
now all modules have their own debug specification.
compiles and runs, I hope nothing is broken
did a lot of polishing
2012-03-08 20:25:28 +00:00
Christoph Kords c786336af3 reordered (and partly redistributed) error message identifiers, deleted those which are not in use anymore.
all constitutive as well numerics now raises an error, if an unknown keyword is found in the respective config file
2012-02-13 17:41:27 +00:00
Martin Diehl 156ec4582a polishing, adding _pInt etc. where applicable
post_results now handels zero increment different (like FEM, it is always there even if it is not counted)
2012-02-13 14:18:07 +00:00
Martin Diehl c5128e94eb some f2008 standard related correction i didn't check in last time 2012-02-01 20:20:05 +00:00
Martin Diehl 800e291240 made code standard conform to Fortran 2008 (ignoring warning concerning comments beyond character 132). Basically, changing "x" format specifier to "Nx" ("1x") plus removing $ format specifier
added compiler switches for gfortran and ifort to check for standard conformity
old gnu compilers <4.4 are not longer supported because they don't provide the c binding for fftw
2012-01-31 19:18:55 +00:00