1. Exemple de préparation de projet
1.1. Fichiers de configurations et formats
1.1.1. information sur le bassin versant
☐ Décrire le format, ce qui est optionel et ce qui est nécéssaire, à quoi correspondent les valeurs et les unités ### meteo_file.csv Ce fichier se trouve référencer dans le fichier d’information sur le bassin versant
☐ Décrire le format, ce qui est optionel et ce qui est nécéssaire, à quoi correspondent les valeurs et les unités ### parametres.txt Ce fichier contient les valeurs par défaut et les bornes pour la calibration
☐ Je crois que pour l’instant, les bornes ne sont pas utilisées. Valider l’utilisation de ce fichier. Ce devra potentillement être modifié pour être compatible avec spotpy…
[2]:
import hsamiplus
import os
[3]:
# Dossier où se trouvent les fichiers
data_dir = os.path.join('..','..', 'data')
# Fichier informations
basin_file = os.path.join(data_dir, 'bassin_versant_info.txt')
#Fichier paramètres
param_file = os.path.join(data_dir, 'parametres.txt')
# Données météos
projet_file = os.path.join(data_dir, '5_ans.json')
1.2. Création d’un fichier de projet
Hsami+ a besoin d’un dictionnaire contenant les données pour effectuer une simulations.
La fonction ‘make_project’ permet de créer un fichier json à partir des différents fichiers de configurations.
[4]:
hsamiplus.make_project(data_dir, basin_file, param_file, projet_file)
/home/tjs/git/hsamiplus/src/hsamiplus/hsami_input.py:204: FutureWarning: The 'delim_whitespace' keyword in pd.read_csv is deprecated and will be removed in a future version. Use ``sep='\s+'`` instead
df_param = pd.read_csv(param_file, header=0, delim_whitespace=True)
Le fichier de projet HSAMI ../../data/5_ans.json a été créé !
2. Utilisaion d’un fichier de projet
Lorsqu’un fichier ‘json’ de projet est disponbile, on peut utiliser la fonction ‘hsamibin’ pour effectuer une simulation. Cette fonction retourne …
[5]:
simulation, etats, deltas = hsamiplus.hsamibin(data_dir, '5_ans.json')
3. Simulation avec les données en mémoire
La simulation avec le fichier de projet implique la lecture du fichier de projet et l’écriture des résultats. Dans le cas de la calibration, l’on veut éviter ces étapes de lectures / écriture. Lorsque les données sont chargées en mémoire dans un dictionaire, on peut donc utiliser ‘hsami2’ pour effectuer la simulation.
[6]:
import json
from pathlib import Path
filename = '5_ans.json'
with Path.open(Path(data_dir) / filename) as file:
projet = json.load(file)
[7]:
simulation, etats, deltas = hsamiplus.hsami2(projet)
[8]:
import cProfile
import pstats
cProfile.run('hsamiplus.hsami2(projet)', 'profile_results')
stats = pstats.Stats('profile_results')
stats.sort_stats('tottime').print_stats()
Fri Dec 20 16:37:26 2024 profile_results
20000414 function calls (20000399 primitive calls) in 43.316 seconds
Ordered by: internal time
ncalls tottime percall cumtime percall filename:lineno(function)
23741 9.426 0.000 9.466 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami_interception.py:180(dj_hsami)
23741 3.440 0.000 7.152 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami_ecoulement_vertical.py:217(ecoulement_3couches)
973016 3.150 0.000 3.150 0.000 {method 'reduce' of 'numpy.ufunc' objects}
474455 3.032 0.000 4.129 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/lib/_nanfunctions_impl.py:70(_replace_nan)
7527 2.202 0.000 2.782 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/scipy/optimize/_optimize.py:2226(_minimize_scalar_bounded)
973016 1.700 0.000 5.470 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/_core/fromnumeric.py:69(_wrapreduction)
191831 1.302 0.000 1.302 0.000 {method 'round' of 'numpy.generic' objects}
23741 1.290 0.000 18.210 0.001 /home/tjs/git/hsamiplus/src/hsamiplus/hsami2_noyau.py:560(ruissellement_ecoulement)
47482 1.208 0.000 3.382 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami_hydrogramme.py:8(hsami_hydrogramme)
973016 1.205 0.000 6.894 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/_core/fromnumeric.py:2338(sum)
1 0.933 0.933 42.271 42.271 /home/tjs/git/hsamiplus/src/hsamiplus/hsami2.py:342(hsami_simulation)
640643 0.922 0.000 0.922 0.000 {built-in method numpy.array}
474455 0.830 0.000 8.178 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/lib/_nanfunctions_impl.py:635(nansum)
23741 0.800 0.000 4.073 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami2_noyau.py:819(bilan_sorties)
94964 0.761 0.000 1.340 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/lib/_shape_base_impl.py:1204(tile)
23741 0.747 0.000 16.792 0.001 /home/tjs/git/hsamiplus/src/hsamiplus/hsami2_noyau.py:392(etp_glace_interception)
47482 0.726 0.000 0.726 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami_etp.py:741(etp_rayonnement_et)
47482 0.640 0.000 2.838 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami_etp.py:8(hsami_etp)
2324962 0.624 0.000 0.624 0.000 {built-in method builtins.min}
23741 0.567 0.000 1.421 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami_mhumide.py:8(hsami_mhumide)
23741 0.500 0.000 41.172 0.002 /home/tjs/git/hsamiplus/src/hsamiplus/hsami2_noyau.py:20(hsami2_noyau)
174967 0.399 0.000 0.465 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami_ecoulement_vertical.py:574(fctobj)
23741 0.397 0.000 0.523 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami_ecoulement_horizontal.py:8(hsami_ecoulement_horizontal)
1699944 0.352 0.000 0.352 0.000 {built-in method builtins.isinstance}
569419 0.332 0.000 0.332 0.000 {built-in method numpy.asanyarray}
472917 0.303 0.000 0.303 0.000 {built-in method builtins.getattr}
261151 0.266 0.000 1.923 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/_core/fromnumeric.py:51(_wrapfunc)
23741 0.266 0.000 0.266 0.000 {method 'strftime' of 'datetime.date' objects}
1192910 0.241 0.000 0.241 0.000 {method 'append' of 'list' objects}
973023 0.230 0.000 0.230 0.000 {method 'items' of 'dict' objects}
47482 0.228 0.000 0.313 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami_etp.py:909(etp_rayonnement_net)
621994 0.210 0.000 0.210 0.000 {built-in method builtins.max}
142446 0.206 0.000 0.206 0.000 {method 'repeat' of 'numpy.ndarray' objects}
47482 0.195 0.000 0.286 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami_etp.py:674(etp_duree_jour)
237410 0.187 0.000 0.187 0.000 {method 'reshape' of 'numpy.ndarray' objects}
23741 0.169 0.000 0.280 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/lib/_function_base_impl.py:5644(append)
213669 0.166 0.000 1.944 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/_core/fromnumeric.py:3618(round)
23741 0.152 0.000 0.264 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/_core/shape_base.py:220(vstack)
94964 0.148 0.000 0.148 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami_etp.py:860(etp_e)
973016 0.143 0.000 0.143 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/_core/fromnumeric.py:2333(_sum_dispatcher)
23741 0.141 0.000 9.648 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami_interception.py:8(hsami_interception)
47482 0.138 0.000 0.138 0.000 {built-in method numpy.arange}
47482 0.131 0.000 0.301 0.000 {method 'sum' of 'numpy.generic' objects}
47482 0.108 0.000 0.394 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami_etp.py:784(etp_rayonnement_g)
21838 0.103 0.000 0.103 0.000 {method 'round' of 'numpy.ndarray' objects}
38795 0.092 0.000 0.133 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/_core/fromnumeric.py:3566(size)
47482 0.091 0.000 0.091 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami_etp.py:698(etp_declinaison)
474455 0.085 0.000 0.085 0.000 {built-in method builtins.issubclass}
474455 0.078 0.000 0.078 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/_core/multiarray.py:1098(copyto)
316053 0.075 0.000 0.075 0.000 {built-in method builtins.len}
474455 0.074 0.000 0.074 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/lib/_nanfunctions_impl.py:630(_nansum_dispatcher)
284892 0.072 0.000 0.072 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/lib/_shape_base_impl.py:1287(<genexpr>)
2/1 0.068 0.034 43.315 43.315 <string>:1(<module>)
189928 0.067 0.000 0.067 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/lib/_shape_base_impl.py:1277(<genexpr>)
524901 0.066 0.000 0.066 0.000 {built-in method builtins.abs}
23741 0.066 0.000 0.100 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/_core/shape_base.py:80(atleast_2d)
21838 0.065 0.000 0.207 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/_core/fromnumeric.py:41(_wrapit)
23741 0.062 0.000 7.215 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami_ecoulement_vertical.py:9(hsami_ecoulement_vertical)
15054 0.060 0.000 0.105 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/scipy/optimize/_optimize.py:181(is_finite_scalar)
23741 0.057 0.000 0.064 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami_glace.py:8(hsami_glace)
71225 0.056 0.000 0.056 0.000 {built-in method numpy.zeros}
94964 0.056 0.000 0.056 0.000 {method 'transpose' of 'numpy.ndarray' objects}
47482 0.055 0.000 0.119 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami_etp.py:832(etp_m_courbe_pression)
47482 0.045 0.000 0.045 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami_etp.py:609(etp_priestley_taylor)
23376 0.045 0.000 0.045 0.000 {method 'tolist' of 'numpy.generic' objects}
47482 0.044 0.000 0.188 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/_core/fromnumeric.py:462(repeat)
94964 0.042 0.000 0.066 0.000 {built-in method builtins.all}
31268 0.041 0.000 0.041 0.000 {built-in method numpy.asarray}
7527 0.040 0.000 2.864 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami_ecoulement_vertical.py:517(green_ampt)
7527 0.039 0.000 2.821 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/scipy/optimize/_optimize.py:2135(fminbound)
23741 0.038 0.000 0.095 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/_core/fromnumeric.py:1904(ravel)
119219 0.036 0.000 0.036 0.000 {method 'keys' of 'dict' objects}
23376 0.036 0.000 0.036 0.000 {method 'tolist' of 'numpy.ndarray' objects}
23741 0.035 0.000 0.065 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/copy.py:61(copy)
213669 0.034 0.000 0.034 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/_core/fromnumeric.py:3614(_round_dispatcher)
23741 0.029 0.000 0.029 0.000 {method 'ravel' of 'numpy.ndarray' objects}
47482 0.028 0.000 0.170 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/_core/_methods.py:50(_sum)
55013 0.028 0.000 0.028 0.000 {method 'get' of 'dict' objects}
23741 0.024 0.000 0.024 0.000 {method 'copy' of 'numpy.ndarray' objects}
23746 0.020 0.000 0.020 0.000 {built-in method builtins.hasattr}
23741 0.020 0.000 0.020 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami_ruissellement_surface.py:6(hsami_ruissellement_surface)
47482 0.020 0.000 0.020 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami_etp.py:882(etp_chaleur_lat_vaporisation)
47482 0.019 0.000 0.019 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami_etp.py:958(etp_rayonnement_temps_clair)
23741 0.019 0.000 0.055 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/_core/shape_base.py:216(_vhstack_dispatcher)
21838 0.019 0.000 0.019 0.000 {method 'as_arrays' of 'numpy._core._multiarray_umath._array_converter' objects}
94964 0.018 0.000 0.018 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/lib/_shape_base_impl.py:1200(_tile_dispatcher)
23741 0.016 0.000 0.036 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/_core/shape_base.py:208(_arrays_for_stack_dispatcher)
23741 0.015 0.000 0.015 0.000 {method 'copy' of 'dict' objects}
21838 0.015 0.000 0.015 0.000 {method 'wrap' of 'numpy._core._multiarray_umath._array_converter' objects}
6571 0.011 0.000 0.011 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami_interception.py:1662(gel_sol)
47482 0.010 0.000 0.010 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/_core/multiarray.py:180(concatenate)
47482 0.008 0.000 0.008 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/_core/fromnumeric.py:458(_repeat_dispatcher)
38795 0.007 0.000 0.007 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/_core/fromnumeric.py:3562(_size_dispatcher)
804 0.006 0.000 0.012 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/ipykernel/ipkernel.py:775(_clean_thread_parent_frames)
5046 0.006 0.000 0.006 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami_interception.py:1790(percolation_eau_fonte)
23741 0.005 0.000 0.005 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/lib/_function_base_impl.py:5640(_append_dispatcher)
6495 0.005 0.000 0.005 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami_interception.py:1752(gel_neige)
23741 0.004 0.000 0.004 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/_core/fromnumeric.py:1900(_ravel_dispatcher)
23741 0.004 0.000 0.004 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/numpy/_core/shape_base.py:76(_atleast_2d_dispatcher)
2/1 0.004 0.002 43.099 43.099 /home/tjs/git/hsamiplus/src/hsamiplus/hsami2.py:12(hsami2)
7527 0.003 0.000 0.003 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/scipy/optimize/_optimize.py:3579(_endprint)
7527 0.003 0.000 0.003 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/scipy/optimize/_optimize.py:172(_check_unknown_options)
402 0.003 0.000 0.003 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/threading.py:1535(enumerate)
954 0.002 0.000 0.002 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami_interception.py:1705(degel_sol)
3216 0.002 0.000 0.002 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/threading.py:1198(ident)
1 0.001 0.001 0.001 0.001 {method 'execute' of 'sqlite3.Connection' objects}
1 0.001 0.001 0.164 0.164 /home/tjs/git/hsamiplus/src/hsamiplus/hsami2.py:277(hsami_etat_initial)
42 0.001 0.000 0.001 0.000 {built-in method time.sleep}
404 0.000 0.000 0.000 0.000 {method '__exit__' of '_thread.RLock' objects}
804 0.000 0.000 0.000 0.000 {method 'values' of 'dict' objects}
8 0.000 0.000 0.002 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/asyncio/base_events.py:1915(_run_once)
43 0.000 0.000 0.000 0.000 {built-in method posix.getppid}
1 0.000 0.000 0.000 0.000 {method 'disable' of '_lsprof.Profiler' objects}
8 0.000 0.000 0.000 0.000 {method 'poll' of 'select.epoll' objects}
8 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/selectors.py:451(select)
2/1 0.000 0.000 43.315 43.315 {built-in method builtins.exec}
4 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/ipykernel/iostream.py:127(_event_pipe_gc)
10 0.000 0.000 0.000 0.000 {method 'run' of '_contextvars.Context' objects}
8 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/asyncio/tasks.py:653(sleep)
10 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/asyncio/events.py:86(_run)
1 0.000 0.000 0.005 0.005 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/decorator.py:229(fun)
8 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/asyncio/events.py:36(__init__)
4 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/ipykernel/iostream.py:118(_run_event_pipe_gc)
1 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/inspect.py:3133(_bind)
12 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/threading.py:1222(is_alive)
18 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/asyncio/base_events.py:733(time)
1 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/IPython/core/history.py:833(_writeout_input_cache)
1 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/IPython/core/history.py:55(only_when_enabled)
4 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/asyncio/base_events.py:742(call_later)
4 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/asyncio/events.py:155(cancel)
4 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/asyncio/base_events.py:813(_call_soon)
4 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/asyncio/base_events.py:766(call_at)
1 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/IPython/core/history.py:845(writeout_cache)
4 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/asyncio/base_events.py:784(call_soon)
6 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/traitlets/traitlets.py:676(__get__)
4 0.000 0.000 0.000 0.000 {method 'set_result' of '_asyncio.Future' objects}
2 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/traitlets/traitlets.py:3631(set)
2 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/ipykernel/iostream.py:718(_rotate_buffers)
4 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/asyncio/base_events.py:446(create_future)
1 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/traitlets/traitlets.py:1527(_notify_observers)
4 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/asyncio/futures.py:313(_set_result_unless_cancelled)
15/3 0.000 0.000 0.000 0.000 {method 'acquire' of '_thread.lock' objects}
1 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/decorator.py:199(fix)
1 0.000 0.000 0.000 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami2.py:251(modules_par_defaut)
6 0.000 0.000 0.000 0.000 {built-in method _heapq.heappop}
2 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/traitlets/traitlets.py:718(_validate)
2 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/traitlets/traitlets.py:3474(validate)
2 0.000 0.000 0.000 0.000 {method '__exit__' of 'sqlite3.Connection' objects}
2 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/traitlets/traitlets.py:689(set)
4 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/asyncio/events.py:111(__init__)
18 0.000 0.000 0.000 0.000 {built-in method time.monotonic}
6 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/traitlets/traitlets.py:629(get)
12 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/threading.py:1155(_wait_for_tstate_lock)
2 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/ipykernel/iostream.py:616(_flush)
1 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/inspect.py:3272(bind)
2 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/traitlets/traitlets.py:3624(validate_elements)
2 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/tornado/ioloop.py:742(_run_callback)
1 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/inspect.py:2949(apply_defaults)
2 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/traitlets/traitlets.py:727(_cross_validate)
1 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/traitlets/traitlets.py:1512(_notify_trait)
2 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/traitlets/traitlets.py:708(__set__)
5 0.000 0.000 0.000 0.000 {built-in method math.ceil}
11 0.000 0.000 0.000 0.000 {method 'append' of 'collections.deque' objects}
10 0.000 0.000 0.000 0.000 {method 'popleft' of 'collections.deque' objects}
2 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/ipykernel/iostream.py:710(_flush_buffers)
8 0.000 0.000 0.000 0.000 {method '__exit__' of '_thread.lock' objects}
1 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/inspect.py:2896(args)
1 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/traitlets/traitlets.py:1523(notify_change)
2 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/traitlets/traitlets.py:2304(validate)
1 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/threading.py:311(_acquire_restore)
4 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/asyncio/events.py:72(cancel)
9 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/asyncio/selector_events.py:750(_process_events)
6 0.000 0.000 0.000 0.000 {built-in method builtins.next}
1 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/IPython/core/history.py:839(_writeout_output_cache)
4 0.000 0.000 0.000 0.000 {built-in method _contextvars.copy_context}
10 0.000 0.000 0.000 0.000 /home/tjs/git/hsamiplus/src/hsamiplus/hsami2.py:234(set_default_module)
4 0.000 0.000 0.000 0.000 {built-in method _asyncio.get_running_loop}
2 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/threading.py:302(__exit__)
12 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/threading.py:601(is_set)
16 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/asyncio/base_events.py:2010(get_debug)
8 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/asyncio/base_events.py:538(_check_closed)
22 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/typing.py:2183(cast)
1 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/threading.py:627(clear)
1 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/inspect.py:2919(kwargs)
2 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/threading.py:299(__enter__)
4 0.000 0.000 0.000 0.000 {method 'cancelled' of '_asyncio.Future' objects}
2 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/site-packages/traitlets/traitlets.py:3486(validate_elements)
1 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/threading.py:308(_release_save)
3 0.000 0.000 0.000 0.000 {method 'items' of 'mappingproxy' objects}
4 0.000 0.000 0.000 0.000 {built-in method _heapq.heappush}
1 0.000 0.000 0.000 0.000 {method 'values' of 'mappingproxy' objects}
1 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/asyncio/events.py:127(__lt__)
10 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/inspect.py:2808(kind)
2 0.000 0.000 0.000 0.000 {method '__enter__' of '_thread.lock' objects}
1 0.000 0.000 0.000 0.000 {built-in method _thread.allocate_lock}
4 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/asyncio/base_events.py:1910(_timer_handle_cancelled)
2 0.000 0.000 0.000 0.000 {built-in method builtins.iter}
2 0.000 0.000 0.000 0.000 {method 'extend' of 'list' objects}
4 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/inspect.py:3089(parameters)
4 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/inspect.py:2796(name)
1 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/threading.py:314(_is_owned)
1 0.000 0.000 0.000 0.000 {method 'release' of '_thread.lock' objects}
1 0.000 0.000 0.000 0.000 /home/tjs/miniforge3/envs/hsamiplus/lib/python3.12/inspect.py:2888(__init__)
[8]:
<pstats.Stats at 0x7fb84f493920>