DAMASK_EICMD/processing/make_public

62 lines
1.5 KiB
Python
Executable File

#!/usr/bin/env python
# Makes the postprocessing routines acessible from everywhere.
# you need a ~/bin directory in your home folder
# add the bin directory to your path by adding the following lines
# to your .bashrc file:
# PATH="$PATH:~/bin"
# export PATH
import os,sys,glob
bin_link = { \
'pre' : [
'marc_addUserOutput',
'mentat_pbcOnBoxMesh',
'mentat_patchFromReconstructedBoundaries',
'mentat_spectralBox',
'voronoi_randomSeeding',
'voronoi_tessellation',
],
'post' : [
'postResults',
'3Dvisualize',
'mentat_colorMap',
],
}
compile = { \
'pre' : [
'voronoi_randomSeeding.f90',
'voronoi_tessellation.f90',
],
'post' : [
],
}
homedir = os.getenv('HOME')
basedir = os.path.dirname(sys.argv[0])
for dir in bin_link:
for file in bin_link[dir]:
src = os.path.abspath(os.path.join(basedir,dir,file))
if (file == ''):
dst = os.path.abspath(os.path.join(homedir,'bin',dir))
else:
dst = os.path.abspath(os.path.join(homedir,'bin',file))
print src,'-->',dst
if os.path.lexists(dst):
os.remove(dst)
os.symlink(src,dst)
for dir in compile:
for file in compile[dir]:
src = os.path.abspath(os.path.join(basedir,dir,file))
if os.path.isfile(src):
print file
os.system('ifort -O3 -parallel -o%s %s'%(os.path.splitext(src)[0],src))
modules = glob.glob(os.path.abspath(os.path.join(basedir,'*.mod')))
for module in modules:
print module
os.remove(module)