Libs not needed (got back during merge)

This commit is contained in:
Martin Diehl 2016-06-27 15:43:04 +02:00
parent 259ee072a6
commit a3a36ead39
2 changed files with 79 additions and 91 deletions

View File

@ -351,7 +351,7 @@ DAMASK_spectral.o: INTERFACENAME := spectral_interface.f90
SPECTRAL_SOLVER_FILES = spectral_mech_AL.o spectral_mech_Basic.o spectral_mech_Polarisation.o \ SPECTRAL_SOLVER_FILES = spectral_mech_AL.o spectral_mech_Basic.o spectral_mech_Polarisation.o \
spectral_thermal.o spectral_damage.o spectral_thermal.o spectral_damage.o
SPECTRAL_FILES = C_routines.o system_routines.o prec.o DAMASK_interface.o IO.o libs.o numerics.o debug.o math.o \ SPECTRAL_FILES = C_routines.o system_routines.o prec.o DAMASK_interface.o IO.o numerics.o debug.o math.o \
FEsolving.o mesh.o material.o lattice.o \ FEsolving.o mesh.o material.o lattice.o \
$(SOURCE_FILES) $(KINEMATICS_FILES) $(PLASTIC_FILES) constitutive.o \ $(SOURCE_FILES) $(KINEMATICS_FILES) $(PLASTIC_FILES) constitutive.o \
crystallite.o \ crystallite.o \
@ -401,7 +401,7 @@ DAMASK_FEM.exe: INCLUDE_DIRS += -I./
FEM_SOLVER_FILES = FEM_mech.o FEM_thermal.o FEM_damage.o FEM_vacancyflux.o FEM_porosity.o FEM_hydrogenflux.o FEM_SOLVER_FILES = FEM_mech.o FEM_thermal.o FEM_damage.o FEM_vacancyflux.o FEM_porosity.o FEM_hydrogenflux.o
FEM_FILES = prec.o DAMASK_interface.o FEZoo.o IO.o libs.o numerics.o debug.o math.o \ FEM_FILES = prec.o DAMASK_interface.o FEZoo.o IO.o numerics.o debug.o math.o \
FEsolving.o mesh.o material.o lattice.o \ FEsolving.o mesh.o material.o lattice.o \
$(SOURCE_FILES) $(KINEMATICS_FILES) $(PLASTIC_FILES) constitutive.o \ $(SOURCE_FILES) $(KINEMATICS_FILES) $(PLASTIC_FILES) constitutive.o \
crystallite.o \ crystallite.o \
@ -612,9 +612,6 @@ debug.o: debug.f90 \
numerics.o numerics.o
numerics.o: numerics.f90 \ numerics.o: numerics.f90 \
libs.o
libs.o: libs.f90 \
IO.o IO.o
IO.o: IO.f90 \ IO.o: IO.f90 \

View File

