diff --git a/.ipynb_checkpoints/display-checkpoint.py b/.ipynb_checkpoints/display-checkpoint.py deleted file mode 100755 index cc24d81..0000000 --- a/.ipynb_checkpoints/display-checkpoint.py +++ /dev/null @@ -1,186 +0,0 @@ -#!/usr/bin/env python3 - -from gettext import install -from backscattering_analyzer.display import show_projection # type: ignore[reportMissingTypeStubs] -from backscattering_analyzer.experiment import AcquisitionType, Experiment # type: ignore[reportMissingTypeStubs] -from logging import basicConfig, getLogger -from rich.console import Console -from rich.theme import Theme -from rich.logging import RichHandler -from warnings import filterwarnings -from command_parser.flag import Flag # type: ignore[reportMissingTypeStubs] -from command_parser.value import Value # type: ignore[reportMissingTypeStubs] -from command_parser.parser import parse # type: ignore[reportMissingTypeStubs] -from sys import argv -from importlib.metadata import version - -install(__name__) - -filterwarnings("error") - -flags = [ - Flag("help"), - Flag("version", single_char="V"), - Flag("verbose"), - Flag("full"), -] -values = [ - Value("date", "2023_03_24"), - Value("bench", "SDB1"), - Value("file", "values.toml", single_char="F"), - Value("vibration-frequency", "0.2"), -] -parse(" ".join(argv[1:]), flags, values) - -if flags[0].value: - theme = Theme( - { - "main": "white bold", - "option": "grey50 italic", - "argument": "red", - "description": "green italic", - } - ) - console = Console(theme=theme) - help = ( - "[main]display[/main] [option]\\[options][/option]" - "\n [argument]-b --bench[/argument] [description]bench of the experiment[/description]" - "\n [argument]-d --date[/argument] [description]date of the experiment[/description]" - "\n [argument]-h --help[/argument] [description]print this help and exit[/description]" - "\n [argument]-f --full[/argument] [description]run experiment with all benches with all dates[/description]" - "\n [argument]-F --file[/argument] [description]file containing all the parameters values (toml file)[/description]" - "\n [argument]-v --verbose[/argument] [description]be verbose[/description]" - "\n [argument]-V --version[/argument] [description]print version number and exit[/description]" - ) - console.print(help) - exit(0) - -if flags[1].value: - version = ( - "Versions\n" - "numpy {numpy}\n" - "scipy {scipy}\n" - "matplotlib {matplotlib}\n" - "science_signal {science_signal}\n" - "backscattering_analyzer {backscattering_analyzer}\n" - "command_parser {command_parser}\n" - "script 0.1.0\n" - ).format( - numpy=version("numpy"), - scipy=version("scipy"), - matplotlib=version("matplotlib"), - science_signal=version("science_signal"), - backscattering_analyzer=version("backscattering_analyzer"), - command_parser=version("command_parser"), - ) - console = Console() - console.print(version) - exit(0) - -if flags[2].value: - level = "DEBUG" -else: - level = "INFO" - - -basicConfig( - level=level, - format="%(message)s", - datefmt="[%X]", - handlers=[RichHandler()], -) - -logger = getLogger(__name__) - -if flags[3].value: - logger.debug(_("loading every experiments")) - experiments: list[Experiment] = [] - results: dict[str, float | None] = dict({}) - for bench in ["SDB1", "SDB2", "SNEB", "SWEB"]: - if bench in ["SDB1", "SDB2"]: - experiment = Experiment( - bench, - "2023_03_24", - values[2].value, - float(values[3].value), - ) - if bench == "SDB1": - start_frequency, end_frequency = 12.5, 30 - else: - start_frequency, end_frequency = 40, 50 - experiment.factors = experiment.fit_factors( - start_frequency=start_frequency, - end_frequency=end_frequency, - ) - results[ - "{bench}-{date}".format( - bench=bench, - date="2023_03_24", - ) - ] = experiment.factors["true"] - elif bench == "SNEB": - for date in ["2023_03_24", "2024_01_21"]: - experiment = Experiment( - bench, - date, - values[2].value, - float(values[3].value), - ) - experiment.factors = experiment.fit_factors( - start_frequency=15, - end_frequency=100, - ) - results["{bench}-{date}".format(bench=bench, date=date)] = ( - experiment.factors["true"] - ) - else: # bench == SWEB - for date in ["2023_03_24", "2023_12_20"]: - experiment = Experiment( - bench, - date, - values[2].value, - float(values[3].value), - ) - experiment.factors = experiment.fit_factors( - start_frequency=15, - end_frequency=100, - ) - results["{bench}-{date}".format(bench=bench, date=date)] = ( - experiment.factors["true"] - ) - console = Console() - console.print(results) - -else: - experiment = Experiment( - values[1].value, values[0].value, values[2].value, float(values[3].value) - ) - - if experiment.bench == "SDB1": - start_frequency, end_frequency = 12.5, 30 - elif experiment.bench == "SDB2": - start_frequency, end_frequency = 40, 50 - else: - start_frequency, end_frequency = 15, 100 - - try: - experiment.factors = experiment.fit_factors( - start_frequency=start_frequency, - end_frequency=end_frequency, - ) - experiment.projection_reference = experiment.compute_projection( - AcquisitionType.REFERENCE - ) - experiment.projection_excited = experiment.compute_projection( - AcquisitionType.EXCITED - ) - except AttributeError: - pass - - #show_projection(experiment, start_frequency, end_frequency) - import matplotlib.pyplot as plt - plt.loglog(experiment.coupling[0].x, experiment.coupling[0].y) - plt.loglog(experiment.coupling[1].x, experiment.coupling[1].y) - plt.show() - -exit(0)