From 27d0c7f5959f17c66e7033e1713632bafb097081 Mon Sep 17 00:00:00 2001 From: Carles Tena Date: Fri, 25 Oct 2019 17:02:46 +0200 Subject: [PATCH 1/2] return emis in memory done --- hermesv3_bu/hermes.py | 10 ++++++---- hermesv3_bu/writer/writer.py | 3 +-- 2 files changed, 7 insertions(+), 6 deletions(-) diff --git a/hermesv3_bu/hermes.py b/hermesv3_bu/hermes.py index 7b678df..ff055d6 100755 --- a/hermesv3_bu/hermes.py +++ b/hermesv3_bu/hermes.py @@ -48,11 +48,11 @@ class Hermes(object): self.sector_manager = SectorManager( self.comm, self.logger, self.grid, self.clip, self.date_array, self.arguments) - self.writer = select_writer(self.logger, self.arguments, self.grid, self.date_array) + self.writer = select_writer(self.logger, self.comm, self.arguments, self.grid, self.date_array) self.logger.write_time_log('HERMES', '__init__', timeit.default_timer() - self.initial_time) - def main(self): + def main(self, return_emis=False): """ Main functionality of the model. """ @@ -62,6 +62,8 @@ class Hermes(object): self.logger.write_log('***** HERMESv3_BU First Time finished successfully *****') else: emis = self.sector_manager.run() + if return_emis: + return emis waiting_time = timeit.default_timer() self.comm.Barrier() self.logger.write_log('All emissions calculated!') @@ -80,8 +82,8 @@ class Hermes(object): return None -def run(comm=None): - date = Hermes(Config(comm), comm).main() +def run(): + date = Hermes(Config()).main() while date is not None: date = Hermes(Config(new_date=date)).main() sys.exit(0) diff --git a/hermesv3_bu/writer/writer.py b/hermesv3_bu/writer/writer.py index 3d5d284..0a92322 100755 --- a/hermesv3_bu/writer/writer.py +++ b/hermesv3_bu/writer/writer.py @@ -15,7 +15,7 @@ BALANCED = False MPI_TAG_CONSTANT = 10**6 -def select_writer(logger, arguments, grid, date_array): +def select_writer(logger, comm_world, arguments, grid, date_array): """ Select the writer depending on the arguments passed to HERMESv3_BU @@ -35,7 +35,6 @@ def select_writer(logger, arguments, grid, date_array): :rtype: Writer """ spent_time = timeit.default_timer() - comm_world = MPI.COMM_WORLD if grid.shape[2] % 2 == 0: max_procs = grid.shape[2] // 2 -- GitLab From 0994614ce585900342bf002460a62bd8dfed8c43 Mon Sep 17 00:00:00 2001 From: Carles Tena Date: Tue, 29 Oct 2019 10:16:44 +0100 Subject: [PATCH 2/2] return emis in memory done --- CHANGELOG | 8 +++++--- hermesv3_bu/__init__.py | 2 +- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/CHANGELOG b/CHANGELOG index 222e0e1..9c99603 100755 --- a/CHANGELOG +++ b/CHANGELOG @@ -1,5 +1,5 @@ -0.0.0 - 2019/XX/XX +0.1.1 + 2019/10/29 First beta version: @@ -26,9 +26,11 @@ 9. Point sources sector 10. Road traffic sector 11. Traffic area (evaporative & small cities) sector + 12. Solvents sector - Writing options: + 0. Return emissions on memory 1. Default writer 2. CMAQ writer 3. MONARCH writer - 4. WRF-Chem writer \ No newline at end of file + 4. WRF-Chem writer diff --git a/hermesv3_bu/__init__.py b/hermesv3_bu/__init__.py index 3dc1f76..485f44a 100755 --- a/hermesv3_bu/__init__.py +++ b/hermesv3_bu/__init__.py @@ -1 +1 @@ -__version__ = "0.1.0" +__version__ = "0.1.1" -- GitLab