Changeset c5074d2 in flex_extract.git for source/python
- Timestamp:
- Oct 9, 2018, 8:42:16 PM (6 years ago)
- Branches:
- master, ctbto, dev
- Children:
- aa275fc
- Parents:
- 0a06607
- Location:
- source/python
- Files:
-
- 4 edited
Legend:
- Unmodified
- Added
- Removed
-
source/python/_config.py
r0aaeb04 rc5074d2 38 38 TEMPFILE_INSTALL_COMPILEJOB = 'compilejob.template' 39 39 FILE_INSTALL_COMPILEJOB = 'compilejob.ksh' 40 TEMPFILE_INSTALL_JOB = 'job.temp .o'40 TEMPFILE_INSTALL_JOB = 'job.template' 41 41 TEMPFILE_JOB = 'job.temp' 42 42 FILE_JOB_OD = 'job.ksh' 43 43 FILE_JOB_OP = 'jopoper.ksh' 44 TEMPFILE_NAMELIST = 'convert.nl' 44 45 FILE_NAMELIST = 'fort.4' 45 46 FILE_GRIB_INDEX = 'date_time_stepRange.idx' -
source/python/classes/EcFlexpart.py
r0e576fc rc5074d2 658 658 659 659 660 def write_namelist(self, c , filename):660 def write_namelist(self, c): 661 661 ''' 662 662 @Description: … … 683 683 ''' 684 684 685 from genshi.template.text import NewTextTemplate 686 from genshi.template import TemplateLoader 687 688 loader = TemplateLoader(_config.PATH_TEMPLATES, auto_reload=False) 689 compile_template = loader.load(_config.TEMPFILE_NAMELIST, 690 cls=NewTextTemplate) 691 685 692 self.inputdir = c.inputdir 686 693 area = np.asarray(self.area.split('/')).astype(float) … … 692 699 maxb = int((area[0] - area[2]) / grid[0]) + 1 693 700 694 with open(self.inputdir + '/' + filename, 'w') as f: 695 f.write('&NAMGEN\n') 696 f.write(',\n '.join(['maxl = ' + str(maxl), 'maxb = ' + str(maxb), 697 'mlevel = ' + str(self.level), 698 'mlevelist = ' + '"' + str(self.levelist) 699 + '"', 700 'mnauf = ' + str(self.resol), 701 'metapar = ' + '77', 702 'rlo0 = ' + str(area[1]), 703 'rlo1 = ' + str(area[3]), 704 'rla0 = ' + str(area[2]), 705 'rla1 = ' + str(area[0]), 706 'momega = ' + str(c.omega), 707 'momegadiff = ' + str(c.omegadiff), 708 'mgauss = ' + str(c.gauss), 709 'msmooth = ' + str(c.smooth), 710 'meta = ' + str(c.eta), 711 'metadiff = ' + str(c.etadiff), 712 'mdpdeta = ' + str(c.dpdeta)])) 713 714 f.write('\n/\n') 701 stream = compile_template.generate( 702 maxl = str(maxl), 703 maxb = str(maxb), 704 mlevel = str(self.level), 705 mlevelist = str(self.levelist), 706 mnauf = str(self.resol), 707 metapar = '77', 708 rlo0 = str(area[1]), 709 rlo1 = str(area[3]), 710 rla0 = str(area[2]), 711 rla1 = str(area[0]), 712 momega = str(c.omega), 713 momegadiff = str(c.omegadiff), 714 mgauss = str(c.gauss), 715 msmooth = str(c.smooth), 716 meta = str(c.eta), 717 metadiff = str(c.etadiff), 718 mdpdeta = str(c.dpdeta) 719 ) 720 721 namelistfile = os.path.join(self.inputdir, _config.FILE_NAMELIST) 722 723 with open(namelistfile, 'w') as f: 724 f.write(stream.render('text')) 715 725 716 726 return -
source/python/install.py
r0aaeb04 rc5074d2 396 396 397 397 stream = compile_template.generate( 398 usergroup = ecgid, 398 399 username = ecuid, 399 usergroup = ecgid,400 400 version_number = _config._VERSION_STR, 401 401 fp_root_scripts = fp_root, … … 410 410 f.write(stream.render('text')) 411 411 412 413 # template = os.path.join(_config.PATH_REL_TEMPLATES,414 # _config.TEMPFILE_INSTALL_COMPILEJOB)415 # with open(template) as f:416 # fdata = f.read().split('\n')417 418 419 # with open(compilejob, 'w') as fo:420 # for data in fdata:421 # if 'MAKEFILE=' in data:422 # data = 'export MAKEFILE=' + makefile423 # elif 'FLEXPART_ROOT_SCRIPTS=' in data:424 # if fp_root != '../':425 # data = 'export FLEXPART_ROOT_SCRIPTS=' + fp_root426 # else:427 # data = 'export FLEXPART_ROOT_SCRIPTS=$HOME'428 # elif target.lower() != 'local':429 # if '--workdir' in data:430 # data = '#SBATCH --workdir=/scratch/ms/' + \431 # ecgid + '/' + ecuid432 # elif '##PBS -o' in data:433 # data = '##PBS -o /scratch/ms/' + ecgid + '/' + ecuid + \434 # 'flex_ecmwf.$Jobname.$Job_ID.out'435 # elif 'FLEXPART_ROOT_SCRIPTS=' in data:436 # if fp_root != '../':437 # data = 'export FLEXPART_ROOT_SCRIPTS=' + fp_root438 # else:439 # data = 'export FLEXPART_ROOT_SCRIPTS=$HOME'440 # fo.write(data + '\n')441 442 412 return 443 413 … … 470 440 <nothing> 471 441 ''' 472 fp_root_path_to_python = os.path.join(fp_root, _config.FLEXEXTRACT_DIRNAME, 473 _config.PATH_REL_PYTHON) 474 475 template = os.path.join(_config.PATH_REL_TEMPLATES, 476 _config.TEMPFILE_INSTALL_JOB) 477 with open(template) as f: 478 fdata = f.read().split('\n') 479 480 jobfile_temp = os.path.join(_config.PATH_REL_TEMPLATES, 481 _config.TEMPFILE_JOB) 482 with open(jobfile_temp, 'w') as fo: 483 for data in fdata: 484 if '--workdir' in data: 485 data = '#SBATCH --workdir=/scratch/ms/' + ecgid + '/' + ecuid 486 elif '##PBS -o' in data: 487 data = '##PBS -o /scratch/ms/' + ecgid + '/' + \ 488 ecuid + 'flex_ecmwf.$Jobname.$Job_ID.out' 489 elif 'export PATH=${PATH}:' in data: 490 data += fp_root_path_to_python 491 492 fo.write(data + '\n') 442 from genshi.template.text import NewTextTemplate 443 from genshi.template import TemplateLoader 444 445 loader = TemplateLoader(_config.PATH_TEMPLATES, auto_reload=False) 446 compile_template = loader.load(_config.TEMPFILE_INSTALL_JOB, 447 cls=NewTextTemplate) 448 449 fp_root_path_to_python = os.path.join(fp_root, 450 _config.FLEXEXTRACT_DIRNAME, 451 _config.PATH_REL_PYTHON) 452 453 stream = compile_template.generate( 454 usergroup = ecgid, 455 username = ecuid, 456 version_number = _config._VERSION_STR, 457 fp_root_path = fp_root_path_to_python, 458 ) 459 460 tempjobfile = os.path.join(_config.PATH_TEMPLATES, 461 _config.TEMPFILE_JOB) 462 463 with open(tempjobfile, 'w') as f: 464 f.write(stream.render('text')) 465 493 466 return 494 467 -
source/python/mods/prepare_flexpart.py
r5bad6ec rc5074d2 160 160 # deaccumulate the flux data 161 161 flexpart = EcFlexpart(c, fluxes=True) 162 flexpart.write_namelist(c , _config.FILE_NAMELIST)162 flexpart.write_namelist(c) 163 163 flexpart.deacc_fluxes(inputfiles, c) 164 164
Note: See TracChangeset
for help on using the changeset viewer.