Source code for EasyFEA.simulations._utils

# Copyright (C) 2021-2025 Université Gustave Eiffel.
# This file is part of the EasyFEA project.
# EasyFEA is distributed under the terms of the GNU General Public License v3, see LICENSE.txt and CREDITS.md for more information.

from ..utilities import Folder, Display

import pickle

# ----------------------------------------------
# Save obj in pickle file
# ----------------------------------------------


[docs] def Save_pickle(obj, folder: str, filename: str) -> None: """Saves the object in folder/filename.pickle.""" file = Folder.Join(folder, f"{filename}.pickle") if not Folder.os.path.exists(folder): Folder.os.makedirs(folder) with open(file, "wb") as f: pickle.dump(obj, f) Display.MyPrint(f"Saved:\n{file.replace(Folder.EASYFEA_DIR, '')}\n", "green")
[docs] def Load_pickle(folder: str, filename: str): """Returns folder/filename.pickle object.""" file = Folder.Join(folder, f"{filename}.pickle") shortName = file.replace(Folder.EASYFEA_DIR, "") error = f"{shortName} does not exist" assert Folder.Exists(file), error with open(file, "rb") as f: obj = pickle.load(f) Display.MyPrint(f"Loaded:\n{shortName}\n", "green") return obj