wolfhece.multiprojects

Author: HECE - University of Liege, Pierre Archambeau Date: 2024

Copyright (c) 2024 University of Liege. All rights reserved.

This script and its content are protected by copyright law. Unauthorized copying or distribution of this file, via any medium, is strictly prohibited.

Module Contents

class wolfhece.multiprojects.project_type[source]

Bases: enum.Enum

Inheritance diagram of wolfhece.multiprojects.project_type

Generic enumeration.

Derive from this class to define new enumerations.

GENERIC = 0[source]
WOLF2D = 1[source]
class wolfhece.multiprojects.Project(wdir='', parent=None, title='Default Title', w=500, h=800, ontop=False, to_read=True, filename='', withbuttons=True, DestroyAtClosing=True, toShow=True, init_GUI: bool = False, force_even_if_same_default: bool = False)[source]

Bases: wolfhece.PyParams.Wolf_Param

Inheritance diagram of wolfhece.multiprojects.Project

Projet WOLF

Il s’agit d’une surcharge d’un objet Wolf_Param qui est organisé en groupes de paramètres Chaque paramètre peut être défini par une clé, une valeur et un commentaire (+ éventuellement une chaîne JSON)

class wolfhece.multiprojects.Wolf2D_Project(wdir='', parent=None, title='Default Title', w=500, h=800, ontop=False, to_read=True, filename='', withbuttons=True, DestroyAtClosing=True, toShow=False)[source]

Bases: Project

Inheritance diagram of wolfhece.multiprojects.Wolf2D_Project

Projet d’analyse de simulations WOLF2D

Ce projet contient a priori :
  • une liste de simulations (groupe “wolf2d”, “gpu2d”)

  • une liste de vecteurs/polylignes afin de restreindre la zone d’analyse et éviter

    autant que possible la superposition des modèles (groupe “vectors”)

  • la liaison entre polyligne et modèle (groupe “vector_array_link”)

  • des palettes (groupe “palette”)

  • la liaison des palettes avec les modèles (groupe “palette-array”)

Chaque simulation est associée à une clé unique Chaque vecteur est associé à une clé unique Chaque palette est associée à une clé unique

Les liaisons simulation-vecteur se font par (clé-valeur) = (sim-vector) Les liaisons simulation-palette se font par (clé-valeur) = (sim-palette)

Exemple :

wolf2d: Confluence Wayai - Forges Thiry_B .Q25X1b - Hoegne - Tr 3 - Confluence Wayai - Forges Thirysimul Confluence Wayai - Forges Thiry_A .Q25X1a - Hoegne - Tr 3 - Confluence Wayai - Forges Thirysimul vector: polyd5 ..Vecteursq - Vesdre - Tr 3 - Chaudfontaine - Confluence Ourthecont_sauv.vec polyd4 ..Vecteursr - Vesdre - Tr 3 - Prayon - Chaudfontainecont_sauv.vec vector_array_link: Confluence Wayai - Forges Thiry_B polyX1 Confluence Wayai - Forges Thiry_A polyX1 palette: Q25 q25_alea.pal Q50 q50_alea.pal Q100 q100_alea.pal palette-array: Confluence Wayai - Forges Thiry_B Q25 Confluence Wayai - Forges Thiry_A Q25

classmethod from_existing(sims: dict[str, str | wolfhece.wolfresults_2D.Wolfresults_2D | wolfhece.Results2DGPU.wolfres2DGPU])[source]

Create a MultiProjects object from a dictionary of simulations

Parameters:

sims – dict[str, Union[str, Wolfresults_2D, wolfres2DGPU]] – dictionary of simulations to add

pop(key: str)[source]

Remove a simulation from the project

Parameters:

key – str – key of the simulation to remove

add(key: str, value: wolfhece.wolfresults_2D.Wolfresults_2D | wolfhece.Results2DGPU.wolfres2DGPU | str, epsilon: float = None, force_read: bool = False)[source]

Add a key-value pair to the project

Parameters:
  • key – str – key of the simulation to add

  • value – Wolfresults_2D, wolfres2DGPU, str – simulation to add

  • epsilon – float – epsilon value to use for the simulation

  • force_read – bool – force reading the last step of the simulation

add_simulations(sims_to_add: dict[str, str | wolfhece.wolfresults_2D.Wolfresults_2D | wolfhece.Results2DGPU.wolfres2DGPU], epsilon: float = None, force_read: bool = False)[source]

Add multiple simulations to the project

Parameters:

sims_to_add – dict[str, Union[str, Wolfresults_2D, wolfres2DGPU]] – dictionary of simulations to add

load_simulations(epsilon: float, verbose: bool = False)[source]

Load all simulations in current project

update_simulations(epsilon, verbose=False)[source]

update all simulations in current project

get_simulation(key: str | int) wolfhece.wolfresults_2D.Wolfresults_2D | wolfhece.Results2DGPU.wolfres2DGPU[source]

Get simulation by key

Parameters:

key – str or int – key of the simulation to get or index of the simulation to get

get_simulations() list[source]

Return a python list of simulations

set_vectors()[source]

Lie les vecteurs d’un fichier projet et leur liaison potentielle avec les matrices

set_colormap()[source]

Lie les palettes d’un fichier projet et leur liaison potentielle avec les matrices

set_currentview(which)[source]

Change le mode de vue dans une vue possible de “views_2D”

find_values_inside(zonepoly: wolfhece.PyVertexvectors.zone)[source]

Récupère les valeurs à l’intérieur d’une zone de polygones

Retour :
  • dictionnaire dont la clé est l’index du polygone dans la zone

  • chaque entrée est un dictionnaire dont la clé ‘values’ contient une liste pour chaque matrice du projet

  • chaque élément de liste est un tuple contenant toutes les valeurs utiles

get_values(which_type: wolfhece.wolfresults_2D.views_2D | Literal[i, j, block] = None)[source]
class wolfhece.multiprojects.MultiProjects(wdir='')[source]

Manager of multiple project files

get_one_simulation(key_project: str, key_sim: str) wolfhece.wolfresults_2D.Wolfresults_2D | wolfhece.Results2DGPU.wolfres2DGPU[source]

Get one simulation by key in a project

get_same_simulation_in_projects(key_sim: str) dict[str, wolfhece.wolfresults_2D.Wolfresults_2D | wolfhece.Results2DGPU.wolfres2DGPU][source]

Get simulation by key in all projects

add(project: Project, key=str, whichtype=project_type.GENERIC)[source]

Add project to dict

get_project(key) Project[source]

Récupération d’un projet sur base du nom ou d’une position

read(filepath: str)[source]

Read from file

save(filepath: str)[source]

Write to file

load_simulations(epsilon, verbose=False)[source]

Load all simulations in projects

update_simulations(epsilon, verbose=False)[source]

Update all simulations in projects

get_simulations_list(which_project: str | list[str] = None) list[source]

Return a python list of simulations

Parameters:

which_project – str or list of str – key(s) of the project(s) to get simulations from

get_simulations_dict(which_project: str | list[str] = None) dict[source]

Return a python dict of simulations

Parameters:

which_project – str or list of str – key(s) of the project(s) to get simulations from

set_currentview(which: wolfhece.wolfresults_2D.views_2D)[source]

Change le mode de vue dans une vue possible de ‘views_2D’

find_values_inside(zonepoly: wolfhece.PyVertexvectors.zone, which_project=None)[source]

Récupère les valeurs à l’intérieur d’une zone de polygones

get_values(which_type, which_project=None)[source]