@ -44,13 +44,10 @@ contains
!> @brief initializes the solver by interpreting the command line arguments. Also writes !> @brief initializes the solver by interpreting the command line arguments. Also writes
!! information on computation to screen !! information on computation to screen
!-------------------------------------------------------------------------------------------------- !--------------------------------------------------------------------------------------------------
subroutine DAMASK_interface_init(loadCaseParameterIn,geometryParameterIn) subroutine DAMASK_interface_init()
use, intrinsic :: iso_fortran_env ! to get compiler_version and compiler_options (at least for gfortran 4.6 at the moment) use, intrinsic :: iso_fortran_env ! to get compiler_version and compiler_options (at least for gfortran 4.6 at the moment)
implicit none implicit none
character(len=1024), optional, intent(in) :: &
loadCaseParameterIn, & !< if using the f2py variant, the -l argument of DAMASK_spectral.exe
geometryParameterIn !< if using the f2py variant, the -g argument of DAMASK_spectral.exe
character(len=1024) :: & character(len=1024) :: &
commandLine, & !< command line call as string commandLine, & !< command line call as string
loadCaseArg ='', & !< -l argument given to DAMASK_spectral.exe loadCaseArg ='', & !< -l argument given to DAMASK_spectral.exe
@ -105,88 +102,82 @@ subroutine DAMASK_interface_init(loadCaseParameterIn,geometryParameterIn)
write(6,'(/,a)') ' <<<+- DAMASK_interface init -+>>>' write(6,'(/,a)') ' <<<+- DAMASK_interface init -+>>>'
#include "compilation_info.f90" #include "compilation_info.f90"
endif mainProcess endif mainProcess
if ( present(loadcaseParameterIn) .and. present(geometryParameterIn)) then ! both mandatory parameters given in function call call get_command(commandLine)
geometryArg = geometryParameterIn chunkPos = IIO_stringPos(commandLine)
loadcaseArg = loadcaseParameterIn do i = 1, chunkPos(1)
commandLine = 'n/a' tag = IIO_lc(IIO_stringValue(commandLine,chunkPos,i)) ! extract key
else if ( .not.( present(loadcaseParameterIn) .and. present(geometryParameterIn))) then ! none parameters given in function call, trying to get them from command line select case(tag)
call get_command(commandLine) case ('-h','--help')
chunkPos = IIO_stringPos(commandLine) mainProcess2: if (worldrank == 0) then
do i = 1, chunkPos(1) write(6,'(a)') ' #######################################################################'
tag = IIO_lc(IIO_stringValue(commandLine,chunkPos,i)) ! extract key write(6,'(a)') ' DAMASK_spectral:'
select case(tag) write(6,'(a)') ' The spectral method boundary value problem solver for'
case ('-h','--help') write(6,'(a)') ' the Düsseldorf Advanced Material Simulation Kit'
mainProcess2: if (worldrank == 0) then write(6,'(a,/)')' #######################################################################'
write(6,'(a)') ' #######################################################################' write(6,'(a,/)')' Valid command line switches:'
write(6,'(a)') ' DAMASK_spectral:' write(6,'(a)') ' --geom (-g, --geometry)'
write(6,'(a)') ' The spectral method boundary value problem solver for' write(6,'(a)') ' --load (-l, --loadcase)'
write(6,'(a)') ' the Düsseldorf Advanced Material Simulation Kit' write(6,'(a)') ' --workingdir (-w, --wd, --workingdirectory, -d, --directory)'
write(6,'(a,/)')' #######################################################################' write(6,'(a)') ' --restart (-r, --rs)'
write(6,'(a,/)')' Valid command line switches:' write(6,'(a)') ' --regrid (--rg)'
write(6,'(a)') ' --geom (-g, --geometry)' write(6,'(a)') ' --help (-h)'
write(6,'(a)') ' --load (-l, --loadcase)' write(6,'(/,a)')' -----------------------------------------------------------------------'
write(6,'(a)') ' --workingdir (-w, --wd, --workingdirectory, -d, --directory)' write(6,'(a)') ' Mandatory arguments:'
write(6,'(a)') ' --restart (-r, --rs)' write(6,'(/,a)')' --geom PathToGeomFile/NameOfGeom.geom'
write(6,'(a)') ' --regrid (--rg)' write(6,'(a)') ' Specifies the location of the geometry definition file,'
write(6,'(a)') ' --help (-h)' write(6,'(a)') ' if no extension is given, .geom will be appended.'
write(6,'(/,a)')' -----------------------------------------------------------------------' write(6,'(a)') ' "PathToGeomFile" will be the working directory if not specified'
write(6,'(a)') ' Mandatory arguments:' write(6,'(a)') ' via --workingdir.'
write(6,'(/,a)')' --geom PathToGeomFile/NameOfGeom.geom' write(6,'(a)') ' Make sure the file "material.config" exists in the working'
write(6,'(a)') ' Specifies the location of the geometry definition file,' write(6,'(a)') ' directory.'
write(6,'(a)') ' if no extension is given, .geom will be appended.' write(6,'(a)') ' For further configuration place "numerics.config"'
write(6,'(a)') ' "PathToGeomFile" will be the working directory if not specified' write(6,'(a)')' and "numerics.config" in that directory.'
write(6,'(a)') ' via --workingdir.' write(6,'(/,a)')' --load PathToLoadFile/NameOfLoadFile.load'
write(6,'(a)') ' Make sure the file "material.config" exists in the working' write(6,'(a)') ' Specifies the location of the load case definition file,'
write(6,'(a)') ' directory.' write(6,'(a)') ' if no extension is given, .load will be appended.'
write(6,'(a)') ' For further configuration place "numerics.config"' write(6,'(/,a)')' -----------------------------------------------------------------------'
write(6,'(a)')' and "numerics.config" in that directory.' write(6,'(a)') ' Optional arguments:'
write(6,'(/,a)')' --load PathToLoadFile/NameOfLoadFile.load' write(6,'(/,a)')' --workingdirectory PathToWorkingDirectory'
write(6,'(a)') ' Specifies the location of the load case definition file,' write(6,'(a)') ' Specifies the working directory and overwrites the default'
write(6,'(a)') ' if no extension is given, .load will be appended.' write(6,'(a)') ' "PathToGeomFile".'
write(6,'(/,a)')' -----------------------------------------------------------------------' write(6,'(a)') ' Make sure the file "material.config" exists in the working'
write(6,'(a)') ' Optional arguments:' write(6,'(a)') ' directory.'
write(6,'(/,a)')' --workingdirectory PathToWorkingDirectory' write(6,'(a)') ' For further configuration place "numerics.config"'
write(6,'(a)') ' Specifies the working directory and overwrites the default' write(6,'(a)')' and "numerics.config" in that directory.'
write(6,'(a)') ' "PathToGeomFile".' write(6,'(/,a)')' --restart XX'
write(6,'(a)') ' Make sure the file "material.config" exists in the working' write(6,'(a)') ' Reads in total increment No. XX-1 and continues to'
write(6,'(a)') ' directory.' write(6,'(a)') ' calculate total increment No. XX.'
write(6,'(a)') ' For further configuration place "numerics.config"' write(6,'(a)') ' Appends to existing results file '
write(6,'(a)')' and "numerics.config" in that directory.' write(6,'(a)') ' "NameOfGeom_NameOfLoadFile.spectralOut".'
write(6,'(/,a)')' --restart XX' write(6,'(a)') ' Works only if the restart information for total increment'
write(6,'(a)') ' Reads in total increment No. XX-1 and continues to' write(6,'(a)') ' No. XX-1 is available in the working directory.'
write(6,'(a)') ' calculate total increment No. XX.' write(6,'(/,a)')' --regrid XX'
write(6,'(a)') ' Appends to existing results file ' write(6,'(a)') ' Reads in total increment No. XX-1 and continues to'
write(6,'(a)') ' "NameOfGeom_NameOfLoadFile.spectralOut".' write(6,'(a)') ' calculate total increment No. XX.'
write(6,'(a)') ' Works only if the restart information for total increment' write(6,'(a)') ' Attention: Overwrites existing results file '
write(6,'(a)') ' No. XX-1 is available in the working directory.' write(6,'(a)') ' "NameOfGeom_NameOfLoadFile.spectralOut".'
write(6,'(/,a)')' --regrid XX' write(6,'(a)') ' Works only if the restart information for total increment'
write(6,'(a)') ' Reads in total increment No. XX-1 and continues to' write(6,'(a)') ' No. XX-1 is available in the working directory.'
write(6,'(a)') ' calculate total increment No. XX.' write(6,'(/,a)')' -----------------------------------------------------------------------'
write(6,'(a)') ' Attention: Overwrites existing results file ' write(6,'(a)') ' Help:'
write(6,'(a)') ' "NameOfGeom_NameOfLoadFile.spectralOut".' write(6,'(/,a)')' --help'
write(6,'(a)') ' Works only if the restart information for total increment' write(6,'(a,/)')' Prints this message and exits'
write(6,'(a)') ' No. XX-1 is available in the working directory.' call quit(0_pInt) ! normal Termination
write(6,'(/,a)')' -----------------------------------------------------------------------' endif mainProcess2
write(6,'(a)') ' Help:' case ('-l', '--load', '--loadcase')
write(6,'(/,a)')' --help' loadcaseArg = IIO_stringValue(commandLine,chunkPos,i+1_pInt)
write(6,'(a,/)')' Prints this message and exits' case ('-g', '--geom', '--geometry')
call quit(0_pInt) ! normal Termination geometryArg = IIO_stringValue(commandLine,chunkPos,i+1_pInt)
endif mainProcess2 case ('-w', '-d', '--wd', '--directory', '--workingdir', '--workingdirectory')
case ('-l', '--load', '--loadcase') workingDirArg = IIO_stringValue(commandLine,chunkPos,i+1_pInt)
loadcaseArg = IIO_stringValue(commandLine,chunkPos,i+1_pInt) case ('-r', '--rs', '--restart')
case ('-g', '--geom', '--geometry') spectralRestartInc = IIO_IntValue(commandLine,chunkPos,i+1_pInt)
geometryArg = IIO_stringValue(commandLine,chunkPos,i+1_pInt) appendToOutFile = .true.
case ('-w', '-d', '--wd', '--directory', '--workingdir', '--workingdirectory') case ('--rg', '--regrid')
workingDirArg = IIO_stringValue(commandLine,chunkPos,i+1_pInt) spectralRestartInc = IIO_IntValue(commandLine,chunkPos,i+1_pInt)
case ('-r', '--rs', '--restart') appendToOutFile = .false.
spectralRestartInc = IIO_IntValue(commandLine,chunkPos,i+1_pInt) end select
appendToOutFile = .true. enddo
case ('--rg', '--regrid')
spectralRestartInc = IIO_IntValue(commandLine,chunkPos,i+1_pInt)
appendToOutFile = .false.
end select
enddo
endif
if (len(trim(loadcaseArg)) == 0 .or. len(trim(geometryArg)) == 0) then if (len(trim(loadcaseArg)) == 0 .or. len(trim(geometryArg)) == 0) then
write(6,'(a)') ' Please specify geometry AND load case (-h for help)' write(6,'(a)') ' Please specify geometry AND load case (-h for help)'