Source code for td_init

#!/usr/bin/env python
# -*- coding: utf-8 -*-
'''
init_sim.py
initialize a new simulation directory structure using `pwd` as the root
directory.
If there are files present in this directory defined in the directory
structure, they will me moved to the corresponding directories
command -s: if this parameter reads "silent", don't print any warnings.
'''
import os
import shutil
from optparse import OptionParser

import crtomo.cfg


[docs] def handle_cmd_options(): ''' Get the options from the command line. ''' parser = OptionParser() parser.add_option("-s", "--silent", action="store_true", dest="silent", help="print any warnings", default=False) (options, args) = parser.parse_args() return options, args
[docs] def move(fname, folder, options): """Move file to dir if existing """ if os.path.isfile(fname): shutil.move(fname, folder) else: if options.silent is False: print('{0} missing'.format(fname))
[docs] def main(): (options, args) = handle_cmd_options() for i in ['config', 'exe', 'grid', 'mod', 'mod/sens', 'mod/pot', 'inv', 'rho']: os.mkdir(i) files = ['config.dat', 'elem.dat', 'elec.dat', 'rho.dat', 'volt.dat', 'crt.noisemod', 'decoupling.dat'] folders = ['config', 'grid', 'grid', 'rho', 'mod', 'exe', 'exe'] for i, j in zip(files, folders): move(i, j, options) if os.path.isfile('crmod.cfg'): shutil.move('crmod.cfg', 'exe') elif os.path.isfile('config/config.dat'): # only copy the crmod.cfg file if a config.dat file exists cfg = crtomo.cfg.crmod_config() cfg.write_to_file('exe/crmod.cfg') if os.path.isfile('crtomo.cfg'): shutil.move('crtomo.cfg', 'exe') else: cfg = crtomo.cfg.crtomo_config() cfg.write_to_file('exe/crtomo.cfg')
if __name__ == '__main__': main()