From 7885a2b35c83e9121755474e86a91a7a809dee82 Mon Sep 17 00:00:00 2001 From: Julian Heinze <julian.heinze@ufz.de> Date: Wed, 5 Jun 2024 11:59:35 +0200 Subject: [PATCH] fix get species --- ogstools/feflowlib/_feflowlib.py | 17 ++++++----------- 1 file changed, 6 insertions(+), 11 deletions(-) diff --git a/ogstools/feflowlib/_feflowlib.py b/ogstools/feflowlib/_feflowlib.py index dab5c739b..3fc7b83d8 100644 --- a/ogstools/feflowlib/_feflowlib.py +++ b/ogstools/feflowlib/_feflowlib.py @@ -16,15 +16,6 @@ ifm.forceLicense("Viewer") logger = log.getLogger(__name__) -def _getSpeciesName(doc: ifm.FeflowDoc, i: int) -> str: - try: - species = doc.getSpeciesName(i) - except RuntimeError: - species = "single_species" - - return species - - def points_and_cells(doc: ifm.FeflowDoc) -> tuple[np.ndarray, list, list]: """ Get points and cells in a pyvista compatible format. @@ -305,8 +296,12 @@ def get_species_parameter( obsolete_data[data] = point_or_cell # If there is only a single species in the model, doc.getSpeciesName(i) throws a # RunTimeError. - for i in range(doc.getNumberOfSpecies()): - species = _getSpeciesName(doc, i) + number_of_species = doc.getNumberOfSpecies() + for species_id in range(number_of_species): + if number_of_species > 1: + species = doc.getSpeciesName(species_id) + else: + species = "single_species" par = ( doc.getParameter(getattr(ifm.Enum, data), species) if species != "single_species" -- GitLab