From ca1f1f046ce94c1730560ebd779bef00d7357bc2 Mon Sep 17 00:00:00 2001 From: hugoval <76450221+yudgugger@users.noreply.github.com> Date: Wed, 26 Jun 2024 18:26:13 +0200 Subject: [PATCH 1/5] Update README.md --- doc/README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/doc/README.md b/doc/README.md index 965ce81b..4bec3815 100644 --- a/doc/README.md +++ b/doc/README.md @@ -11,7 +11,7 @@
In the case you use this library for your work, please think about citing it:
• H. Valloire, P. Quéméré, N. Vaxelaire, H. Kuentz, G. Le Rhun, Ł. Borowik, "Enhancing ferroelectric characterization at nanoscale: A comprehensive approach for data processing in spectroscopic piezoresponse force microscopy", J. Appl. Phys, 21 May 2024, 135 (19): 194101, DOI: https://doi.org/10.1063/5.0197226
-• Hugo Valloire, Patrick Quemere, 2024, May 22, PySSPFM (Version 2024.06).
+• Hugo Valloire, Patrick Quemere, 2024, May 22, PySSPFM (Version 2024.07).
examples/utils/nanoloop/ex_phase.py
.
examples/toolbox/ex_vector_clustering.py
.
+ examples/toolbox/ex_clustering_inertia.py
.
examples/toolbox/ex_global_map_reader.py
.
examples/toolbox/ex_list_map_reader.py
.
examples/toolbox/ex_map_correlation.py
.
From fcb2a72da12a1bd938ae80b0b3768f906707e7d0 Mon Sep 17 00:00:00 2001
From: hugoval <76450221+yudgugger@users.noreply.github.com>
Date: Wed, 26 Jun 2024 18:37:58 +0200
Subject: [PATCH 2/5] Update README.md
---
doc/README.md | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/doc/README.md b/doc/README.md
index 4bec3815..9854c91a 100644
--- a/doc/README.md
+++ b/doc/README.md
@@ -535,7 +535,7 @@ Following the second stage of processing (see section
-For each script in the toolbox, it is possible to save the analysis conducted. Using function save_path_management
of the script PySSPFM/utils/path_for_runable.py
, a toolbox
folder is then created within the processing directory. This folder comprises a set of subdirectories, one for each toolbox treatment, following the nomenclature: 'tool_used'_'yyyy-mm-dd-HHh-MMm'
. Each of these directories contains the figures generated during the analysis performed by the respective tool, along with a text file user_params.txt
generated by the function save_user_pars
of the script PySSPFM/utils/path_for_runable.py
that maintains a record of the parameters employed for the analysis.
+For each script in the toolbox, it is possible to save the analysis conducted. Using function save_path_management
of the script PySSPFM/utils/path_for_runable.py
, a toolbox
folder is then created within the processing directory. This folder comprises a set of subdirectories, one for each toolbox treatment, following the nomenclature: 'tool_used'_'yyyy-mm-dd-HHh-MMm'
. Each of these directories contains the figures generated during the analysis performed by the respective tool, along with a text file user_params.txt
generated by the function save_user_pars
of the script PySSPFM/utils/path_for_runable.py
that maintains a record of the parameters employed for the analysis. Each of these directories now includes the figures generated during the analysis performed by the respective tool. Additionally, measurement parameters are contained in the csv measurement sheet that is copied into the result folder, and processing parameters are stored in a JSON file named datacube_to_nanoloop_s1_params.json
, created with create_json_res or copy_json_res function of the script PySSPFM/utils/path_for_runable.py
.
@@ -2170,7 +2170,7 @@ The entire assemblage of scripts under the • [1] Jesse, Stephen, Arthur P. Baddorf, and Sergei V. Kalinin. “Switching Spectroscopy Piezoresponse Force Microscopy of Ferroelectric Materials.” Applied Physics Letters 88, no. 6 (February 6, 2006): 062908. https://doi.org/10.1063/1.2172216.
• [2] Olivier Scholder. (2019). scholi/pySPM v0.2.20 (v0.2.20). Zenodo. https://doi.org/10.5281/zenodo.2650457.
- • [3] Suhas Somnath, CompPhysChris, ramav87, Numan Laanait, Rajiv Giridharagopal, Maxim Ziatdinov, Mani, str-eat, Gerd Duscher, Carlo, anugrah-saxena, Ondrej Dyck, Jessica Kong, Liambcollins, Enrique A. Lopez-Guerra, Ajinkya Kulkarni, Kavin Teenakul, Magnus Nord, & zhangxinqiao314. (2023). pycroscopy/pycroscopy: 0.63.2 (v0.63.2). Zenodo. https://doi.org/10.5281/zenodo.8229615.
+ • [3] Suhas Somnath, CompPhysChris, ramav87, Numan Laanait, Rajiv Giridharagopal, Maxim Ziatdinov, Mani, str-eat, Gerd Duscher, Carlo, anugrah-saxena, Ondrej Dyck, Jessica Kong, Liambcollins, Enrique A. Lopez-Guerra, Ajinkya Kulkarni, Kavin Teenakul, Magnus Nord, & zhangxinqiao314. (2023). pycroscopy/pycroscopy: 0.63.2 (v0.63.2). Zenodo. https://doi.org/10.5281/zenodo.8229615.
• [4] : Huang, Boyuan, Ehsan Nasr Esfahani, and Jiangyu Li. “Mapping Intrinsic Electromechanical Responses at the Nanoscale via Sequential Excitation Scanning Probe Microscopy Empowered by Deep Data.” National Science Review 6, no. 1 (January 1, 2019): 55–63. https://doi.org/10.1093/nsr/nwy096.
• [5] : Rodriguez, Brian J, Clint Callahan, Sergei V Kalinin, and Roger Proksch. “Dual-Frequency Resonance-Tracking Atomic Force Microscopy.” Nanotechnology 18, no. 47 (November 28, 2007): 475504. https://doi.org/10.1088/0957-4484/18/47/475504.
• [6] : Gannepalli, A, D G Yablon, A H Tsou, and R Proksch. “Mapping Nanoscale Elasticity and Dissipation Using Dual Frequency Contact Resonance AFM.” Nanotechnology 22, no. 35 (September 2, 2011): 355705. https://doi.org/10.1088/0957-4484/22/35/355705.
From f58580515b7a8ca9645c511e391237b6b8b89950 Mon Sep 17 00:00:00 2001
From: hugoval <76450221+yudgugger@users.noreply.github.com>
Date: Wed, 26 Jun 2024 18:46:26 +0200
Subject: [PATCH 3/5] Update README.md
---
doc/README.md | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/doc/README.md b/doc/README.md
index 9854c91a..efa918e3 100644
--- a/doc/README.md
+++ b/doc/README.md
@@ -504,6 +504,8 @@ A default data processing path management is provided, but the user has the opti
Following the first processing step (see section IV) - First step of data analysis of the documentation), by default, a new directory is created at the same root as the input data folder, with the nomenclature: 'initial_file_name'_'yyyy-mm-dd-HHh-MMm'_out_'processing_type'
. This directory itself contains two subdirectories, figs
and nanoloops
, and a text file, parameters.txt
.
+ - Processing parameters are stored in a JSON file named
datacube_to_nanoloop_s1_params.json
, created with create_json_res
or copy_json_res
function of the script PySSPFM/utils/path_for_runable.py
+ - Measurement parameters are contained in the csv measurement sheet that is copied into the result folder
- The
parameters.txt
text file saves all the measurement parameters initially present in the measurement form, along with parameters and information about the first measurement processing step. It is generated by the function save_parameters
of the script utils/datacube_to_nanoloop/file.py
.
- The
figs
directory contains all the figures generated during the first step, including various graphical representations of the raw data and segments managed by the utils/datacube_to_nanoloop/plot.py
script, phase histograms used for calibration managed by the utils/nanoloop/phase.py
script, and phase, amplitude, piezoresponse and eventually resonance frequency and quality factor nanoloops managed by the utils/nanoloop/plot.py
scripts.
- The
nanoloops
directory contains the processed data following the first step of processing in the extracted measure of amplitude, phase and eventually resonance frequency nanoloops, eventually with uncertainties as a function of polarization voltage, both in off and on field modes, for each measurement file. It can also contain scalar information associated with the segment (topography, adhesion, calculated phase offset ...). This directory is generated using the functions sort_nanoloop_data
and save_nanoloop_file
of the script located in utils/nanoloop/file.py
.
@@ -535,7 +537,7 @@ Following the second stage of processing (see section
-For each script in the toolbox, it is possible to save the analysis conducted. Using function save_path_management
of the script PySSPFM/utils/path_for_runable.py
, a toolbox
folder is then created within the processing directory. This folder comprises a set of subdirectories, one for each toolbox treatment, following the nomenclature: 'tool_used'_'yyyy-mm-dd-HHh-MMm'
. Each of these directories contains the figures generated during the analysis performed by the respective tool, along with a text file user_params.txt
generated by the function save_user_pars
of the script PySSPFM/utils/path_for_runable.py
that maintains a record of the parameters employed for the analysis. Each of these directories now includes the figures generated during the analysis performed by the respective tool. Additionally, measurement parameters are contained in the csv measurement sheet that is copied into the result folder, and processing parameters are stored in a JSON file named datacube_to_nanoloop_s1_params.json
, created with create_json_res or copy_json_res function of the script PySSPFM/utils/path_for_runable.py
.
+For each script in the toolbox, it is possible to save the analysis conducted. Using function save_path_management
of the script PySSPFM/utils/path_for_runable.py
, a toolbox
folder is then created within the processing directory. This folder comprises a set of subdirectories, one for each toolbox treatment, following the nomenclature: 'tool_used'_'yyyy-mm-dd-HHh-MMm'
. Each of these directories now includes the figures generated during the analysis performed by the respective tool. Additionally, measurement parameters are contained in the csv measurement sheet that is copied into the result folder, and processing parameters are stored in a JSON file named datacube_to_nanoloop_s1_params.json
, created with create_json_res
or copy_json_res
function of the script PySSPFM/utils/path_for_runable.py
.
From cad377dae2d88b2708aee82862a8a77718dcde7d Mon Sep 17 00:00:00 2001
From: hugoval <76450221+yudgugger@users.noreply.github.com>
Date: Wed, 26 Jun 2024 18:51:04 +0200
Subject: [PATCH 4/5] Update README.md
---
doc/README.md | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/doc/README.md b/doc/README.md
index efa918e3..a73dde3e 100644
--- a/doc/README.md
+++ b/doc/README.md
@@ -504,7 +504,7 @@ A default data processing path management is provided, but the user has the opti
Following the first processing step (see section IV) - First step of data analysis of the documentation), by default, a new directory is created at the same root as the input data folder, with the nomenclature: 'initial_file_name'_'yyyy-mm-dd-HHh-MMm'_out_'processing_type'
. This directory itself contains two subdirectories, figs
and nanoloops
, and a text file, parameters.txt
.
- - Processing parameters are stored in a JSON file named
datacube_to_nanoloop_s1_params.json
, created with create_json_res
or copy_json_res
function of the script PySSPFM/utils/path_for_runable.py
+ - Processing parameters for the 1st step are stored in a JSON file named
datacube_to_nanoloop_s1_params.json
, created with create_json_res
or copy_json_res
function of the script PySSPFM/utils/path_for_runable.py
- Measurement parameters are contained in the csv measurement sheet that is copied into the result folder
- The
parameters.txt
text file saves all the measurement parameters initially present in the measurement form, along with parameters and information about the first measurement processing step. It is generated by the function save_parameters
of the script utils/datacube_to_nanoloop/file.py
.
- The
figs
directory contains all the figures generated during the first step, including various graphical representations of the raw data and segments managed by the utils/datacube_to_nanoloop/plot.py
script, phase histograms used for calibration managed by the utils/nanoloop/phase.py
script, and phase, amplitude, piezoresponse and eventually resonance frequency and quality factor nanoloops managed by the utils/nanoloop/plot.py
scripts.
@@ -522,7 +522,7 @@ Following the first processing step (see section
Following the second stage of processing (see section VI) - Second step of data analysis of the documentation), the processing folder is augmented as follows:
- - The text file
parameters.txt
enriched with parameters and information pertaining to the second stage of measurement processing. This stage is conducted by the function complete_parameters
of the script utils/nanoloop_to_hyst/file.py
.
+ - Processing parameters for the 2nd step are stored in a JSON file named
nanoloop_to_hyst_s2_params.json
, created with create_json_res
or copy_json_res
function of the script PySSPFM/utils/path_for_runable.py
- The
figs
directory houses the visual representations generated during the second stage of processing, encompassing off and on field hysteresis with fitting and parameter extraction, along with the extraction of the artifact-related component through multiple protocols. This stage is executed by the script utils/nanoloop_to_hyst/plot.py
.
- A new
properties
folder contains all material properties measured for each measurement file, both in on field and off field conditions, as well as in differential (or coupled) and other measurements. The data is recorded using the function save_properties
of the script utils/nanoloop_to_hyst/file.py
. These properties are extracted during the hysteresis fitting stage and artifact analysis, accomplished by the scripts utils/nanoloop_to_hyst/analysis.py
and utils/nanoloop_to_hyst/electrostatic.py
, respectively.
- A
best_nanoloops
directory that contains the singular nanoloop for each mode (on field and off field) per measurement file. The data is recorded using the function save_best_nanoloops
of the script utils/nanoloop_to_hyst/file.py
.
@@ -537,7 +537,7 @@ Following the second stage of processing (see section
-For each script in the toolbox, it is possible to save the analysis conducted. Using function save_path_management
of the script PySSPFM/utils/path_for_runable.py
, a toolbox
folder is then created within the processing directory. This folder comprises a set of subdirectories, one for each toolbox treatment, following the nomenclature: 'tool_used'_'yyyy-mm-dd-HHh-MMm'
. Each of these directories now includes the figures generated during the analysis performed by the respective tool. Additionally, measurement parameters are contained in the csv measurement sheet that is copied into the result folder, and processing parameters are stored in a JSON file named datacube_to_nanoloop_s1_params.json
, created with create_json_res
or copy_json_res
function of the script PySSPFM/utils/path_for_runable.py
.
+For each script in the toolbox, it is possible to save the analysis conducted. Using function save_path_management
of the script PySSPFM/utils/path_for_runable.py
, a toolbox
folder is then created within the processing directory. This folder comprises a set of subdirectories, one for each toolbox treatment, following the nomenclature: 'tool_used'_'yyyy-mm-dd-HHh-MMm'
. Each of these directories now includes the figures generated during the analysis performed by the respective tool. Additionally, processing parameters are stored in a JSON file, created with create_json_res
or copy_json_res
function of the script PySSPFM/utils/path_for_runable.py
.
From 810cfa75be9e96839abd52b41811a38e3719610b Mon Sep 17 00:00:00 2001
From: hugoval <76450221+yudgugger@users.noreply.github.com>
Date: Wed, 26 Jun 2024 18:54:46 +0200
Subject: [PATCH 5/5] Update README.md
---
doc/README.md | 1 -
1 file changed, 1 deletion(-)
diff --git a/doc/README.md b/doc/README.md
index a73dde3e..d08c344b 100644
--- a/doc/README.md
+++ b/doc/README.md
@@ -506,7 +506,6 @@ Following the first processing step (see section
- Processing parameters for the 1st step are stored in a JSON file named
datacube_to_nanoloop_s1_params.json
, created with create_json_res
or copy_json_res
function of the script PySSPFM/utils/path_for_runable.py
- Measurement parameters are contained in the csv measurement sheet that is copied into the result folder
- - The
parameters.txt
text file saves all the measurement parameters initially present in the measurement form, along with parameters and information about the first measurement processing step. It is generated by the function save_parameters
of the script utils/datacube_to_nanoloop/file.py
.
- The
figs
directory contains all the figures generated during the first step, including various graphical representations of the raw data and segments managed by the utils/datacube_to_nanoloop/plot.py
script, phase histograms used for calibration managed by the utils/nanoloop/phase.py
script, and phase, amplitude, piezoresponse and eventually resonance frequency and quality factor nanoloops managed by the utils/nanoloop/plot.py
scripts.
- The
nanoloops
directory contains the processed data following the first step of processing in the extracted measure of amplitude, phase and eventually resonance frequency nanoloops, eventually with uncertainties as a function of polarization voltage, both in off and on field modes, for each measurement file. It can also contain scalar information associated with the segment (topography, adhesion, calculated phase offset ...). This directory is generated using the functions sort_nanoloop_data
and save_nanoloop_file
of the script located in utils/nanoloop/file.py
.