diff --git a/doc/html/anglescan-processing_8dox.html b/doc/html/anglescan-processing_8dox.html new file mode 100644 index 0000000..33b064c --- /dev/null +++ b/doc/html/anglescan-processing_8dox.html @@ -0,0 +1,100 @@ + + +
+ + + + +
+ PEARL Procedures
+ rev-distro-2.0.2-0-g3235d52
+
+ Igor procedures for the analysis of PEARL data
+ |
+
tools for analysing the Fermi edge measured by the Scienta EW4000 analyser. -More...
-#include "pearl-area-profiles"
Go to the source code of this file.
--Functions | |
variable | analyse_curved_edge (wave data) |
variable | record_results (variable index) |
variable | integrate_curved_edge (wave data, wave data_sig) |
variable | slit_correction (wave data, wave data_out, variable epass) |
threadsafe variable | FermiFuncLinDOS2D_corr (variable w, threadsafe x, wave y) |
threadsafe variable | slit_shift (variable ypix, variable epass) |
variable | show_shift (wave data) |
variable | analyser_energy_resolution (variable epass, variable slit) |
calculate the energy resolution of the analyser More... | |
-Variables | |
static const variable | mcp_radius_pix = 555 |
MCP radius seen by the camera in pixels. More... | |
static const variable | mcp_radius_mm = 20 |
physical size (radius) of the MCP in mm More... | |
static const variable | hemi_radius_mm = 200 |
physical size (radius) of the hemisphere in mm More... | |
static const variable | mcp_radius_epass = 0.04 |
energy range imaged on MCP relative to the pass energy More... | |
tools for analysing the Fermi edge measured by the Scienta EW4000 analyser.
-proposed procedure
-Definition in file fermi-edge-analysis.ipf.
-variable analyse_curved_edge | -( | -wave | -data | ) | -- |
Definition at line 27 of file fermi-edge-analysis.ipf.
- -variable analyser_energy_resolution | -( | -variable | -epass, | -
- | - | variable | -slit | -
- | ) | -- |
calculate the energy resolution of the analyser
-epass | pass energy in eV |
slit | analyser entrance slit in mm |
Definition at line 306 of file fermi-edge-analysis.ipf.
- -threadsafe variable FermiFuncLinDOS2D_corr | -( | -variable | -w, | -
- | - | threadsafe | -x, | -
- | - | wave | -y | -
- | ) | -- |
Definition at line 216 of file fermi-edge-analysis.ipf.
- -variable integrate_curved_edge | -( | -wave | -data, | -
- | - | wave | -data_sig | -
- | ) | -- |
Definition at line 116 of file fermi-edge-analysis.ipf.
- -variable record_results | -( | -variable | -index | ) | -- |
Definition at line 98 of file fermi-edge-analysis.ipf.
- -variable show_shift | -( | -wave | -data | ) | -- |
Definition at line 284 of file fermi-edge-analysis.ipf.
- -variable slit_correction | -( | -wave | -data, | -
- | - | wave | -data_out, | -
- | - | variable | -epass | -
- | ) | -- |
Definition at line 173 of file fermi-edge-analysis.ipf.
- -threadsafe variable slit_shift | -( | -variable | -ypix, | -
- | - | variable | -epass | -
- | ) | -- |
Definition at line 267 of file fermi-edge-analysis.ipf.
- -
-
|
- -static | -
physical size (radius) of the hemisphere in mm
- -Definition at line 263 of file fermi-edge-analysis.ipf.
- -
-
|
- -static | -
energy range imaged on MCP relative to the pass energy
- -Definition at line 265 of file fermi-edge-analysis.ipf.
- -
-
|
- -static | -
physical size (radius) of the MCP in mm
- -Definition at line 261 of file fermi-edge-analysis.ipf.
- -
-
|
- -static | -
MCP radius seen by the camera in pixels.
- -Definition at line 259 of file fermi-edge-analysis.ipf.
- -PEARL Procedures is a suite of Igor Pro procedures developed for data acquisition and data processing at the PEARL beamline at the Swiss Light Source.
@@ -112,7 +98,7 @@ InstallationPEARL Procedures should be installed according to the regular Igor Pro guidelines. Please read the Igor help About Igor Pro User Files
for details.
pearl-procs
directory in your private or shared User Procedures
folder, and copy the PEARL Procedures distribution there.pearl-arpes.ipf
and pearl-menu.ipf
files, and move them to the Igor Procedures
folder next to your User Procedures
folder.pearl-arpes.ipf
and pearl-menu.ipf
files, and move them to the Igor Procedures
folder next to your User Procedures
folder.HDF5.XOP
extension in the Igor Pro Folder
under More Extensions/File Loaders
, create a shortcut, and move the shortcut to the Igor Extensions
folder next to your User Procedures
folder.HDF5 Help.ihf
next to HDF5.XOP
, create a shortcut, and move the shortcut to the Igor Help Files
folder next to your User Procedures
folder.An open distribution of PEARL Procedures is available under the Apache License, Version 2.0 at https://git.psi.ch/pearl-public/igor-procs. Users of PEARL Procedures are requested to coordinate and share the development of the code with the original author. Please read and respect the respective license agreements.
t |
PEARL Procedures
- rev-distro-2.0.0-0-gfda49c3-dirty
+ rev-distro-2.0.2-0-g3235d52
Igor procedures for the analysis of PEARL data
|
@@ -41,41 +38,19 @@
+ PEARL Procedures
+ rev-distro-2.0.2-0-g3235d52
+
+ Igor procedures for the analysis of PEARL data
+ |
+
This page describes the data processing steps of angle-scans using the PEARL Procedures. The description relies on using the command line regardless of available GUIs.
+The goal of this step is to import raw data and at the same time eliminate the energy dimension. We want a two-dimensional wave where the first dimension is the angle axis of the detector and the second dimension is the sequence of measurements, scanning one or multiple manipulator angles. The second dimension requires additional one-dimensional waves that describe the polar, tilt and azimuthal angle setting of the manipulator for each dimension index.
+The processing steps depend on the complexity of the measured spectrum. The user may have to adopt one of the predefined or a custom procedure accordingly. Here, we describe two procedures that may cover many generic cases or that can serve as a starting point for a refined, customized procedure. However, any procedure that produces the datasets mentioned above is, of course, a valid approach. For instance, you could load the complete three-dimensional ScientaImage dataset, and generate the two-dimensional dataset using your own procedures.
+The central import functions are psh5_load_reduced and psh5_load_dataset_reduced. The first form is sufficient if the file contains just one scan and region. Further regions/scans need to be loaded using the second form. The first form is also exposed in the PEARL data explorer window.
+The functions require a data reduction function and processing parameters as arguments. Some particular reduction functions are described further below. More can be found in the source code (or obtained from other users). A list of functions that look like reduction functions can be got from adh5_list_reduction_funcs.
+The basic call sequence looks as follows. Substitute the arguments in angle brackets as necessary. You may have to analyse a reference spectrum or the complete ScientaImage to figure out the processing parameters beforehand.
+First form:
+Second form:
+The int_linbg_reduction function converts a two-dimensional Scienta image I(angle, energy) into a one-dimensional angle distribution I(angle). For each angle slice, it calculates a linear background. Then, it integrates the difference between the original data and the background over a specified interval.
+The function requires the following, fixed parameters:
+Parameter | Description | Typical value |
---|---|---|
Lcrop | size of the low-energy cropping region | 0.11 (fixed mode) |
Lsize | size of the low-energy background region | 0.2 |
Hcrop | size of the high-energy cropping region | 0.11 |
Hsize | size of the high-energy background region | 0.2 |
Cpos | position of the peak center | 0.5 |
Csize | size of the center region | 0.3 |
All parameters are relative to the size of the image (length of the energy interval) and must be in the range from 0 to 1.
+The cropping region is cut away from the image for the rest of the processing. This is necessary to remove the dark corners in fixed mode but can be neglected in swept mode (cropping size = 0).
+The low and high background regions are adjacent to the cropping regions on either side. The function calculates two fix points of the linear background in the center of each background region. The intensity value of each fix point is the average intensity in the background region.
+The peak region is integrated over the integral given by the Csize parameter centered at Cpos.
+The background-subtracted peak integral is returned in ReducedData1. ReducedData2 receives the error estimate of the peak integral (assuming Poisson statistics).
+The gauss4_reduction function converts a two-dimensional Scienta image I(angle, energy) into a one-dimensional angle distribution I(angle). For each angle slice, it performs a Gaussian curve fit with up to four components on a linear background.
+To improve the stability of the fit, the peak positions and widths are kept fixed while the amplitudes of the peaks and the background parameters are variable but constrained to reasonable values (positive amplitude). Furthermore, the function can optionally do a box averaging over three slices.
+The function requires the following, fixed parameters:
+Parameter | Description |
---|---|
rngl | lower limit of the fit interval |
rngh | upper limit of the fit interval |
npeaks | number of components |
pos1 | center energy of peak 1 |
wid1 | width of peak 1 |
pos2 | center energy of peak 2 |
wid2 | width of peak 2 |
pos3 | center energy of peak 3 |
wid3 | width of peak 3 |
pos4 | center energy of peak 3 |
wid4 | width of peak 3 |
ybox | box size of slice averaging (1 or 3) |
The peak parameters should be determined beforehand from fitting a reference spectrum, or the angle-scan integrated over all angles. Peak positions and widths have to be specified only up to the given number of peaks.
+The data reduction procedure returns the peak integrals (amplitude times width times square root of 2) in waves named ReducedDataN where N is a numeric index from 1 to npeaks. The waves starting with an index of npeaks+1 contain the corresponding error estimate of the peak integral.
+See the documentation and source code of int_linbg_reduction, gauss4_reduction and adh5_default_reduction for help on writing custom reduction functions. To integrate your function with the PEARL data explorer, you have to provide an additional function that prompts for reduction parameters such as prompt_int_linbg_reduction, for example. Since reduction functions cannot be called from the command line, it is redommended to also write an adapter function for testing.
+The goal of the data normalization is to get a (still two-dimensional) dataset that ideally contains intensity variations due to diffraction features and statistical fluctuations only. In particular, instrumental variations should be removed. In some cases, it may be necessary to preserve the overall polar dependence of the intensity. Note that this latter case is not properly treated with the methods described here.
+Depending on the quality of the measured data, only some of the following processing steps are necessary. Use your own judgement.
+Start by creating a new copy of the data and inspecting it:
To update the display after changes to NormData1:
Crop the detector angle axis to a useful range (usually about -25 to +25 degrees):
Remove inhomogeneity of the detector in the detector angle axis. This component may also include a contribution from the sample. If your raw data shows a flat distribution, this step is not necessary.
+Note that the argument check=2
causes the function to generate two check waves but not to modify the original data. To inspect the check waves:
Vary the smooth_factor
(between 0.1 and 1.0) until it follows the instrumental curve but does not affect diffraction features. Then set check=1
to apply the normalization to NormData1
.
Reduce the effect of azimuthal wobble (misaligned surface) on intensity. A misaligned surface may cause a sinusoidal variation of the intensity as a function of azimuthal angle with a 360 period. A strong azimuthal variation may affect the polar normalization in the next step. The azimuthal normalization can be based on a restricted range of polar angles (theta range). You have to find out which value works best for your sample.
+Note, however, that his function does not correct for angle shifts induced by the misalignment!
+Remove the polar angle dependence (matrix element and excitation/detection geometry).
+Use the check waves and the check
argument as described above.
You can bin and plot the data in one step:
+or two steps:
+The benefit of the latter is that you have more control over the graph through optional arguments. In particular, you can select the projection or hide the ticks and grids. See display_hemi_scan for details.
+The pizza_service function requires the waves with manipulator positions in a specific place, namely :attr:ManipulatorTheta
(for the polar angle), and the normal emission values as function arguments. If you have moved the waves, or if you have subtracted the offsets yourself, use the alternative pizza_service_2 function.
Additional parameters of the pizza_service function allow for rotational averaging, larger angle steps (default 1 degree), or the creation of metadata including a notebook for xpdPlot.
+Note there is currently a bug in the nick name argument of some of the following functions. If the lines shown below do not work, try to switch to the data folder that contains the generated polar plot data, and call the function with an empty nickname ""
.
To remove high polar angles above θ = 80 from the plot (and data):
+Modify the pseudocolor scale by changing the polarY0
trace:
To set the contrast to clip specified percentiles of the data points, use the
Polar plots can also be interpolated to a rectangular matrix, which may in some cases produce nicer images:
+The matrix =
line optionally removes artefacts at high polar angles. Replace the cut-off angle with your own.
To calculate the modulation function and substitute it in the graph:
+The following line is an example of how to export a graph window. Click on the desired graph window, then issue the following command, substituting the file path and file name as appropriate.
+The following line saves the dataset to an Igor text file. The file contains all data necessary to recreate a polar plot without further processing.
+For structural optimization using the PMSCO software, it is necessary to generate an ETPI file. There is currently no special function for this. Instead, you have to create and set an energy wave,
+and write the four waves en, pol, az, values
to a general text file. Be careful about the ordering of the waves! You will also have to rename the file to the .etpi
extension because Igor always saves with .txt
extension. If you have a wave with statistical errors, add a fifth column and use the .etpis
extension.
Projections | Functions of the anglescan package support the following map projections |
Todo List | |
Angle-scan processing |
interactive processing of angle scanned XPD data. -More...
-#include "pearl-anglescan-process"
#include "pearl-pmsco-import"
Go to the source code of this file.
--Namespaces | |
PearlAnglescanPanel | |
interactive processing of angle scanned XPD data. | |
-Functions | |
static variable | AfterCompiledHook () |
initialize package data once when the procedure is first loaded More... | |
static variable | init_package () |
static variable | save_prefs () |
save persistent package data to the preferences file. More... | |
static variable | load_prefs () |
load persistent package data from the preferences file. More... | |
variable | asp_import_raw (wave raw_data) |
import raw data More... | |
variable | asp_display_previews () |
display a graph window of the processed data. More... | |
variable | asp_display_dist_check (variable xdist, variable ydist) |
display a graph window of the distribution checks. More... | |
static variable | do_init_process (variable check) |
initialize the process data with a copy of the raw data. More... | |
static variable | do_crop_alpha (variable check, variable force=defaultValue) |
alpha-crop the process data. More... | |
static variable | do_norm_alpha (variable check, variable force=defaultValue) |
alpha-normalize the process data. More... | |
static variable | do_norm_phi (variable check, variable force=defaultValue) |
phi-normalize the process data. More... | |
static variable | do_norm_theta (variable check, variable force=defaultValue) |
theta-normalize the process data. More... | |
static variable | do_norm_thetaphi (variable check, variable force=defaultValue) |
theta,phi-normalize the process data. More... | |
variable | asp_calculate_output () |
calculate the output using all enabled processing filters. More... | |
variable | asp_display_output () |
display the output diffractogram in a new graph More... | |
variable | asp_update_graph () |
update graphs with new color table or contrast More... | |
variable | asp_close_graphs () |
close all graphs created by the angle scan panel More... | |
variable | asp_duplicate_output (string dest_name) |
copy the output data to a new folder More... | |
variable | asp_save_output_itx () |
save the output diffractogram to an igor text file More... | |
variable | asp_save_output_etpi (variable ekin) |
save the output diffractogram to a PMSCO ETPI file More... | |
static variable | check_norm_alpha () |
static variable | check_norm_phi () |
static variable | check_norm_theta () |
static variable | check_norm_thetaphi () |
static variable | preview_crop_alpha () |
static variable | preview_norm_alpha () |
static variable | preview_norm_phi () |
static variable | preview_norm_theta () |
static variable | preview_norm_thetaphi () |
variable | asp_show_panel () |
create the angle scan processing panel More... | |
static variable | arrange_controls () |
static variable | update_menus () |
update the popup menus to reflect the values of the global variables More... | |
static variable | bp_source_select (WMButtonAction *ba) |
static variable | bp_norm_alpha_check (WMButtonAction *ba) |
static variable | bp_norm_theta_check (WMButtonAction *ba) |
static variable | bp_norm_phi_check (WMButtonAction *ba) |
static variable | bp_norm_thetaphi_check (WMButtonAction *ba) |
static variable | bp_crop_alpha_preview (WMButtonAction *ba) |
static variable | bp_norm_alpha_preview (WMButtonAction *ba) |
static variable | bp_norm_phi_preview (WMButtonAction *ba) |
static variable | bp_norm_theta_preview (WMButtonAction *ba) |
static variable | bp_norm_thetaphi_preview (WMButtonAction *ba) |
static variable | bp_output_calc (WMButtonAction *ba) |
static variable | bp_output_duplicate (WMButtonAction *ba) |
static variable | bp_output_etpi (WMButtonAction *ba) |
static variable | bp_output_itx (WMButtonAction *ba) |
static variable | bp_graph_update (WMButtonAction *ba) |
static variable | bp_graph_png (WMButtonAction *ba) |
static variable | pmp_norm_alpha_mode (WMPopupAction *pa) |
static variable | pmp_norm_theta_mode (WMPopupAction *pa) |
static variable | pmp_norm_thetaphi_mode (WMPopupAction *pa) |
static variable | pmp_graph_mode (WMPopupAction *pa) |
static variable | pmp_graph_projection (WMPopupAction *pa) |
static variable | pmp_graph_colortable (WMPopupAction *pa) |
-Variables | |
static const string | package_name = "pearl_anglescan_panel" |
package name is used as data folder name More... | |
static const string | package_path = "root:packages:pearl_anglescan_panel:" |
data folder path More... | |
static const string | prefs_objects = "theta_offset;tilt_offset;phi_offset;alpha_offset;crop_alpha_enable;crop_alpha_value;norm_alpha_enable;norm_alpha_mode;norm_alpha_smoothing;norm_phi_enable;norm_phi_mode;norm_phi_thetarange;norm_theta_enable;norm_theta_mode;norm_theta_smoothing;norm_thetaphi_enable;norm_thetaphi_mode;norm_theta_smoothing;output_folding;output_horizon;graph_mode;graph_projection;graph_colortable;graph_contrast;" |
semicolon-separated list of persistent variable, string, and wave names More... | |
interactive processing of angle scanned XPD data.
-steps to process a hemispherical scan into a diffractogram:
Definition in file pearl-anglescan-panel.ipf.
-
-
|
- -static | -
initialize package data once when the procedure is first loaded
- -Definition at line 52 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 908 of file pearl-anglescan-panel.ipf.
- -variable asp_calculate_output | -( | -) | -- |
calculate the output using all enabled processing filters.
-the diffractogram is calculated, to display the graph, call asp_display_graph.
- -Definition at line 542 of file pearl-anglescan-panel.ipf.
- -variable asp_close_graphs | -( | -) | -- |
close all graphs created by the angle scan panel
- -Definition at line 615 of file pearl-anglescan-panel.ipf.
- -variable asp_display_dist_check | -( | -variable | -xdist, | -
- | - | variable | -ydist | -
- | ) | -- |
display a graph window of the distribution checks.
-if the window exists, it is updated and brought to the front of the window stack.
-xdist | 1: display the x-distribution; 0: don't. |
ydist | 1: display the y-distribution; 0: don't. |
Definition at line 266 of file pearl-anglescan-panel.ipf.
- -variable asp_display_output | -( | -) | -- |
display the output diffractogram in a new graph
- -Definition at line 577 of file pearl-anglescan-panel.ipf.
- -variable asp_display_previews | -( | -) | -- |
display a graph window of the processed data.
-if the window exists, it is updated and brought to the front of the window stack.
- -Definition at line 242 of file pearl-anglescan-panel.ipf.
- -variable asp_duplicate_output | -( | -string | -dest_name | ) | -- |
copy the output data to a new folder
-dest_name | name of destination folder. can contain a relative (starting with a colon) or absolute (starting with "root:") path. folders in the path must exist except for the last one. the destination folder does not need to exist. existing data in the destination folder is overwritten. |
Definition at line 650 of file pearl-anglescan-panel.ipf.
- -variable asp_import_raw | -( | -wave | -raw_data | ) | -- |
import raw data
-the raw data are copied into the package data folder, and the process waves are initialized.
-raw_data | 2D intensity distribution. the x dimension is the detection angle. the y dimension is an arbitrary sequence of manipulator scan positions. ManipulatorTheta, ManipulatorPilt and ManipulatorPhi waves that indicate the manipulator angles for each y position must be present in the :attr sub-folder next to the raw data wave. |
Definition at line 197 of file pearl-anglescan-panel.ipf.
- -variable asp_save_output_etpi | -( | -variable | -ekin | ) | -- |
save the output diffractogram to a PMSCO ETPI file
-ekin | kinetic energy in eV |
Definition at line 687 of file pearl-anglescan-panel.ipf.
- -variable asp_save_output_itx | -( | -) | -- |
save the output diffractogram to an igor text file
- -Definition at line 672 of file pearl-anglescan-panel.ipf.
- -variable asp_show_panel | -( | -) | -- |
create the angle scan processing panel
- -Definition at line 771 of file pearl-anglescan-panel.ipf.
- -variable asp_update_graph | -( | -) | -- |
update graphs with new color table or contrast
-applies to the preview graph and the diffractogram.
- -Definition at line 597 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 1162 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 1316 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 1302 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 1106 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 1176 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 1134 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 1190 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 1120 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 1204 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 1148 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 1218 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 1232 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 1247 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 1266 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 1288 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 1080 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 707 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 714 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 721 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 728 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
alpha-crop the process data.
-[in] | check | select which output to generate (currently not used).
|
[in] | force | override the global enable flag.
|
Definition at line 351 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
initialize the process data with a copy of the raw data.
-applies the angle offsets.
-[in] | check | select which output to generate (currently not used).
|
Definition at line 311 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
alpha-normalize the process data.
-[in] | check | select which output to generate.
|
[in] | force | override the global enable flag.
|
Definition at line 380 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
phi-normalize the process data.
-[in] | check | select which output to generate.
|
[in] | force | override the global enable flag.
|
Definition at line 421 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
theta-normalize the process data.
-[in] | check | select which output to generate.
|
[in] | force | override the global enable flag.
|
Definition at line 464 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
theta,phi-normalize the process data.
-[in] | check | select which output to generate.
|
[in] | force | override the global enable flag.
|
Definition at line 506 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 77 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
load persistent package data from the preferences file.
-the preferences file is an Igor packed experiment file in a special preferences folder.
-this function is called automatically when the procedure is first compiled, or whenever the user clicks the corresponding button.
- -Definition at line 161 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 1415 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 1383 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 1399 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 1335 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 1351 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 1367 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 735 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 741 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 748 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 755 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
Definition at line 762 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
save persistent package data to the preferences file.
-this function is called when the user clicks the corresponding button.
- -Definition at line 137 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
update the popup menus to reflect the values of the global variables
- -Definition at line 1054 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
package name is used as data folder name
- -Definition at line 45 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
data folder path
- -Definition at line 47 of file pearl-anglescan-panel.ipf.
- -
-
|
- -static | -
semicolon-separated list of persistent variable, string, and wave names
- -Definition at line 49 of file pearl-anglescan-panel.ipf.
- -processing and holographic mapping of angle scanned XPD data. -More...
-#include "pearl-vector-operations"
#include "pearl-polar-coordinates"
#include <New Polar Graphs>
Go to the source code of this file.
--Namespaces | |
PearlAnglescanProcess | |
processing and holographic mapping of angle scanned XPD data. | |
-Functions | |
variable | strip_delete_frames (wave strip, variable qlo, variable qhi, wave theta, wave tilt, wave phi) |
delete a contiguous range of frames from a strip. More... | |
variable | normalize_strip_x (wave strip, variable smooth_method=defaultValue, variable smooth_factor=defaultValue, variable check=defaultValue) |
divide the strip by the average X distribution. More... | |
variable | normalize_strip_phi (wave strip, wave theta, wave phi, variable theta_offset=defaultValue, variable theta_range=defaultValue, variable check=defaultValue) |
divide the strip by a sine function in phi (wobble correction). More... | |
variable | normalize_strip_theta (wave strip, wave theta, variable theta_offset=defaultValue, variable smooth_method=defaultValue, variable smooth_factor=defaultValue, variable check=defaultValue) |
divide the strip by the average polar distribution. More... | |
variable | normalize_strip_thetaphi (wave strip, wave theta, wave phi, variable theta_offset=defaultValue, variable smooth_method=defaultValue, variable smooth_factor=defaultValue, variable check=defaultValue) |
divide the strip by a smooth polar-azimuthal distribution. More... | |
variable | normalize_strip_2d (wave strip, wave theta, variable theta_offset=defaultValue, variable smooth_method=defaultValue, variable smooth_factor=defaultValue, variable check=defaultValue) |
divide the strip by a two-dimensional normalization function. More... | |
variable | crop_strip (wave strip, variable xlo, variable xhi) |
crop a strip at the sides. More... | |
variable | pizza_service (wave data, string nickname, variable theta_offset, variable tilt_offset, variable phi_offset, variable npolar=defaultValue, variable nograph=defaultValue, variable folding=defaultValue, variable xpdplot=defaultValue) |
create a pizza plot from a measured (energy-integrated) data strip More... | |
variable | pizza_service_2 (wave data, string nickname, wave m_theta, wave m_tilt, wave m_phi, variable npolar=defaultValue, variable nograph=defaultValue, variable folding=defaultValue, variable xpdplot=defaultValue) |
create a pizza plot from a measured (energy-integrated) data strip More... | |
variable | show_analyser_line (variable theta, variable tilt, variable phi, variable theta_offset, variable tilt_offset, variable phi_offset, variable npolar=defaultValue, variable nograph=defaultValue, variable xpdplot=defaultValue) |
calculate and display the line seen by the analyser for a specific emission angle More... | |
variable | convert_angles_ttpd2polar (wave theta, wave tilt, wave phi, wave data, wave polar, wave azi) |
convert angles from TTPA (theta-tilt-phi-analyser) scheme to polar coordinates. More... | |
variable | convert_angles_ttpa2polar (wave theta, wave tilt, wave phi, wave analyser, wave polar, wave azi) |
convert angles from TTPA (theta-tilt-phi-analyser) scheme to polar coordinates. More... | |
static variable | line_average (wave source, wave dest) |
static variable | calc_nth (variable Theta_st, variable Theta_in, variable th, variable Phi_ran, variable Phi_ref, string Holomode) |
calculate the number of phis for a given theta More... | |
static variable | calc_phi_step (variable Theta_in, variable th, variable Theta_st, variable Phi_ran, variable Phi_ref, string Holomode) |
calculate delta-phi for a given theta More... | |
static variable | Calc_The_step (variable th, variable Theta_st, string Holomode) |
calculate delta-theta for a given theta More... | |
static variable | CalcN_Theta (string HoloMode, variable Theta_in, variable Theta_ran, variable Theta_st) |
calculate the number of thetas for a pattern More... | |
variable | make_hemi_grid (variable npol, string nickname, variable xpdplot=defaultValue) |
create a hemispherical, constant solid angle grid More... | |
string | get_hemi_nickname (wave w) |
finds the nick name given any hemi wave More... | |
string | get_hemi_prefix (wave w) |
finds the prefix given any hemi wave More... | |
dfr | find_hemi_data (string nickname, string *prefix, string *intwave) |
finds the folder, prefix and name of holo waves given their nick name More... | |
variable | clear_hemi_grid (string nickname) |
clear a hemispherical scan grid More... | |
variable | duplicate_hemi_scan (string source_nickname, dfref dest_folder, string dest_nickname, variable xpdplot=defaultValue) |
duplicate a hemispherical scan dataset. More... | |
variable | rotate_hemi_scan (string nickname, variable angle) |
azimuthally rotate a hemispherical scan dataset. More... | |
string | display_hemi_scan (string nickname, variable projection=defaultValue, variable graphtype=defaultValue, variable do_ticks=defaultValue, variable do_grids=defaultValue, string graphname=defaultValue) |
display a plot of a hemispherical angle scan. More... | |
static string | display_polar_graph (string graphname, variable angle_offset=defaultValue, variable do_ticks=defaultValue) |
displays an empty polar graph More... | |
static string | draw_hemi_axes (string graphname, variable do_grids=defaultValue) |
draw polar and azimuthal grids in an existing polar graph. More... | |
variable | draw_diffraction_cone (string graphname, string groupname, variable theta_axis, variable theta_inner, variable phi) |
draw the circle of a diffraction cone in a stereographic polar graph. More... | |
string | display_scanlines (string nickname, variable alpha_lo, variable alpha_hi, wave m_theta, wave m_tilt, wave m_phi, variable folding=defaultValue, variable projection=defaultValue) |
display a polar graph with lines indicating the angles covered by an angle scan. More... | |
threadsafe variable | calc_graph_radius (variable polar, variable projection=defaultValue) |
calculate the projected polar angle More... | |
threadsafe variable | calc_graph_polar (variable x, variable y, variable projection=defaultValue) |
calculate polar angle from Cartesian coordinate More... | |
threadsafe variable | calc_graph_azi (variable x, variable y, variable projection=defaultValue, variable zeroAngle=defaultValue) |
calculate azimuthal angle from Cartesian coordinate More... | |
static variable | update_polar_info (string graphname) |
update the angles info based on cursors A and B of a given polar graph window More... | |
static variable | polar_graph_hook (WMWinHookStruct *s) |
polar graph window hook More... | |
variable | set_polar_graph_cursor (string nickname, string cursorname, variable polar_angle, variable azim_angle, string graphname=defaultValue) |
variable | hemi_add_anglescan (string nickname, wave values, wave polar, wave azi, wave weights=defaultValue) |
add an arbitrary angle scan to a hemispherical scan grid. More... | |
variable | hemi_add_aziscan (string nickname, wave values, variable polar, wave azi, wave weights=defaultValue) |
add an azimuthal scan to a hemispherical scan grid. More... | |
variable | interpolate_hemi_scan (string nickname) |
interpolate a hemispherical scan onto a rectangular grid More... | |
variable | quick_pizza_image (wave data, string nickname, variable theta_offset, variable tilt_offset, variable phi_offset, variable npolar=defaultValue, variable nograph=defaultValue, variable folding=defaultValue) |
map angle scan data onto a rectangular grid in stereographic projection More... | |
variable | save_hemi_scan (string nickname, string pathname, string filename) |
save a hemispherical scan to an Igor text file More... | |
variable | load_hemi_scan (string nickname, string pathname, string filename) |
load a hemispherical scan from an Igor text file More... | |
variable | import_tpi_scan (string nickname, wave theta, wave phi, wave intensity, variable folding=defaultValue, variable npolar=defaultValue, variable nograph=defaultValue, variable xpdplot=defaultValue) |
import a hemispherical scan from theta-phi-intensity waves and display it More... | |
variable | trim_hemi_scan (string nickname, variable theta_max) |
trim a hemispherical scan at grazing angle More... | |
wave | hemi_polar_cut (string nickname, variable azim) |
extract a polar cut from a hemispherical scan. More... | |
wave | hemi_azi_cut (string nickname, variable pol) |
extract an azimuthal cut from a hemispherical scan More... | |
static variable | check_contrast (wave values, variable pcmin, variable pcmax, variable *vmin, variable *vmax) |
variable | set_contrast (variable pcmin, variable pcmax, string graphname=defaultValue, string colortable=defaultValue) |
set the pseudocolor contrast by percentile. More... | |
-Variables | |
const variable | kProjDist = 0 |
const variable | kProjStereo = 1 |
const variable | kProjArea = 2 |
const variable | kProjGnom = 3 |
const variable | kProjOrtho = 4 |
static const variable | kProjScaleDist = 2 |
static const variable | kProjScaleStereo = 2 |
static const variable | kProjScaleArea = 2 |
static const variable | kProjScaleGnom = 0.06744519021 |
static const variable | kProjScaleOrtho = 2 |
processing and holographic mapping of angle scanned XPD data.
-the functions in this file map angle scanned data measured at PEARL onto a hemispherical angle grid which is compatible with XPDplot. the resulting data are in a canonical polar coordinate system (normal emission <=> polar angle = 0, azimuthal axis right-handed) which is anchored in the sample surface. the orientation of polar graphs (phi = 0 at 3 o'clock) created by this procedure corresponds to a top view of the sample surface at normal emission, and the handle of the sample plate pointing to the left (phi = 180). this is the canonical orientation of a spherical coordinate system where phi = 0 corresponds to the positive part of the x axis.
-the measurement geometry is hard-coded but may be parametrized in the future. the theta rotation axis is perpendicular to the scattering plane. the angle dispersive axis of the analyser is parallel to the theta rotation axis. the tilt rotation axis is in the scattering plane. it rotates with theta. at normal emission it is perpendicular to the axis of the lens stack of the analyser. the phi rotation axis corresponds to the surface normal of the sample. it rotates with theta and with tilt. at normal emission it is parallel to the axis of the lens stack of the analyser.
-coordinate transformations: (to be revised - v1.6)
* theta_sample = theta_manipulator - theta_offset -* phi_sample = phi_manipulator - phi_offset -*
valid for theta_manipulator = normal emission only: (to be revised - v1.6)
* theta_sample = | -(tilt_manipulator - tilt_offset) | -* phi_sample = 270 if tilt_manipulator - tilt_offset > 0 -* phi_sample = 90 if tilt_manipulator - tilt_offset < 0 -*
Definition in file pearl-anglescan-process.ipf.
-threadsafe variable calc_graph_azi | -( | -variable | -x, | -
- | - | variable | -y, | -
- | - | variable | -projection = defaultValue , |
-
- | - | variable | -zeroAngle = defaultValue |
-
- | ) | -- |
calculate azimuthal angle from Cartesian coordinate
-x,y | projected Cartesian coordinate |
projection | mapping function from polar to cartesian coordinates. all supported projections are azimuthal, they have no effect on the azimuthal coordinate. see Projections for details.
|
zeroAngle | zeroAngleWhere parameter of polar graphs
|
Definition at line 2203 of file pearl-anglescan-process.ipf.
- -threadsafe variable calc_graph_polar | -( | -variable | -x, | -
- | - | variable | -y, | -
- | - | variable | -projection = defaultValue |
-
- | ) | -- |
calculate polar angle from Cartesian coordinate
-this is the reverse mapping to calc_graph_radius()
-x,y | projected Cartesian coordinate |
projection | mapping function from polar to cartesian coordinates. see Projections for details.
|
Definition at line 2150 of file pearl-anglescan-process.ipf.
- -threadsafe variable calc_graph_radius | -( | -variable | -polar, | -
- | - | variable | -projection = defaultValue |
-
- | ) | -- |
calculate the projected polar angle
-polar | polar angle in degrees |
projection | mapping function from polar to cartesian coordinates. see Projections for details.
|
Definition at line 2105 of file pearl-anglescan-process.ipf.
- -
-
|
- -static | -
calculate the number of phis for a given theta
-adapted from XPDplot 8.03
- -Definition at line 1018 of file pearl-anglescan-process.ipf.
- -
-
|
- -static | -
calculate delta-phi for a given theta
-adapted from XPDplot 8.03
- -Definition at line 1047 of file pearl-anglescan-process.ipf.
- -
-
|
- -static | -
calculate delta-theta for a given theta
-adapted from XPDplot 8.03
- -Definition at line 1091 of file pearl-anglescan-process.ipf.
- -
-
|
- -static | -
calculate the number of thetas for a pattern
-adapted from XPDplot 8.03
- -Definition at line 1122 of file pearl-anglescan-process.ipf.
- -
-
|
- -static | -
Definition at line 3001 of file pearl-anglescan-process.ipf.
- -variable clear_hemi_grid | -( | -string | -nickname | ) | -- |
clear a hemispherical scan grid
-values and weights waves are set to zero. the intensity wave is set to NaN.
-nickname | folder name or name prefix of holo waves. may be empty. |
Definition at line 1401 of file pearl-anglescan-process.ipf.
- -variable convert_angles_ttpa2polar | -( | -wave | -theta, | -
- | - | wave | -tilt, | -
- | - | wave | -phi, | -
- | - | wave | -analyser, | -
- | - | wave | -polar, | -
- | - | wave | -azi | -
- | ) | -- |
convert angles from TTPA (theta-tilt-phi-analyser) scheme to polar coordinates.
-the angles are in the manipulator coordinate system.
-[in] | theta | offset-corrected theta angle, normal emission = 0, grazing emission = 90. one dimensional wave. |
[in] | tilt | offset-corrected tilt angle, normal emission = 0 same dimension size and scale as theta |
[in] | phi | phi angle, range -360 < phi < +360 offset correction is optional as long as the angles lie in the accepted range. same dimension size and scale as theta |
[in] | analyser | analyser angle scale corresponding to the slices scale of Scienta. one dimensional wave. this values are constant regardless of manipulator angle. |
[out] | polar | wave to receive the polar coordinates. |
[out] | azi | wave to receive the azimuthal coordinates. |
for the output parameters polar and azi, you need to pass in existing numeric waves. dimension size does not matter, the waves are redimensioned by the function so that they have the same dimensions as the intensity data set. X dimension = analyser scale, Y dimension = manipulator scan.
- -Definition at line 957 of file pearl-anglescan-process.ipf.
- -variable convert_angles_ttpd2polar | -( | -wave | -theta, | -
- | - | wave | -tilt, | -
- | - | wave | -phi, | -
- | - | wave | -data, | -
- | - | wave | -polar, | -
- | - | wave | -azi | -
- | ) | -- |
convert angles from TTPA (theta-tilt-phi-analyser) scheme to polar coordinates.
-similar to convert_angles_ttpa2polar() but reads the analyser angles from the X scale of data
- -Definition at line 918 of file pearl-anglescan-process.ipf.
- -variable crop_strip | -( | -wave | -strip, | -
- | - | variable | -xlo, | -
- | - | variable | -xhi | -
- | ) | -- |
crop a strip at the sides.
-the strip is cropped in place, data outside the region of interest is lost.
-[in,out] | strip | 2D data, X-axis = analyser angle, Y-axis = arbitrary manipulator scan |
[in] | xlo | lowest analyser angle to keep (will be rounded to nearest existing point) |
[in] | xhi | highest analyser angle to keep (will be rounded to nearest existing point) |
Definition at line 578 of file pearl-anglescan-process.ipf.
- -string display_hemi_scan | -( | -string | -nickname, | -
- | - | variable | -projection = defaultValue , |
-
- | - | variable | -graphtype = defaultValue , |
-
- | - | variable | -do_ticks = defaultValue , |
-
- | - | variable | -do_grids = defaultValue , |
-
- | - | string | -graphname = defaultValue |
-
- | ) | -- |
display a plot of a hemispherical angle scan.
-the scan data must exist in the current data folder. azimuth = 0 should be at 9 o'clock. then the orientation is the same as the sample at normal emission and phi = 0, the handle of the sample plate pointing to the left.
-nickname | name prefix of holo waves. may be empty. |
projection | mapping function from polar to cartesian coordinates. see Projections for details.
|
graphtype | type of graph
|
do_ticks | select which ticks to draw. value must be the arithmetic OR of all selected items. default: 3
|
do_grids | select which grids to draw. value must be the arithmetic OR of all selected items. default: 3
|
graphname | name of graph window. default: nickname if empty, a default name is assigned. if a window with this name is existing, the function brings it to the front, and does nothing else. |
Definition at line 1601 of file pearl-anglescan-process.ipf.
- -
-
|
- -static | -
displays an empty polar graph
-the graph is drawn using Wavemetrics "New Polar Graphs.ipf".
-initially the graph is empty. hemispherical scans are displayed by adding a trace that coveres the whole plot area, and setting the trace color to a function of the intensity. traces are added by calling WMPolarAppendTrace.
-the following items of the graph > packages menu might be useful:
parameters can be changed programmatically as shown in the code of this function. after programmatic parameter changes, call WMPolarAxesRedrawGraphNow(graphname).
-graphname | requested name of new graph window. if empty, a default name is assigned. if a window with this name is existing, the function brings it to the front, and does nothing else. |
angle_offset | azimuth (on screen) where angle 0 is plotted (zeroAngleWhere parameter of polar graphs). starting with version 1.6, the default is 0. for hemi grids created with earlier versions, it should be set to 180 for correct orientation. |
do_ticks | select which ticks to draw. value must be the arithmetic OR of all selected items. default: 3
|
Definition at line 1739 of file pearl-anglescan-process.ipf.
- -string display_scanlines | -( | -string | -nickname, | -
- | - | variable | -alpha_lo, | -
- | - | variable | -alpha_hi, | -
- | - | wave | -m_theta, | -
- | - | wave | -m_tilt, | -
- | - | wave | -m_phi, | -
- | - | variable | -folding = defaultValue , |
-
- | - | variable | -projection = defaultValue |
-
- | ) | -- |
display a polar graph with lines indicating the angles covered by an angle scan.
-nickname | nick name for output data. this will become the name of a child folder containing the output. |
alpha_lo | low limit of the analyser angle. |
alpha_hi | high limit of the analyser angle. |
m_theta | manipulator theta angles, 0 = normal emission. size = dimsize(data, 1) |
m_tilt | manipulator tilt angles, 0 = normal emission. size = dimsize(data, 1) |
m_phi | manipulator phi angles, 0 = azimuthal origin. size = dimsize(data, 1) |
folding | rotational averaging, default = 1 |
projection | mapping function from polar to cartesian coordinates. see calc_graph_radius(). |
Definition at line 1990 of file pearl-anglescan-process.ipf.
- -variable draw_diffraction_cone | -( | -string | -graphname, | -
- | - | string | -groupname, | -
- | - | variable | -theta_axis, | -
- | - | variable | -theta_inner, | -
- | - | variable | -phi | -
- | ) | -- |
draw the circle of a diffraction cone in a stereographic polar graph.
-the diffraction cone consists of a circle marking the diffraction ring, and a dot marking the axis. the cone is drawn as a group of draw objects on the UserFront layer. the objects can be edited interactively.
-graphname | name of graph window (not implemented yet). |
groupname | name of a drawing group. if the group exists (from a previous cone) it is replaced. if the group doesn't exist, a new one is created. |
theta_axis | polar angle of the cone axis in degrees. |
theta_inner | polar angle of the innermost point of the circle in degrees. |
phi | azimuthal angle of the cone axis in degrees. |
Definition at line 1926 of file pearl-anglescan-process.ipf.
- -
-
|
- -static | -
draw polar and azimuthal grids in an existing polar graph.
-the function adds the following draw objects to a polar graph:
the objects are added to the ProgFront drawing layer and will appear in front of the data trace. in interactive drawing mode, you can select the active drawing layer by clicking the tree icon while holding the Alt key.
-the graph must have been created by display_polar_graph(). the function reads the projection mode from the window user data "projection".
-graphname | name of graph window. |
do_grids | select which optional grids to draw. value must be the arithmetic OR of all selected items. default: 3
|
Definition at line 1854 of file pearl-anglescan-process.ipf.
- -variable duplicate_hemi_scan | -( | -string | -source_nickname, | -
- | - | dfref | -dest_folder, | -
- | - | string | -dest_nickname, | -
- | - | variable | -xpdplot = defaultValue |
-
- | ) | -- |
duplicate a hemispherical scan dataset.
-this function works only for hemi scans created by make_hemi_grid() (or compatible functions). the angle grid is recreated rather than copied point-by-point. the new dataset is independent from the original one.
-if the version of the source dataset is pre 1.6, it is converted to version 1.6.
-source_nickname | name prefix for waves. source data must be in current data folder. |
dest_folder | destination folder. folder must exist. |
dest_nickname | name prefix for destination waves. must be unique in the current data folder. otherwise existing waves get overwritten. may be empty. |
xpdplot | XPDplot compatibility
|
Definition at line 1448 of file pearl-anglescan-process.ipf.
- -dfr find_hemi_data | -( | -string | -nickname, | -
- | - | string * | -prefix, | -
- | - | string * | -intwave | -
- | ) | -- |
finds the folder, prefix and name of holo waves given their nick name
-the function looks for holo waves in the following order:
[in] | nickname | folder name or name prefix of holo waves. may be empty. |
[out] | prefix | name prefix of waves. may be empty. |
[out] | intwave | name of intensity/values wave |
Definition at line 1367 of file pearl-anglescan-process.ipf.
- -string get_hemi_nickname | -( | -wave | -w | ) | -- |
finds the nick name given any hemi wave
-the nick name is either the name of a child folder in the current data folder (PEARL specification), or a prefix of the hemi wave names (XPDplot specification).
-Definition at line 1311 of file pearl-anglescan-process.ipf.
- -string get_hemi_prefix | -( | -wave | -w | ) | -- |
finds the prefix given any hemi wave
-the prefix is the part of the wave name before the first underscore. the prefix is used by XPDplot where it is identical to the nick name. the prefix is empty in the PEARL specification.
-Definition at line 1336 of file pearl-anglescan-process.ipf.
- -variable hemi_add_anglescan | -( | -string | -nickname, | -
- | - | wave | -values, | -
- | - | wave | -polar, | -
- | - | wave | -azi, | -
- | - | wave | -weights = defaultValue |
-
- | ) | -- |
add an arbitrary angle scan to a hemispherical scan grid.
-the hemi grid must have been created in the current data folder by the make_hemi_grid function. the function determines the bin size at the given polar angle, and adds all data points which fall into a bin. a point which lies exactly on the upper boundary falls into the next bin. this function does not clear previous values before adding new data. values are added to the _tot wave, weights to the _wt wave. the intensity (_i) wave is calculated as _tot / _wt.
- -Definition at line 2348 of file pearl-anglescan-process.ipf.
- -variable hemi_add_aziscan | -( | -string | -nickname, | -
- | - | wave | -values, | -
- | - | variable | -polar, | -
- | - | wave | -azi, | -
- | - | wave | -weights = defaultValue |
-
- | ) | -- |
add an azimuthal scan to a hemispherical scan grid.
-the hemi grid must have been created in the current data folder by the make_hemi_grid function. the function determines the bin size at the given polar angle, and calculates the mean values of the data points which fall into a bin. a point which lies exactly on the upper boundary falls into the next bin.
- -Definition at line 2418 of file pearl-anglescan-process.ipf.
- -wave hemi_azi_cut | -( | -string | -nickname, | -
- | - | variable | -pol | -
- | ) | -- |
extract an azimuthal cut from a hemispherical scan
-the function extracts all azimuthal angles that are present for the given polar angle.
-the hemi grid must have been created in the current data folder by the make_hemi_grid function. correct ordering is required.
-nickname | name of the scan dataset. can be empty if no prefix is used. the dataset must be in the current datafolder. |
pol | polar angle in degrees |
Definition at line 2948 of file pearl-anglescan-process.ipf.
- -wave hemi_polar_cut | -( | -string | -nickname, | -
- | - | variable | -azim | -
- | ) | -- |
extract a polar cut from a hemispherical scan.
-for each polar angle, the function first extracts all azimuthal angles. the intensity is then interpolated between the nearest neighbours of the given azimuth.
-the hemi grid must have been created in the current data folder by the make_hemi_grid function. correct ordering is required.
-nickname | name of the scan dataset. can be empty if no prefix is used. the dataset must be in the current datafolder. |
azim | azimuthal angle in degrees |
Definition at line 2862 of file pearl-anglescan-process.ipf.
- -variable import_tpi_scan | -( | -string | -nickname, | -
- | - | wave | -theta, | -
- | - | wave | -phi, | -
- | - | wave | -intensity, | -
- | - | variable | -folding = defaultValue , |
-
- | - | variable | -npolar = defaultValue , |
-
- | - | variable | -nograph = defaultValue , |
-
- | - | variable | -xpdplot = defaultValue |
-
- | ) | -- |
import a hemispherical scan from theta-phi-intensity waves and display it
-in the tpi format, the hemi scan data is represented by a triple of flat one-dimensional waves corresponding to the polar angle (theta), azimuthal angle (phi) and intensity. no specific sort order is required.
-nickname | nick name for output data
|
theta | theta angles, 0 = normal emission. |
phi | phi angles, 0 = azimuthal origin. size = dimsize(data, 1) |
intensity | intensity wave, see requirements above. |
npolar | number of polar angles, determines polar and azimuthal step size. default = 91 (1 degree steps) |
folding | rotational averaging. example: 3 = average to 3-fold symmetry. default = 1. |
nograph | display a new graph window?
|
xpdplot | XPDplot compatibility
|
Definition at line 2774 of file pearl-anglescan-process.ipf.
- -variable interpolate_hemi_scan | -( | -string | -nickname | ) | -- |
interpolate a hemispherical scan onto a rectangular grid
-the interpolated data is written to a new two-dimensional wave "matrix". the wave has a fixed size of 181 x 181 points optimized for 1-degree polar steps.
-the function requires the ster_x and ster_y waves that are created by display_hemi_scan, and thus implicitly uses the same projection.
-missing values (nan) are interpolated. this works well only if the missing values are reasonable sparse. the function also applies a gaussian filter to smooth the image. empty rings at high polar angles map are preserved.
-to display the result call display_hemi_scan() with graphtype=3.
- -Definition at line 2524 of file pearl-anglescan-process.ipf.
- -
-
|
- -static | -
Definition at line 1000 of file pearl-anglescan-process.ipf.
- -variable load_hemi_scan | -( | -string | -nickname, | -
- | - | string | -pathname, | -
- | - | string | -filename | -
- | ) | -- |
load a hemispherical scan from an Igor text file
-Definition at line 2725 of file pearl-anglescan-process.ipf.
- -variable make_hemi_grid | -( | -variable | -npol, | -
- | - | string | -nickname, | -
- | - | variable | -xpdplot = defaultValue |
-
- | ) | -- |
create a hemispherical, constant solid angle grid
-all necessary waves are created in the current data folder with step size 90 / (npol - 1)
-adapted from XPDplot 8.03
-npol | number of polar angles, determines polar and azimuthal step size. recommended 91 for 1-degree steps. |
nickname | name prefix for waves. nick name must be unique in the current data folder. otherwise existing waves get overwritten. may be empty. |
xpdplot | XPDplot compatibility
|
Definition at line 1160 of file pearl-anglescan-process.ipf.
- -variable normalize_strip_2d | -( | -wave | -strip, | -
- | - | wave | -theta, | -
- | - | variable | -theta_offset = defaultValue , |
-
- | - | variable | -smooth_method = defaultValue , |
-
- | - | variable | -smooth_factor = defaultValue , |
-
- | - | variable | -check = defaultValue |
-
- | ) | -- |
divide the strip by a two-dimensional normalization function.
-check | enable output of intermediate results
|
Definition at line 518 of file pearl-anglescan-process.ipf.
- -variable normalize_strip_phi | -( | -wave | -strip, | -
- | - | wave | -theta, | -
- | - | wave | -phi, | -
- | - | variable | -theta_offset = defaultValue , |
-
- | - | variable | -theta_range = defaultValue , |
-
- | - | variable | -check = defaultValue |
-
- | ) | -- |
divide the strip by a sine function in phi (wobble correction).
-the sine function is a curve fit to the intensity integrated over detector angle with a period of 360.
-this normalization may be useful if the intensity varies with a 360 periodicity in the azimuthal angle, e.g. due to misalignment of the surface normal and the azimuthal rotation axis of the manipulator (wobble). note, however, that this function does not correct other effects of wobble such as angle shifts.
-the strip is normalized in place, previous data is overwritten.
-[in,out] | strip | 2D data, X-axis = analyser angle, Y-axis = arbitrary manipulator scan |
[in] | theta | polar manipulator angle. |
[in] | phi | azimuthal manipulator angle, arbitrary offset. |
[in] | theta_offset | theta value corresponding to normal emission (default 0). |
[in] | theta_range | maximum (offset corrected) theta to consider in the sine fit (default 10). |
check | enable output of intermediate results
|
Definition at line 270 of file pearl-anglescan-process.ipf.
- -variable normalize_strip_theta | -( | -wave | -strip, | -
- | - | wave | -theta, | -
- | - | variable | -theta_offset = defaultValue , |
-
- | - | variable | -smooth_method = defaultValue , |
-
- | - | variable | -smooth_factor = defaultValue , |
-
- | - | variable | -check = defaultValue |
-
- | ) | -- |
divide the strip by the average polar distribution.
-this is a simple way to remove the polar angle dependence. the strip is normalized in place, previous data is overwritten.
[in,out] | strip | 2D data, X-axis = analyser angle, Y-axis = arbitrary manipulator scan |
[in] | theta | polar manipulator angle, 0 = normal emission, 90 = grazing emission |
[in] | theta_offset | |
[in] | smooth_method | smoothing method
|
[in] | smooth_factor | smoothing parameter, depends on smooth_method
|
check | enable output of intermediate results
|
Definition at line 353 of file pearl-anglescan-process.ipf.
- -variable normalize_strip_thetaphi | -( | -wave | -strip, | -
- | - | wave | -theta, | -
- | - | wave | -phi, | -
- | - | variable | -theta_offset = defaultValue , |
-
- | - | variable | -smooth_method = defaultValue , |
-
- | - | variable | -smooth_factor = defaultValue , |
-
- | - | variable | -check = defaultValue |
-
- | ) | -- |
divide the strip by a smooth polar-azimuthal distribution.
-this is a simple way to remove the polar angle dependence. in contrast to normalize_strip_theta this function also removes a smooth variation over azimuthal angles.
-the strip is normalized in place, previous data is overwritten.
-[in,out] | strip | 2D data, X-axis = analyser angle, Y-axis = arbitrary manipulator scan |
[in] | theta | polar manipulator angle, 0 = normal emission, 90 = grazing emission |
[in] | phi | azimuthal manipulator angle. |
[in] | theta_offset | |
[in] | smooth_method | smoothing method
|
[in] | smooth_factor | smoothing parameter, depends on smooth_method
|
check | enable output of intermediate results
|
Definition at line 451 of file pearl-anglescan-process.ipf.
- -variable normalize_strip_x | -( | -wave | -strip, | -
- | - | variable | -smooth_method = defaultValue , |
-
- | - | variable | -smooth_factor = defaultValue , |
-
- | - | variable | -check = defaultValue |
-
- | ) | -- |
divide the strip by the average X distribution.
-this is a simple way to remove the effect of the angle-dependence of the analyser transmission function. the strip is normalized in place, previous data is overwritten.
-[in,out] | strip | 2D data, X-axis = analyser angle, Y-axis = arbitrary manipulator scan |
[in] | smooth_method | smoothing method
|
[in] | smooth_factor | num parameter of Igor's Smooth operation. the default value depends on smooth_method. it is 0.5 for LOESS smoothing, 2 otherwise. |
[in] | check | enable output of intermediate results
|
Definition at line 185 of file pearl-anglescan-process.ipf.
- -variable pizza_service | -( | -wave | -data, | -
- | - | string | -nickname, | -
- | - | variable | -theta_offset, | -
- | - | variable | -tilt_offset, | -
- | - | variable | -phi_offset, | -
- | - | variable | -npolar = defaultValue , |
-
- | - | variable | -nograph = defaultValue , |
-
- | - | variable | -folding = defaultValue , |
-
- | - | variable | -xpdplot = defaultValue |
-
- | ) | -- |
create a pizza plot from a measured (energy-integrated) data strip
-accepts angle-scan data as returned by adh5_load_reduced(), maps them onto a hemispherical scan grid, and displays a polar graph.
-data | 2D intensity wave, see requirements above
|
nickname | nick name for output data
|
theta_offset | manipulator theta angle corresponding to normal emission. the offset is subtracted from the ManipulatorTheta wave before processing. |
tilt_offset | manipulator tilt angle corresponding to normal emission the offset is subtracted from the ManipulatorTilt wave before processing. |
phi_offset | manipulator phi angle corresponding to phi_result = 0 the offset is subtracted from the ManipulatorPhi wave before processing. |
npolar | number of polar angles, determines polar and azimuthal step size. default = 91 (1 degree steps) |
folding | rotational averaging, default = 1 |
nograph | display a new graph window?
|
xpdplot | XPDplot compatibility
|
Definition at line 638 of file pearl-anglescan-process.ipf.
- -variable pizza_service_2 | -( | -wave | -data, | -
- | - | string | -nickname, | -
- | - | wave | -m_theta, | -
- | - | wave | -m_tilt, | -
- | - | wave | -m_phi, | -
- | - | variable | -npolar = defaultValue , |
-
- | - | variable | -nograph = defaultValue , |
-
- | - | variable | -folding = defaultValue , |
-
- | - | variable | -xpdplot = defaultValue |
-
- | ) | -- |
create a pizza plot from a measured (energy-integrated) data strip
-accepts angle-scan data as returned by adh5_load_reduced(), maps them onto a hemispherical scan grid, and displays a polar graph.
-the behaviour of this function is the same as pizza_service() except that the manipulator waves are specified explicitly.
-data | 2D intensity wave, see requirements above
|
nickname | nick name for output data
|
m_theta | manipulator theta angles, 0 = normal emission. size = dimsize(data, 1) |
m_tilt | manipulator tilt angles, 0 = normal emission. size = dimsize(data, 1) |
m_phi | manipulator phi angles, 0 = azimuthal origin. size = dimsize(data, 1) |
npolar | number of polar angles, determines polar and azimuthal step size. default = 91 (1 degree steps) |
folding | rotational averaging, default = 1 |
nograph | display a new graph window?
|
xpdplot | XPDplot compatibility
|
Definition at line 731 of file pearl-anglescan-process.ipf.
- -
-
|
- -static | -
polar graph window hook
-this hook converts the cursor positions to polar coordinates and displays them in a text box on the graph. the text box is visible while the cursor info box is visible.
- -Definition at line 2283 of file pearl-anglescan-process.ipf.
- -variable quick_pizza_image | -( | -wave | -data, | -
- | - | string | -nickname, | -
- | - | variable | -theta_offset, | -
- | - | variable | -tilt_offset, | -
- | - | variable | -phi_offset, | -
- | - | variable | -npolar = defaultValue , |
-
- | - | variable | -nograph = defaultValue , |
-
- | - | variable | -folding = defaultValue |
-
- | ) | -- |
map angle scan data onto a rectangular grid in stereographic projection
-accepts angle-scan data as returned by adh5_load_reduced, maps them onto a rectangular grid in stereographic projection
-data | 2D data wave, X-axis = analyser angle, Y-axis = manipulator scan (no specific ordering required) |
Definition at line 2581 of file pearl-anglescan-process.ipf.
- -variable rotate_hemi_scan | -( | -string | -nickname, | -
- | - | variable | -angle | -
- | ) | -- |
azimuthally rotate a hemispherical scan dataset.
-this function works only for hemi scans created by make_hemi_grid() (or compatible functions).
-nickname | name prefix for waves. source data must be in current data folder. |
angle | azimuthal rotation angle in degrees. |
Definition at line 1523 of file pearl-anglescan-process.ipf.
- -variable save_hemi_scan | -( | -string | -nickname, | -
- | - | string | -pathname, | -
- | - | string | -filename | -
- | ) | -- |
save a hemispherical scan to an Igor text file
- -Definition at line 2692 of file pearl-anglescan-process.ipf.
- -variable set_contrast | -( | -variable | -pcmin, | -
- | - | variable | -pcmax, | -
- | - | string | -graphname = defaultValue , |
-
- | - | string | -colortable = defaultValue |
-
- | ) | -- |
set the pseudocolor contrast by percentile.
-set the minimum and maximum values of the pseudocolor scale such that a specified percentile of the distribution lies outside the limits.
-the new contrast is applied to traces and images of the selected graph that have pseudocolor tables.
-the function is not specific to angle scans. it can be used for any pseudocolor trace or image plots except contour plots.
-pcmin | percentile below the minimum color (0-100). |
pcmax | percentile above the maximum color (0-100). |
graphname | name of graph. default: top graph. |
colortable | name of new colortable. default: keep current table. |
Definition at line 3037 of file pearl-anglescan-process.ipf.
- -variable set_polar_graph_cursor | -( | -string | -nickname, | -
- | - | string | -cursorname, | -
- | - | variable | -polar_angle, | -
- | - | variable | -azim_angle, | -
- | - | string | -graphname = defaultValue |
-
- | ) | -- |
Definition at line 2303 of file pearl-anglescan-process.ipf.
- -variable show_analyser_line | -( | -variable | -theta, | -
- | - | variable | -tilt, | -
- | - | variable | -phi, | -
- | - | variable | -theta_offset, | -
- | - | variable | -tilt_offset, | -
- | - | variable | -phi_offset, | -
- | - | variable | -npolar = defaultValue , |
-
- | - | variable | -nograph = defaultValue , |
-
- | - | variable | -xpdplot = defaultValue |
-
- | ) | -- |
calculate and display the line seen by the analyser for a specific emission angle
-this can be used to compare to an hemispherical plot and check the manipulator angle.
-theta | manipulator theta angle |
tilt | manipulator tilt angle |
phi | manipulator phi angle |
theta_offset | manipulator theta angle corresponding to normal emission |
tilt_offset | manipulator tilt angle corresponding to normal emission |
phi_offset | manipulator phi angle corresponding to phi_result = 0 |
npolar | number of polar angles, determines polar and azimuthal step size. default = 91 (1 degree steps) |
nograph | display a new graph window?
|
xpdplot | XPDplot compatibility
|
Definition at line 848 of file pearl-anglescan-process.ipf.
- -variable strip_delete_frames | -( | -wave | -strip, | -
- | - | variable | -qlo, | -
- | - | variable | -qhi, | -
- | - | wave | -theta, | -
- | - | wave | -tilt, | -
- | - | wave | -phi | -
- | ) | -- |
delete a contiguous range of frames from a strip.
-this can be used to remove a region of bad frames due to, e.g., measurement problems. the function operates on 2D intensity data and manipulator coordinates at the same time.
-[in,out] | strip | 2D data, X-axis = analyser angle, Y-axis = arbitrary manipulator scan. the result is written to the original wave. |
[in,out] | theta | 1D data, manipulator scan. the result is written to the original wave. |
[in,out] | tilt | 1D data, manipulator scan. the result is written to the original wave. |
[in,out] | phi | 1D data, manipulator scan. the result is written to the original wave. |
[in] | qlo | point index of first frame to delete. |
[in] | qhi | point index of last frame to delete. qhi must be greater or equal than qlo. |
Definition at line 105 of file pearl-anglescan-process.ipf.
- -variable trim_hemi_scan | -( | -string | -nickname, | -
- | - | variable | -theta_max | -
- | ) | -- |
trim a hemispherical scan at grazing angle
-the function recalaculates the values wave from totals and weights but sets elements above a given polar angle to nan.
-nickname | name of the scan dataset. can be empty if no prefix is used. the dataset must be in the current datafolder. |
theta_max | highest polar angle to keep (0...90 degrees). |
Definition at line 2823 of file pearl-anglescan-process.ipf.
- -
-
|
- -static | -
update the angles info based on cursors A and B of a given polar graph window
-the function reads the projection mode from the user data of the graph window and the zeroAngleWhere variable from the associated WMPolarGraph data folder.
-the calculated angles are written to the csrA_theta, csrA_phi, csrB_theta, and csrB_phi global variables in the polar graph data folder. the angles text box of the graph updates from to these variables dynamically.
-graphname | name of polar graph window |
Definition at line 2248 of file pearl-anglescan-process.ipf.
- -const variable kProjArea = 2 | -
Definition at line 2080 of file pearl-anglescan-process.ipf.
- -const variable kProjDist = 0 | -
Definition at line 2078 of file pearl-anglescan-process.ipf.
- -const variable kProjGnom = 3 | -
Definition at line 2081 of file pearl-anglescan-process.ipf.
- -const variable kProjOrtho = 4 | -
Definition at line 2082 of file pearl-anglescan-process.ipf.
- -
-
|
- -static | -
Definition at line 2086 of file pearl-anglescan-process.ipf.
- -
-
|
- -static | -
Definition at line 2084 of file pearl-anglescan-process.ipf.
- -
-
|
- -static | -
Definition at line 2088 of file pearl-anglescan-process.ipf.
- -
-
|
- -static | -
Definition at line 2089 of file pearl-anglescan-process.ipf.
- -
-
|
- -static | -
Definition at line 2085 of file pearl-anglescan-process.ipf.
- -const variable kProjStereo = 1 | -
Definition at line 2079 of file pearl-anglescan-process.ipf.
- -#include "pearl-area-profiles"
#include "pearl-area-import"
#include "pearl-scienta-preprocess"
#include "pearl-anglescan-process"
#include <New Polar Graphs>
Go to the source code of this file.
--Functions | |
static variable | AfterCompiledHook () |
initialize package data once when the procedure is first loaded More... | |
static variable | init_package () |
static variable | save_prefs () |
save persistent package data to the preferences file. More... | |
static variable | load_prefs () |
load persistent package data from the preferences file. More... | |
static variable | IgorQuitHook (string app) |
disconnect EPICS channels before Igor quits. More... | |
variable | ast_setup () |
set up data structures, display graph, and try to connect to analyser. More... | |
variable | ast_prepare (variable theta_offset=defaultValue, variable tilt_offset=defaultValue, variable phi_offset=defaultValue) |
prepare for new measurement and clear the data buffer. More... | |
variable | ast_set_processing (string reduction_func, string reduction_params) |
set the data processing parameters More... | |
variable | ast_add_image (wave image, variable theta, variable tilt, variable phi) |
process and add a detector image to the tracker scan. More... | |
variable | ast_export (dfref folder, string nickname, variable xpdplot=defaultValue) |
export tracker data to a separate, independent data set. More... | |
variable | ast_import (string nickname) |
import tracker data from an existing angle scan dataset. More... | |
variable | ast_update_detector (variable theta, variable tilt, variable phi, variable range) |
update the current position indicator. More... | |
variable | ast_close () |
stop tracker, close graph, release data structures. More... | |
static variable | setup_data () |
static variable | extend_data (variable num_slices) |
extend the data buffer for the next polar scan More... | |
static variable | setup_detector () |
static variable | add_image_data (wave image, variable theta, variable tilt, variable phi) |
reduce a detector image and add the result to the data buffer. More... | |
static variable | process_image_data () |
process the data buffer to generate the tracker dataset. More... | |
static variable | update_detector (variable theta, variable tilt, variable phi, variable range) |
update the current position indicator. More... | |
static variable | setup_graph () |
create the graph window. More... | |
static variable | update_data_graph () |
static variable | update_detector_graph () |
static variable | epics_connect () |
connect the angle scan tracker to EPICS More... | |
static variable | epics_disconnect_chid (string chid_var_name) |
static variable | epics_disconnect () |
static variable | ast_window_hook (WMWinHookStruct *s) |
window hook More... | |
variable | ast_callback_data (variable chan) |
callback function for new analyser data from EPICS. More... | |
variable | ast_callback_detector (variable chan) |
callback function for new detector state from EPICS. More... | |
variable | ast_callback_manip (variable chan) |
callback function for new manipulator position from EPICS. More... | |
static variable | bp_capture (WMButtonAction *ba) |
static variable | toggle_capture () |
static variable | update_capture () |
static variable | pmp_data (WMPopupAction *pa) |
static variable | pmp_data_mouseup (WMPopupAction *pa) |
static variable | export_tracker_data () |
export tracker data (with prompt) More... | |
static variable | import_tracker_data () |
import tracker data (with prompt) More... | |
static variable | save_tracker_data () |
save tracker data to file (with prompt) More... | |
static variable | load_tracker_data () |
import tracker data from file (with prompt) More... | |
static variable | pmp_parameters (WMPopupAction *pa) |
static variable | pmp_parameters_mouseup (WMPopupAction *pa) |
static variable | edit_reduction_params () |
static variable | edit_offsets () |
-Variables | |
version | |
static const string | package_path = "root:packages:pearl_anglescan_tracker:" |
data folder path More... | |
static const string | prefs_objects = "projection;theta_offset;tilt_offset;phi_offset;reduction_func;reduction_params" |
semicolon-separated list of persistent variable, string, and wave names More... | |
-
|
- -static | -
reduce a detector image and add the result to the data buffer.
-image | detector image with correct X (energy) and Y (angle) scaling |
theta | polar angle of manipulator |
tilt | tilt angle of manipulator |
phi | azimuthal angle of manipulator |
the manipulator angles are corrected by the preset offsets internally.
- -Definition at line 453 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
initialize package data once when the procedure is first loaded
- -Definition at line 73 of file pearl-anglescan-tracker.ipf.
- -variable ast_add_image | -( | -wave | -image, | -
- | - | variable | -theta, | -
- | - | variable | -tilt, | -
- | - | variable | -phi | -
- | ) | -- |
process and add a detector image to the tracker scan.
-image | detector image with correct X (energy) and Y (angle) scaling |
theta | polar angle of manipulator |
tilt | tilt angle of manipulator |
phi | azimuthal angle of manipulator |
the manipulator angles are corrected by the preset offsets internally.
- -Definition at line 285 of file pearl-anglescan-tracker.ipf.
- -variable ast_callback_data | -( | -variable | -chan | ) | -- |
callback function for new analyser data from EPICS.
- -Definition at line 851 of file pearl-anglescan-tracker.ipf.
- -variable ast_callback_detector | -( | -variable | -chan | ) | -- |
callback function for new detector state from EPICS.
-save the manipulator position at the beginning of image acquisition. it is used by ast_callback_data().
- -Definition at line 956 of file pearl-anglescan-tracker.ipf.
- -variable ast_callback_manip | -( | -variable | -chan | ) | -- |
callback function for new manipulator position from EPICS.
- -Definition at line 985 of file pearl-anglescan-tracker.ipf.
- -variable ast_close | -( | -) | -- |
stop tracker, close graph, release data structures.
- -Definition at line 360 of file pearl-anglescan-tracker.ipf.
- -variable ast_export | -( | -dfref | -folder, | -
- | - | string | -nickname, | -
- | - | variable | -xpdplot = defaultValue |
-
- | ) | -- |
export tracker data to a separate, independent data set.
-the exported data can then be used for further processing. the data is exported to the current data folder, or root if XPDplot compatibility is requested.
-folder | destination folder path |
nickname | name prefix for waves |
xpdplot | xpdplot compatibility, see make_hemi_grid() for details
|
Definition at line 307 of file pearl-anglescan-tracker.ipf.
- -variable ast_import | -( | -string | -nickname | ) | -- |
import tracker data from an existing angle scan dataset.
-nickname | name prefix for waves. data must be in current data folder. |
Definition at line 329 of file pearl-anglescan-tracker.ipf.
- -variable ast_prepare | -( | -variable | -theta_offset = defaultValue , |
-
- | - | variable | -tilt_offset = defaultValue , |
-
- | - | variable | -phi_offset = defaultValue |
-
- | ) | -- |
prepare for new measurement and clear the data buffer.
-optionally, set new manipulator offsets. the offsets are the manipulator readback coordinates where the sample surface is oriented in normal emission, and the handle of the sample plate points horizontally to the left (9 o'clock).
-theta_offset | set new theta offset. default: no change. |
tilt_offset | set new tilt offset. default: no change. |
phi_offset | set new phi offset. default: no change. |
Definition at line 211 of file pearl-anglescan-tracker.ipf.
- -variable ast_set_processing | -( | -string | -reduction_func, | -
- | - | string | -reduction_params | -
- | ) | -- |
set the data processing parameters
-the parameters will be effective for subsequent measurements only. previously acquired data is not affected. the processing parameters are saved with the preferences.
-reduction_func | name of custom reduction function, e.g. "int_linbg_reduction". any user-defined function with the same signature as adh5_default_reduction() is allowed. |
reduction_params | parameter string for the reduction function. the format depends on the actual function. for int_linbg_reduction, e.g., "Lcrop=0.1;Hcrop=0.1;Lsize=0.2;Hsize=0.2;Cpos=0.5;Csize=0.4". |
Definition at line 261 of file pearl-anglescan-tracker.ipf.
- -variable ast_setup | -( | -) | -- |
set up data structures, display graph, and try to connect to analyser.
- -Definition at line 194 of file pearl-anglescan-tracker.ipf.
- -variable ast_update_detector | -( | -variable | -theta, | -
- | - | variable | -tilt, | -
- | - | variable | -phi, | -
- | - | variable | -range | -
- | ) | -- |
update the current position indicator.
-theta | polar angle of manipulator |
tilt | tilt angle of manipulator |
phi | azimuthal angle of manipulator |
range | angle range (60 or 45) |
the manipulator angles are corrected by the preset offsets internally.
- -Definition at line 349 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
window hook
-disconnects from EPICS when the window is closed.
- -Definition at line 836 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
Definition at line 1018 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
Definition at line 1239 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
Definition at line 1223 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
connect the angle scan tracker to EPICS
-the tracker uses channels of the analyser and the manipulator.
-if the EPICS XOP is not loaded, the function does nothing. if channels are not available, the function exits with an error code after a timeout of 5 seconds. the Igor run-time error status is reset to suppress the error dialog.
-Definition at line 680 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
Definition at line 806 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
Definition at line 792 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
export tracker data (with prompt)
- -Definition at line 1100 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
extend the data buffer for the next polar scan
-call this function if the buffer is full.
-num_slices | number of slices that the measurement contains |
Definition at line 402 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
disconnect EPICS channels before Igor quits.
- -Definition at line 188 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
import tracker data (with prompt)
- -Definition at line 1130 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
Definition at line 98 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
load persistent package data from the preferences file.
-the preferences file is an Igor packed experiment file in a special preferences folder.
-this function is called automatically when the procedure is first compiled, or whenever the user clicks the corresponding button.
- -Definition at line 163 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
import tracker data from file (with prompt)
- -Definition at line 1170 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
Definition at line 1066 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
Definition at line 1080 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
Definition at line 1189 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
Definition at line 1203 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
process the data buffer to generate the tracker dataset.
- -Definition at line 507 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
save persistent package data to the preferences file.
-this function is called when the user clicks the corresponding button.
- -Definition at line 139 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
save tracker data to file (with prompt)
- -Definition at line 1159 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
Definition at line 372 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
Definition at line 434 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
create the graph window.
- -Definition at line 594 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
Definition at line 1032 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
Definition at line 1050 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
Definition at line 645 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
update the current position indicator.
-theta | polar angle of manipulator |
tilt | tilt angle of manipulator |
phi | azimuthal angle of manipulator |
range | angle range (60 or 45) |
the manipulator angles are corrected by the preset offsets internally.
- -Definition at line 559 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
Definition at line 657 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
data folder path
- -Definition at line 68 of file pearl-anglescan-tracker.ipf.
- -
-
|
- -static | -
semicolon-separated list of persistent variable, string, and wave names
- -Definition at line 70 of file pearl-anglescan-tracker.ipf.
- -version | -
Definition at line 5 of file pearl-anglescan-tracker.ipf.
- -visualization tools for 2D and 3D data. -More...
-Go to the source code of this file.
--Namespaces | |
PearlAreaDisplay | |
instant visualization of angle scan and manipulator position. | |
-Functions | |
static string | graphname_from_dfref (dfref df, string prefix) |
compose a valid and unique graph name from a data folder reference More... | |
string | ad_display (wave image) |
open a new graph window with a 2D image. More... | |
string | ad_display_histogram (wave image) |
display the histogram of a 2D image. More... | |
string | ad_display_profiles (wave image, string filter=defaultValue) |
open a new profiles graph window. More... | |
variable | ad_update_profiles (wave image) |
update a profiles graph with new data. More... | |
variable | ad_profiles_cursor_mode (wave image, variable mode) |
switch cursors on a profiles graph More... | |
variable | ad_profiles_set_cursor (wave image, string cursorname, variable xa, variable ya, variable pscale=defaultValue) |
move a cursor to the specified position in a profiles graph. More... | |
variable | ad_profiles_crosshairs (wave image, variable clear=defaultValue) |
draw permanent crosshairs in a profiles graph. More... | |
static wave | get_source_image (wave view) |
find the source image wave corresponding to the given view. More... | |
static dfr | make_view_folder (wave source) |
create a view data folder. More... | |
static dfr | get_view_folder (wave source) |
find the view data folder corresponding to the given source. More... | |
static wave | get_view_image (wave source) |
find the view image wave corresponding to the given source. More... | |
static variable | bp_reset_cursors (WMButtonAction *ba) |
static variable | svp_smoothing (WMSetVariableAction *sva) |
static variable | pmp_export (WMPopupAction *pa) |
variable | ad_profiles_hook (WMWinHookStruct *s) |
hook function for user events in the profiles window. More... | |
variable | ad_calc_cursor_profiles (wave image) |
calculate profiles, statistics, and histogram of a cross-hair delimited region of interest. More... | |
variable | ad_calc_profiles (wave image, variable pa, variable qa, variable pb, variable qb) |
calculate profiles, statistics, and histogram of a rectangular region of interest. More... | |
variable | ad_export_profile (wave view_image, variable dim, variable trace=defaultValue, variable show=defaultValue, variable overwrite=defaultValue) |
export a profile from a profiles graph to the source data folder. More... | |
static variable | set_trace_colors (string graphname) |
variable | ad_calc_histogram (wave image) |
calculate the histogram. More... | |
variable | ad_default_image_filter (wave image, string options) |
abstract filter function for image display. More... | |
variable | ad_box_filter (wave image, string options) |
boxcar smoothing filter. More... | |
variable | ad_transpose_filter (wave image, string options) |
transpose image filter. More... | |
string | ad_display_brick (wave data) |
open a new "gizmo" window with three-dimensional data. More... | |
variable | ad_brick_slicer (wave data) |
open a slicer panel for 3D data. More... | |
string | ad_display_slice (wave data) |
display three-dimensional data by 2D slice. More... | |
static variable | update_slice_info () |
update controls with data scale limits. More... | |
variable | ad_gizmo_set_plane (wave brick, variable dim, variable value) |
set the position of a slicing plane of a 3D brick in a Gizmo window. More... | |
variable | ad_profiles_set_slice (wave brick, variable dim, variable value) |
set the position of the slicing plane of a 3D brick in a profiles window. More... | |
static variable | slp_slice_position (WMSliderAction *sa) |
set slice coordinate (slider procedure). More... | |
static variable | svp_slice_position (WMSetVariableAction *sva) |
set slice coordinate (button procedure). More... | |
static variable | bp_move_slice (WMButtonAction *ba) |
move slice (button procedure). More... | |
static variable | bp_extract_slice (WMButtonAction *ba) |
export a slice (button procedure). More... | |
static variable | bp_move_slice_center (wave brick, variable dim, string posvariable) |
move the slice to the center of the dimension (button procedure). More... | |
static variable | ad_slicer_move_bg (WMBackgroundStruct *s) |
move a slice by one step (background task). More... | |
variable | ad_slicer_init_bg () |
initialize the slice animation background task. More... | |
variable | ad_slicer_start_bg (wave brick, variable dimension, string posvariable, variable delta) |
start the animation. More... | |
variable | ad_slicer_stop_bg (string posvariable) |
stop the animation. More... | |
visualization tools for 2D and 3D data.
-these tools were initially developed for monitoring output from EPICS area detector software. they are, however, useful for any kind of intensity versus x,y(,z) data.
-TO DO...
-Definition in file pearl-area-display.ipf.
-variable ad_box_filter | -( | -wave | -image, | -
- | - | string | -options | -
- | ) | -- |
boxcar smoothing filter.
-filters the image in X and Y directions using Igor's Smooth operation.
-image | image to be filtered: original data and filter result. |
options | smoothing factors in key1=value1;key2=value2;... format.
|
Definition at line 1044 of file pearl-area-display.ipf.
- -variable ad_brick_slicer | -( | -wave | -data | ) | -- |
open a slicer panel for 3D data.
-if a panel exists, bring it to the front.
-data | three-dimensional wave. |
Definition at line 1197 of file pearl-area-display.ipf.
- -variable ad_calc_cursor_profiles | -( | -wave | -image | ) | -- |
calculate profiles, statistics, and histogram of a cross-hair delimited region of interest.
-image | wave which contains the image data from the detector. |
the function expects further objects as created by ad_display_profiles() in the same data folder as the image wave. the most recent profiles graph of the image must exist, and the cursors A and B must be set on the image.
- -Definition at line 726 of file pearl-area-display.ipf.
- -variable ad_calc_histogram | -( | -wave | -image | ) | -- |
calculate the histogram.
-image | wave which contains the image data from the detector. the function expects further objects as created by ad_display_histogram() in the same data folder as the image wave. |
Definition at line 1007 of file pearl-area-display.ipf.
- -variable ad_calc_profiles | -( | -wave | -image, | -
- | - | variable | -pa, | -
- | - | variable | -qa, | -
- | - | variable | -pb, | -
- | - | variable | -qb | -
- | ) | -- |
calculate profiles, statistics, and histogram of a rectangular region of interest.
-the region of interest a rectangle spanned by the two points A and B. pixels at these coordinates are included.
-image | wave which contains the image data. |
pa | first point coordinate of A. |
qa | second point coordinate of A. |
pb | first point coordinate of B. |
qb | second point coordinate of B. |
the function expects further objects as created by ad_display_profiles() in the same data folder as the image wave.
-this function does not require that the graph exists as long as the data folder is complete.
- -Definition at line 773 of file pearl-area-display.ipf.
- -variable ad_default_image_filter | -( | -wave | -image, | -
- | - | string | -options | -
- | ) | -- |
abstract filter function for image display.
-this is a function prototype for filtering two-dimensional data for preview. to write your own filter, define a new function which has the same signature.
-image | image to be filtered: original data and filter result. |
options | filter options in key1=value1;key2=value2;... format. |
Definition at line 1030 of file pearl-area-display.ipf.
- -string ad_display | -( | -wave | -image | ) | -- |
open a new graph window with a 2D image.
-this is essentially display; appendimage
. the graph is directly linked to the image wave. it is, thus, updated automatically.
image | wave which contains the image data. |
Definition at line 84 of file pearl-area-display.ipf.
- -string ad_display_brick | -( | -wave | -data | ) | -- |
open a new "gizmo" window with three-dimensional data.
-data | three-dimensional wave. |
Definition at line 1082 of file pearl-area-display.ipf.
- -string ad_display_histogram | -( | -wave | -image | ) | -- |
display the histogram of a 2D image.
-the function will create additional objects in the same data folder as the image. this objects are displayed in the graph and are updated by calling ad_calc_profiles(). see the code.
-image | wave which contains the image data from the detector. |
Definition at line 114 of file pearl-area-display.ipf.
- -string ad_display_profiles | -( | -wave | -image, | -
- | - | string | -filter = defaultValue |
-
- | ) | -- |
open a new profiles graph window.
-opens an extended graph window with profiles for the specified image. the function copies/creates all necessary data structures in a subfolder of the one which contains the image wave. the data folder name is derived from the image wave name by prefixing with "view_". there can be at most one profiles window of each image wave. the original wave must not be renamed while the graph window is used. to update the graph after modifying the original wave, call ad_update_profiles().
-image | wave which contains the image data. |
filter | name of a filter function which maps the original data to the displayed data. the function must have the same parameters as ad_default_image_filter(). default: boxcar average (ad_box_filter()) using parameters view_filter_smoothing_x and _y. |
Definition at line 165 of file pearl-area-display.ipf.
- -string ad_display_slice | -( | -wave | -data | ) | -- |
display three-dimensional data by 2D slice.
-to select the slice data to display, call ad_profiles_set_slice(), or open a ad_brick_slicer() panel. do not modify the content of the created view_ data folder.
-data | three-dimensional wave. |
Definition at line 1345 of file pearl-area-display.ipf.
- -variable ad_export_profile | -( | -wave | -view_image, | -
- | - | variable | -dim, | -
- | - | variable | -trace = defaultValue , |
-
- | - | variable | -show = defaultValue , |
-
- | - | variable | -overwrite = defaultValue |
-
- | ) | -- |
export a profile from a profiles graph to the source data folder.
-this function does not require that the show exists as long as the view data folder is complete.
-view_image | wave which contains the view image (image wave on display in profiles window). the function expects further objects as created by ad_display_profiles() in the same data folder as the view_image wave. |
dim | dimension index (0 = x, 1 = y). |
trace | select profile trace:
|
show | display mode:
|
overwrite | overwrite mode:
|
Definition at line 875 of file pearl-area-display.ipf.
- -variable ad_gizmo_set_plane | -( | -wave | -brick, | -
- | - | variable | -dim, | -
- | - | variable | -value | -
- | ) | -- |
set the position of a slicing plane of a 3D brick in a Gizmo window.
-brick | original data wave. |
dim | dimension index: 0, 1, or 2. |
value | new coordinate of the slicing plane (axis scaling). |
Definition at line 1422 of file pearl-area-display.ipf.
- -variable ad_profiles_crosshairs | -( | -wave | -image, | -
- | - | variable | -clear = defaultValue |
-
- | ) | -- |
draw permanent crosshairs in a profiles graph.
-adds dash-dotted horizontal and vertical crosshairs to a profiles graph. for each active cursor A and/or B, a pair of lines crossing at the cursor position is added. existing crosshairs are moved to the current cursor positions. optionally, existing crosshairs are removed from the graph.
-in contrast to the cursors, these crosshairs will be exported and printed with the graph. they are drawn using Igor's DrawLine operation. all lines drawn by this function are part of the "crosshairs" draw group.
image | image displayed in the graph. this is the original image, not the one in the view data folder. |
clear | 0 (default) = add/update lines. 1 = remove lines. |
Definition at line 481 of file pearl-area-display.ipf.
- -variable ad_profiles_cursor_mode | -( | -wave | -image, | -
- | - | variable | -mode | -
- | ) | -- |
switch cursors on a profiles graph
-the standard cursors allow to select the profiles to display in the profiles panes. additional cursors are shown in the profiles panes.
-in the background selection mode, additional cursors allow the user to select the limits of the background and peak integration regions. the meaning of the cursors depends on the particular processing function.
-mode | cursor mode.
|
image | image displayed in the graph. this is the original image, not the one in the view data folder. |
Definition at line 368 of file pearl-area-display.ipf.
- -variable ad_profiles_hook | -( | -WMWinHookStruct * | -s | ) | -- |
hook function for user events in the profiles window.
- -Definition at line 686 of file pearl-area-display.ipf.
- -variable ad_profiles_set_cursor | -( | -wave | -image, | -
- | - | string | -cursorname, | -
- | - | variable | -xa, | -
- | - | variable | -ya, | -
- | - | variable | -pscale = defaultValue |
-
- | ) | -- |
move a cursor to the specified position in a profiles graph.
-this function can only set cursors in the image part of the profiles graph.
-image | image displayed in the graph. this is the original image, not the one in the view data folder. |
cursorname | name of the cursor, e.g. "A" or "B". other cursors are allowed but need to be activated separately. |
xa | x-coordinate to move the cursor to. the position is coerced to the image scale. +/-inf is allowed. |
ya | y-coordinate to move the cursor to. the position is coerced to the image scale. +/-inf is allowed. |
pscale | scaling of the position argument
|
Definition at line 429 of file pearl-area-display.ipf.
- -variable ad_profiles_set_slice | -( | -wave | -brick, | -
- | - | variable | -dim, | -
- | - | variable | -value | -
- | ) | -- |
set the position of the slicing plane of a 3D brick in a profiles window.
-brick | original data wave. |
dim | dimension index: 0, 1, or 2. |
value | new coordinate of the slicing plane (axis scaling). |
Definition at line 1458 of file pearl-area-display.ipf.
- -variable ad_slicer_init_bg | -( | -) | -- |
initialize the slice animation background task.
- -Definition at line 1717 of file pearl-area-display.ipf.
- -
-
|
- -static | -
move a slice by one step (background task).
- -Definition at line 1678 of file pearl-area-display.ipf.
- -variable ad_slicer_start_bg | -( | -wave | -brick, | -
- | - | variable | -dimension, | -
- | - | string | -posvariable, | -
- | - | variable | -delta | -
- | ) | -- |
start the animation.
-brick | 3D data wave |
dimension | dimension to animate, 0, 1, or 2. |
posvariable | full path to the global position variable. |
delta | step increment, should be +/- dimdelta. |
Definition at line 1741 of file pearl-area-display.ipf.
- -variable ad_slicer_stop_bg | -( | -string | -posvariable | ) | -- |
stop the animation.
-posvariable | full path to the global position variable. |
Definition at line 1783 of file pearl-area-display.ipf.
- -variable ad_transpose_filter | -( | -wave | -image, | -
- | - | string | -options | -
- | ) | -- |
transpose image filter.
-transposes the image.
-image | image to be transposed: original data and result. |
options | not used. should be empty. |
Definition at line 1066 of file pearl-area-display.ipf.
- -variable ad_update_profiles | -( | -wave | -image | ) | -- |
update a profiles graph with new data.
-image | wave which contains the image data. must be the same (by data folder and name) wave used with ad_display_profiles(). |
Definition at line 321 of file pearl-area-display.ipf.
- -
-
|
- -static | -
export a slice (button procedure).
-extract a slice and saves it in a separate wave.
- -Definition at line 1612 of file pearl-area-display.ipf.
- -
-
|
- -static | -
move slice (button procedure).
- -Definition at line 1563 of file pearl-area-display.ipf.
- -
-
|
- -static | -
move the slice to the center of the dimension (button procedure).
- -Definition at line 1666 of file pearl-area-display.ipf.
- -
-
|
- -static | -
Definition at line 618 of file pearl-area-display.ipf.
- -
-
|
- -static | -
find the source image wave corresponding to the given view.
-Definition at line 547 of file pearl-area-display.ipf.
- -
-
|
- -static | -
find the view data folder corresponding to the given source.
-the result data folder reference may be invalid if no view is currently open. use the built-in DataFolderRefStatus function to check for validity.
-source | wave which contains the image data. must be the same (by data folder and name) wave used with ad_display_profiles(). |
Definition at line 585 of file pearl-area-display.ipf.
- -
-
|
- -static | -
find the view image wave corresponding to the given source.
-source | wave which contains the image data. must be the same (by data folder and name) wave used with ad_display_profiles(). |
Definition at line 608 of file pearl-area-display.ipf.
- -
-
|
- -static | -
compose a valid and unique graph name from a data folder reference
- -Definition at line 56 of file pearl-area-display.ipf.
- -
-
|
- -static | -
create a view data folder.
- -Definition at line 561 of file pearl-area-display.ipf.
- -
-
|
- -static | -
Definition at line 662 of file pearl-area-display.ipf.
- -
-
|
- -static | -
Definition at line 986 of file pearl-area-display.ipf.
- -
-
|
- -static | -
set slice coordinate (slider procedure).
- -Definition at line 1499 of file pearl-area-display.ipf.
- -
-
|
- -static | -
set slice coordinate (button procedure).
- -Definition at line 1531 of file pearl-area-display.ipf.
- -
-
|
- -static | -
Definition at line 637 of file pearl-area-display.ipf.
- -
-
|
- -static | -
update controls with data scale limits.
-current folder must be slicer info
- -Definition at line 1386 of file pearl-area-display.ipf.
- -HDF5 file import from EPICS area detectors. -More...
-#include <HDF5 Browser>
#include "pearl-gui-tools"
Go to the source code of this file.
--Namespaces | |
PearlAreaImport | |
HDF5 file import from EPICS area detectors. | |
-Functions | |
static variable | BeforeFileOpenHook (variable refNum, string fileName, string path, string type, string creator, variable kind) |
callback function for drag&drop of HDF5 files into Igor. More... | |
string | ad_suggest_foldername (string filename, variable ignoredate=defaultValue, string sourcename=defaultValue, variable unique=defaultValue) |
generate the name of a data folder based on a file name. More... | |
variable | ad_load_dialog (string APathName) |
load area detector data files selected in a file dialog window More... | |
string | adh5_load_complete (string ANickName, string APathName, string AFileName, variable load_data=defaultValue, variable load_attr=defaultValue) |
import everything from a HDF5 file created by the Area Detector software. More... | |
string | adh5_load_reduced (string ANickName, string APathName, string AFileName, funcref reduction_func, string reduction_param, variable load_data=defaultValue, variable load_attr=defaultValue, variable progress=defaultValue) |
load and reduce a dataset from a HDF5 file created by the Area Detector software. More... | |
string | adh5_load_preview (string ANickName, string APathName, string AFileName, variable load_data=defaultValue, variable load_attr=defaultValue) |
load a single image from a HDF5 file created by the Area Detector software. More... | |
string | adh5_load_info (string APathName, string AFileName) |
load descriptive info from a HDF5 file created by the Area Detector software. More... | |
variable | adh5_load_detector (variable fileID, string detectorpath) |
load the detector dataset from the open HDF5 file. More... | |
variable | adh5_redim (wave data) |
redimension a multi-dimensional area detector array loaded from HDF5. More... | |
static dfr | GetAttrDataFolderDFR (wave data) |
find the attributes data folder of an area detector dataset. More... | |
variable | adh5_scale (wave data, string source=defaultValue) |
set the dimension scales of an area detector dataset. More... | |
variable | adh5_load_detector_slabs (variable fileID, string detectorpath, variable progress=defaultValue) |
load the detector dataset from the open HDF5 file. More... | |
variable | adh5_load_detector_image (variable fileID, string detectorpath, variable dim2start, variable dim2count, variable dim3start, variable dim3count) |
load a single image from the detector dataset of the open HDF5 file More... | |
string | adh5_list_reduction_funcs () |
get a list of functions which can be used as reduction functions. More... | |
threadsafe wave | adh5_default_reduction (wave source, string *param) |
function prototype for adh5_load_reduced_detector More... | |
threadsafe variable | adh5_setup_profile (wave image, wave profile, variable dim) |
set up a one-dimensional wave for a line profile based on a 2D original wave. More... | |
string | adh5_test_reduction_func (wave source, funcref reduction_func, string reduction_param, string result_prefix) |
wrapper function for testing reduction functions from the command line. More... | |
threadsafe variable | adh5_get_result_waves (wave results, string result_prefix, variable start_index) |
copy waves from wave reference wave into current data folder More... | |
variable | adh5_load_reduced_detector (variable fileID, string detectorpath, funcref reduction_func, string reduction_param, variable progress=defaultValue, variable nthreads=defaultValue) |
load a reduced detector dataset from the open HDF5 file. More... | |
static threadsafe variable | reduce_slab_worker (funcref reduction_func) |
static threadsafe wave | reduce_slab_image (wave slabdata, wave image, funcref reduction_func, string reduction_param) |
variable | adh5_loadattr_all (variable fileID, string attributespath) |
load an NDAttributes group from an open HDF5 file into the current data folder. More... | |
static variable | read_attribute_info (string datawavename, string source, variable *idest) |
sub-function of adh5_loadattr_all. More... | |
variable | adh5_scale_scienta (wave data) |
set the energy and angle scales of an area detector dataset from the Scienta analyser. More... | |
variable | adh5_scale_scan (wave data) |
scales the extra dimensions of an area detector dataset according to the EPICS scan More... | |
HDF5 file import from EPICS area detectors.
-HDF5 file import from EPICS area detectors such as CCD cameras, 2D electron analysers
-as of Igor 6.3, Igor can open datasets of up to rank 4. i.e. the extra dimension Y of the file plugin cannot be used. the extra dimensions N and X are supported.
-Definition in file pearl-area-import.ipf.
-variable ad_load_dialog | -( | -string | -APathName | ) | -- |
load area detector data files selected in a file dialog window
-APathName | Igor symbolic path name. if empty, Igor will choose a folder on its own |
Definition at line 166 of file pearl-area-import.ipf.
- -string ad_suggest_foldername | -( | -string | -filename, | -
- | - | variable | -ignoredate = defaultValue , |
-
- | - | string | -sourcename = defaultValue , |
-
- | - | variable | -unique = defaultValue |
-
- | ) | -- |
generate the name of a data folder based on a file name.
-if the file name follows the naming convention source-date-index.extension, the function tries to generate the nick name as source_date_index. otherwise it's just a cleaned up version of the file name.
-date must be in yyyymmdd or yymmdd format and is clipped to the short yymmdd format. index should be a running numeric index of up to 6 digits, or the time encoded as hhmmss. however, in the current version index can be any string that can be a valid Igor folder name.
-filename | file name, including extension. can also include a folder path (which is ignored). the extension is currently ignored, but may be used to select the parent folder in a later version. |
ignoredate | if non-zero, the nick name will not include the date part. defaults to zero. |
sourcename | nick name of the data source. by default, the function tries to detect the source from the file name. this option can be used to override auto-detection. the automatic source names are: sci (scienta by area detector), psh (pshell), sl (optics slit camera by area detector), es (end station camera by area detector), xy (unidentified). |
unique | if non-zero, the resulting name is made a unique data folder name in the current data folder defaults to zero. |
Definition at line 105 of file pearl-area-import.ipf.
- -threadsafe wave adh5_default_reduction | -( | -wave | -source, | -
- | - | string * | -param | -
- | ) | -- |
function prototype for adh5_load_reduced_detector
-this is a prototype of custom functions that convert (reduce) a two-dimensional detector image into one or more one-dimensional waves. data processing can be tuned with a set of parameters.
-reduction functions have a fixed signature (function arguments) so that the file import functions can call them efficiently on a series of detector images. pearl procedures comes with a number of pre-defined reduction functions but you may as well implement your own functions. if you write your own function, you must use the same declaration and arguments as this function except for the function name. you can do many things in a reduction function, e.g. integration over a region of interest, curve fitting, etc.
-each destination wave is a one-dimensional intensity distribution. the function must redimension each of these waves to one of the image dimensions by calling the adh5_setup_profile() function. this function will also copy the scale information and dimension labels, which is important for the proper scaling of the result.
-the meaning of the data in the result waves is up to the particular function, e.g. dest1 could hold the mean value and dest2 the one-sigma error, or dest1 could hold the X-profile, and dest2 the Y-profile.
-source | source wave. two-dimensional intensity distribution (image). the scales are carried over to the result waves. |
param | string with optional parameters, shared between calls. this is a pass-by-reference argument, the function may modify the string. |
Definition at line 1110 of file pearl-area-import.ipf.
- -threadsafe variable adh5_get_result_waves | -( | -wave | -results, | -
- | - | string | -result_prefix, | -
- | - | variable | -start_index | -
- | ) | -- |
copy waves from wave reference wave into current data folder
-this function copies waves that are referenced in a wave reference wave into the current data folder. the destination waves get new names consisting of a prefix and a numeric index. the index is the array index of the wave in results plus a chosen offset.
-results | a wave reference wave pointing to result waves from data reduction. the waves can be free or regular waves. results can be a free or regular wave. |
result_prefix | name prefix of the copied waves. |
start_index | start index (offset) of the copied waves. |
Definition at line 1192 of file pearl-area-import.ipf.
- -string adh5_list_reduction_funcs | -( | -) | -- |
get a list of functions which can be used as reduction functions.
-the function evaluates only the function arguments, it may thus include functions which are not suitable as reduction functions.
- -Definition at line 1040 of file pearl-area-import.ipf.
- -string adh5_load_complete | -( | -string | -ANickName, | -
- | - | string | -APathName, | -
- | - | string | -AFileName, | -
- | - | variable | -load_data = defaultValue , |
-
- | - | variable | -load_attr = defaultValue |
-
- | ) | -- |
import everything from a HDF5 file created by the Area Detector software.
-if the data is from the electron analyser driver and some special attributes are included, the function will set the scales of the image dimensions.
-ANickName | destination folder name (top level under root) |
APathName | igor symbolic path name. can be empty if the path is specified in FileName or a dialog box should be displayed |
AFileName | if empty a dialog box shows up |
load_data | 1 (default): load data; 0: do not load data |
load_attr | 1 (default): load attributes; 0: do not load attributes for proper wave scaling, the attributes must be loaded |
Definition at line 206 of file pearl-area-import.ipf.
- -variable adh5_load_detector | -( | -variable | -fileID, | -
- | - | string | -detectorpath | -
- | ) | -- |
load the detector dataset from the open HDF5 file.
-the function loads the whole dataset at once and redimensions it so that the image dimensions are X and Y
-fileID | ID of open HDF5 file from HDF5OpenFile |
detectorpath | path to detector group in the HDF5 file |
Definition at line 580 of file pearl-area-import.ipf.
- -variable adh5_load_detector_image | -( | -variable | -fileID, | -
- | - | string | -detectorpath, | -
- | - | variable | -dim2start, | -
- | - | variable | -dim2count, | -
- | - | variable | -dim3start, | -
- | - | variable | -dim3count | -
- | ) | -- |
load a single image from the detector dataset of the open HDF5 file
-the function can average over a region in the extra dimensions.
-fileID | ID of open HDF5 file from HDF5OpenFile |
detectorpath | path to detector group in the HDF5 file |
dim2start | 2nd dimension coordinate of the first image note that the order of dimensions is reversed in the file 2nd dimension = N dimension in area detector = dimension 0 of the three-dimensional HDF dataset set to 0 if dimension may not be present |
dim2count | number of subsequent images to average set to 1 if dimension may not be present |
dim3start | 3rd dimension coordinate of the first image note that the order of dimensions is reversed in the file 3rd dimension = extra X dimension in area detector = dimension 0 of the four-dimensional HDF dataset set to 0 if dimension may not be present |
dim3count | number of subsequent images to average set to 1 if dimension may not be present |
Definition at line 944 of file pearl-area-import.ipf.
- -variable adh5_load_detector_slabs | -( | -variable | -fileID, | -
- | - | string | -detectorpath, | -
- | - | variable | -progress = defaultValue |
-
- | ) | -- |
load the detector dataset from the open HDF5 file.
-the function loads the dataset image by image using the hyperslab option. this function gives the same result as adh5_load_detector. it is about 5% slower, and it depends on HDF5 Browser code. but it does not choke on large datasets (as long as the final wave fits into memory).
-fileID | ID of open HDF5 file from HDF5OpenFile. |
detectorpath | path to detector group in the HDF5 file. |
progress | 1 (default): show progress window; 0: do not show progress window. |
Definition at line 779 of file pearl-area-import.ipf.
- -string adh5_load_info | -( | -string | -APathName, | -
- | - | string | -AFileName | -
- | ) | -- |
load descriptive info from a HDF5 file created by the Area Detector software.
-the information returned is the array size and active scans
-APathName | igor symbolic path name. can be empty if the path is specified in FileName or a dialog box should be displayed |
AFileName | if empty a dialog box shows up |
Definition at line 496 of file pearl-area-import.ipf.
- -string adh5_load_preview | -( | -string | -ANickName, | -
- | - | string | -APathName, | -
- | - | string | -AFileName, | -
- | - | variable | -load_data = defaultValue , |
-
- | - | variable | -load_attr = defaultValue |
-
- | ) | -- |
load a single image from a HDF5 file created by the Area Detector software.
-the data wave is loaded into the current data folder. attributes are loaded into the attr subfolder. existing waves in attr are deleted.
-ANickName | destination wave name. the wave is created in the current data folder. |
APathName | igor symbolic path name. can be empty if the path is specified in FileName or a dialog box should be displayed |
AFileName | if empty a dialog box shows up |
load_data | 1 (default): load data; 0: do not load data |
load_attr | 1 (default): load attributes; 0: do not load attributes note: for correct scaling of the image, the attributes need to be loaded |
Definition at line 386 of file pearl-area-import.ipf.
- -string adh5_load_reduced | -( | -string | -ANickName, | -
- | - | string | -APathName, | -
- | - | string | -AFileName, | -
- | - | funcref | -reduction_func, | -
- | - | string | -reduction_param, | -
- | - | variable | -load_data = defaultValue , |
-
- | - | variable | -load_attr = defaultValue , |
-
- | - | variable | -progress = defaultValue |
-
- | ) | -- |
load and reduce a dataset from a HDF5 file created by the Area Detector software.
-the resulting dataset is reduced in one image dimension by a user-defined reduction function, e.g. by region-of-interest integration, curve fitting, etc.
-the function loads the dataset image by image using the hyperslab option and applies a custom reduction function to each image. the results from the reduction function are composed into one result wave. the raw data are discarded.
-if the data is from the electron analyser driver and some special attributes are included, the function will set the scales of the image dimensions.
-ANickName | destination folder name (top level under root) |
APathName | igor symbolic path name. can be empty if the path is specified in FileName or a dialog box should be displayed |
AFileName | if empty a dialog box shows up |
reduction_func | custom reduction function (any user-defined function which has the same parameters as adh5_default_reduction()) |
reduction_param | parameter string for the reduction function |
load_data | 1 (default): load data; 0: do not load data |
load_attr | 1 (default): load attributes; 0: do not load attributes for proper wave scaling, the attributes must be loaded |
progress | 1 (default): show progress window; 0: do not show progress window |
Definition at line 301 of file pearl-area-import.ipf.
- -variable adh5_load_reduced_detector | -( | -variable | -fileID, | -
- | - | string | -detectorpath, | -
- | - | funcref | -reduction_func, | -
- | - | string | -reduction_param, | -
- | - | variable | -progress = defaultValue , |
-
- | - | variable | -nthreads = defaultValue |
-
- | ) | -- |
load a reduced detector dataset from the open HDF5 file.
-the function loads the dataset image by image using the hyperslab option and applies a custom reduction function to each image. the results from the reduction function are composed into one result wave. the raw data are discarded.
-by default, the reduction function is called in separate threads to reduce the total loading time. (see the global variable adh5_perf_secs which reports the total run time of the function.) the effect varies depending on the balance between file loading (image size) and data processing (complexity of the reduction function). for debugging the reduction function, multi-threading can be disabled.
-fileID | ID of open HDF5 file from HDF5OpenFile |
detectorpath | path to detector group in the HDF5 file |
reduction_func | custom reduction function (any user-defined function which has the same parameters as adh5_default_reduction()) |
reduction_param | parameter string for the reduction function |
progress | 1 (default): show progress window; 0: do not show progress window |
nthreads | -1 (default): use as many threads as there are processor cores (in addition to main thread) 0: use main thread only (e.g. for debugging the reduction function) >= 1: use a fixed number of (additional) threads |
Definition at line 1228 of file pearl-area-import.ipf.
- -variable adh5_loadattr_all | -( | -variable | -fileID, | -
- | - | string | -attributespath | -
- | ) | -- |
load an NDAttributes group from an open HDF5 file into the current data folder.
-datasets contained in the group are loaded as waves. if a dataset contains only one data point, it is added to the IN, ID, IV, IU waves, where IN = EPICS channel name, ID = attribute name, IV = value, IU = unit (units are left empty as they are not saved in HDF5). attributes of the NDAttributes group are added to the IN, ID, IV, IU waves, however, IN and IU are left empty as this information is not saved in the HDF5 file.
-fileID | ID of open HDF5 file from HDF5OpenFile |
attributespath | path to NDAttributes group in the HDF5 file |
Definition at line 1552 of file pearl-area-import.ipf.
- -variable adh5_redim | -( | -wave | -data | ) | -- |
redimension a multi-dimensional area detector array loaded from HDF5.
-so that the image dimensions are X and Y singleton dimensions are removed (most common cases only)
-in the redimensioned array, the original dimension type is noted in the dimension label: AD_Dim0 = first image dimension AD_Dim1 = second image dimension AD_DimN = frame sequence AD_DimX = extra dimension X AD_DimY = extra dimension Y (cannot be loaded in Igor)
-data | area detector data loaded from HDF5 to be redimensioned |
Definition at line 625 of file pearl-area-import.ipf.
- -variable adh5_scale | -( | -wave | -data, | -
- | - | string | -source = defaultValue |
-
- | ) | -- |
set the dimension scales of an area detector dataset.
-the intrinsic dimensions 0 and 1 are scaled according to the data source (currently supported: Prosilica cameras, Scienta electron analyser). the extra dimensions are scaled according to the scan. the latter requires that the positioner names and position values are available.
- -Definition at line 725 of file pearl-area-import.ipf.
- -variable adh5_scale_scan | -( | -wave | -data | ) | -- |
scales the extra dimensions of an area detector dataset according to the EPICS scan
-the scan positioner name and its values must be available
-Definition at line 1792 of file pearl-area-import.ipf.
- -variable adh5_scale_scienta | -( | -wave | -data | ) | -- |
set the energy and angle scales of an area detector dataset from the Scienta analyser.
-the dimension labels of the energy and angle scales must be set correctly: AD_Dim0 = energy dimension; AD_Dim1 = angle dimension. these dimensions must be the first two dimensions of a multi-dimensional dataset. normally, AD_Dim0 is the X dimension, and AD_Dim1 the Y dimension.
- -Definition at line 1687 of file pearl-area-import.ipf.
- -threadsafe variable adh5_setup_profile | -( | -wave | -image, | -
- | - | wave | -profile, | -
- | - | variable | -dim | -
- | ) | -- |
set up a one-dimensional wave for a line profile based on a 2D original wave.
-redimensions the profile wave to the given dimension. copies the scale and dimension label of the given dimension.
- -Definition at line 1133 of file pearl-area-import.ipf.
- -string adh5_test_reduction_func | -( | -wave | -source, | -
- | - | funcref | -reduction_func, | -
- | - | string | -reduction_param, | -
- | - | string | -result_prefix | -
- | ) | -- |
wrapper function for testing reduction functions from the command line.
-reduction functions cannot be used on the command line because they require a pass-by-reference argument and return free waves. this function expects the reduction parameters in a normal string and copies the results into the current data folder. the prefix of the result names can be specified.
-source | source wave. two-dimensional intensity distribution (image). the scales are carried over to the result waves. |
reduction_func | name of the reduction function to apply to the source data. |
reduction_param | string with reduction parameters as required by the specific reduction function. |
result_prefix | name prefix of result waves. a numeric index is appended to distinguish the results. the index starts at 1. existing waves are overwritten. |
Definition at line 1166 of file pearl-area-import.ipf.
- -
-
|
- -static | -
callback function for drag&drop of HDF5 files into Igor.
- -Definition at line 41 of file pearl-area-import.ipf.
- -
-
|
- -static | -
find the attributes data folder of an area detector dataset.
-since version 1.04 attributes should be stored in a subfolder named attr. earlier versions had the attributes in the same data folder as the actual dataset.
-data | wave containing the main dataset. |
Definition at line 706 of file pearl-area-import.ipf.
- -
-
|
- -static | -
sub-function of adh5_loadattr_all.
-reads one attribute from a wave which was loaded from an HDF5 file into the info waves IN, ID, IV, IU. the attribute is read only if the input wave contains exactly one item, i.e. either the measurement is a single image, or the attribute has string type.
-datawavename | name of the attribute wave in the current folder. can be text or numeric. |
source | source identifier (EPICS name) of the attribute. |
idest | destination index in IN, ID, IV, IU where the results are written. the variable is incremented if data was written, otherwise it is left unchanged. make sure IN, ID, IV, IU have at least idest + 1 elements. |
Definition at line 1634 of file pearl-area-import.ipf.
- -
-
|
- -static | -
Definition at line 1519 of file pearl-area-import.ipf.
- -
-
|
- -static | -
Definition at line 1480 of file pearl-area-import.ipf.
- -profile extraction for multi-dimensional datasets acquired from area detectors. -More...
-Go to the source code of this file.
--Namespaces | |
PearlAreaProfiles | |
profile extraction for multi-dimensional datasets acquired from area detectors. | |
-Functions | |
threadsafe wave | ad_extract_rod (wave dataset, variable x1, variable x2, variable y1, variable y2, variable z1, variable z2, string destname, variable noavg=defaultValue, variable sdev=defaultValue, variable pscale=defaultValue) |
1D cut through 3D dataset, integrate in normal dimensions More... | |
threadsafe wave | ad_extract_rod_x (wave dataset, variable q1, variable q2, variable r1, variable r2, string destname, variable noavg=defaultValue, variable sdev=defaultValue) |
1D cut through 3D dataset along X dimension. More... | |
threadsafe wave | ad_extract_rod_y (wave dataset, variable p1, variable p2, variable r1, variable r2, string destname, variable noavg=defaultValue, variable sdev=defaultValue) |
1D cut through 3D dataset along Y dimension. More... | |
threadsafe wave | ad_extract_rod_z (wave dataset, variable p1, variable p2, variable q1, variable q2, string destname, variable noavg=defaultValue, variable sdev=defaultValue) |
1D cut through 3D dataset along Z dimension. More... | |
threadsafe wave | ad_extract_slab (wave dataset, variable x1, variable x2, variable y1, variable y2, variable z1, variable z2, string destname, variable noavg=defaultValue, variable pscale=defaultValue) |
2D cut through 3D dataset, integrate in normal dimension More... | |
threadsafe wave | ad_extract_slab_x (wave dataset, variable p1, variable p2, string destname, variable noavg=defaultValue) |
threadsafe wave | ad_extract_slab_y (wave dataset, variable q1, variable q2, string destname, variable noavg=defaultValue) |
threadsafe wave | ad_extract_slab_z (wave dataset, variable r1, variable r2, string destname, variable noavg=defaultValue) |
threadsafe wave | ad_profile_x (wave dataset, variable q1, variable q2, string destname, variable noavg=defaultValue) |
1D cut through 2D dataset along X dimension, new destination wave. More... | |
threadsafe wave | ad_profile_x_w (wave dataset, variable q1, variable q2, wave destwave, variable noavg=defaultValue) |
1D cut through 2D dataset along X dimension, existing destination wave. More... | |
threadsafe wave | ad_profile_y (wave dataset, variable p1, variable p2, string destname, variable noavg=defaultValue) |
1D cut through 2D dataset along Y dimension, new destination wave. More... | |
threadsafe wave | ad_profile_y_w (wave dataset, variable p1, variable p2, wave destwave, variable noavg=defaultValue) |
1D cut through 2D dataset along X dimension, existing destination wave. More... | |
threadsafe variable | calc_y_profile_mins (wave image) |
variable | ad_collect_multiscan_y (wave dataset, wave positions, wave destwave, variable noavg=defaultValue) |
collect profiles from a multi-scan. More... | |
profile extraction for multi-dimensional datasets acquired from area detectors.
-Definition in file pearl-area-profiles.ipf.
-variable ad_collect_multiscan_y | -( | -wave | -dataset, | -
- | - | wave | -positions, | -
- | - | wave | -destwave, | -
- | - | variable | -noavg = defaultValue |
-
- | ) | -- |
collect profiles from a multi-scan.
-Definition at line 621 of file pearl-area-profiles.ipf.
- -threadsafe wave ad_extract_rod | -( | -wave | -dataset, | -
- | - | variable | -x1, | -
- | - | variable | -x2, | -
- | - | variable | -y1, | -
- | - | variable | -y2, | -
- | - | variable | -z1, | -
- | - | variable | -z2, | -
- | - | string | -destname, | -
- | - | variable | -noavg = defaultValue , |
-
- | - | variable | -sdev = defaultValue , |
-
- | - | variable | -pscale = defaultValue |
-
- | ) | -- |
1D cut through 3D dataset, integrate in normal dimensions
-dataset | |
x1,x2,y1,y2,z1,z2 | coordinates of integration region by default, the coordinates use wave scaling coordinates of rod dimensions (to be preserved) must be nan coordinate pairs don't have to be ordered, i.e. both x1 <= x2 and x1 >= x2 are allowed. |
destname | name of destination wave. to be created in current data folder. if empty, the function returns a free wave |
noavg | non-zero = calculate the sum, default = 0 as of version 1.05, this option should rather be called "calc_sum" or similar. it is noavg for compatibility with older code. |
sdev | non-zero = calculate the standard deviation, default = 0 by default, the function calculates the average of the integration region set either the noavg or sdev option to select the sum or the standard deviation, respectively. if both options are set, noavg (sum) takes precedence. |
pscale | scaling of the slab coordinates x1, x2, ..., z2: zero or default = wave scaling, non-zero = point scaling |
Definition at line 54 of file pearl-area-profiles.ipf.
- -threadsafe wave ad_extract_rod_x | -( | -wave | -dataset, | -
- | - | variable | -q1, | -
- | - | variable | -q2, | -
- | - | variable | -r1, | -
- | - | variable | -r2, | -
- | - | string | -destname, | -
- | - | variable | -noavg = defaultValue , |
-
- | - | variable | -sdev = defaultValue |
-
- | ) | -- |
1D cut through 3D dataset along X dimension.
-see ad_extract_rod() for descriptions of common parameters.
- -Definition at line 106 of file pearl-area-profiles.ipf.
- -threadsafe wave ad_extract_rod_y | -( | -wave | -dataset, | -
- | - | variable | -p1, | -
- | - | variable | -p2, | -
- | - | variable | -r1, | -
- | - | variable | -r2, | -
- | - | string | -destname, | -
- | - | variable | -noavg = defaultValue , |
-
- | - | variable | -sdev = defaultValue |
-
- | ) | -- |
1D cut through 3D dataset along Y dimension.
-see ad_extract_rod() for descriptions of common parameters.
- -Definition at line 168 of file pearl-area-profiles.ipf.
- -threadsafe wave ad_extract_rod_z | -( | -wave | -dataset, | -
- | - | variable | -p1, | -
- | - | variable | -p2, | -
- | - | variable | -q1, | -
- | - | variable | -q2, | -
- | - | string | -destname, | -
- | - | variable | -noavg = defaultValue , |
-
- | - | variable | -sdev = defaultValue |
-
- | ) | -- |
1D cut through 3D dataset along Z dimension.
-see ad_extract_rod() for descriptions of common parameters.
- -Definition at line 231 of file pearl-area-profiles.ipf.
- -threadsafe wave ad_extract_slab | -( | -wave | -dataset, | -
- | - | variable | -x1, | -
- | - | variable | -x2, | -
- | - | variable | -y1, | -
- | - | variable | -y2, | -
- | - | variable | -z1, | -
- | - | variable | -z2, | -
- | - | string | -destname, | -
- | - | variable | -noavg = defaultValue , |
-
- | - | variable | -pscale = defaultValue |
-
- | ) | -- |
2D cut through 3D dataset, integrate in normal dimension
-dataset | |
x1,x2,y1,y2,z1,z2 | coordinates of integration region. by default, the coordinates use wave scaling. coordinates of slab dimensions (to be preserved) must be nan. coordinate pairs don't have to be ordered, i.e. both x1 <= x2 and x1 >= x2 are allowed. coordinates can be out of range (-inf and +inf allowed) to select the whole range. |
destname | name of destination wave. to be created in current data folder. if empty, the function returns a free wave. |
noavg | zero or default = average, non-zero = sum. |
pscale | scaling of the slab coordinates x1, x2, ..., z2: zero or default = wave scaling, non-zero = point scaling. |
Definition at line 313 of file pearl-area-profiles.ipf.
- -threadsafe wave ad_extract_slab_x | -( | -wave | -dataset, | -
- | - | variable | -p1, | -
- | - | variable | -p2, | -
- | - | string | -destname, | -
- | - | variable | -noavg = defaultValue |
-
- | ) | -- |
Definition at line 358 of file pearl-area-profiles.ipf.
- -threadsafe wave ad_extract_slab_y | -( | -wave | -dataset, | -
- | - | variable | -q1, | -
- | - | variable | -q2, | -
- | - | string | -destname, | -
- | - | variable | -noavg = defaultValue |
-
- | ) | -- |
Definition at line 398 of file pearl-area-profiles.ipf.
- -threadsafe wave ad_extract_slab_z | -( | -wave | -dataset, | -
- | - | variable | -r1, | -
- | - | variable | -r2, | -
- | - | string | -destname, | -
- | - | variable | -noavg = defaultValue |
-
- | ) | -- |
Definition at line 438 of file pearl-area-profiles.ipf.
- -threadsafe wave ad_profile_x | -( | -wave | -dataset, | -
- | - | variable | -q1, | -
- | - | variable | -q2, | -
- | - | string | -destname, | -
- | - | variable | -noavg = defaultValue |
-
- | ) | -- |
1D cut through 2D dataset along X dimension, new destination wave.
- -Definition at line 480 of file pearl-area-profiles.ipf.
- -threadsafe wave ad_profile_x_w | -( | -wave | -dataset, | -
- | - | variable | -q1, | -
- | - | variable | -q2, | -
- | - | wave | -destwave, | -
- | - | variable | -noavg = defaultValue |
-
- | ) | -- |
1D cut through 2D dataset along X dimension, existing destination wave.
- -Definition at line 504 of file pearl-area-profiles.ipf.
- -threadsafe wave ad_profile_y | -( | -wave | -dataset, | -
- | - | variable | -p1, | -
- | - | variable | -p2, | -
- | - | string | -destname, | -
- | - | variable | -noavg = defaultValue |
-
- | ) | -- |
1D cut through 2D dataset along Y dimension, new destination wave.
- -Definition at line 542 of file pearl-area-profiles.ipf.
- -threadsafe wave ad_profile_y_w | -( | -wave | -dataset, | -
- | - | variable | -p1, | -
- | - | variable | -p2, | -
- | - | wave | -destwave, | -
- | - | variable | -noavg = defaultValue |
-
- | ) | -- |
1D cut through 2D dataset along X dimension, existing destination wave.
- -Definition at line 567 of file pearl-area-profiles.ipf.
- -threadsafe variable calc_y_profile_mins | -( | -wave | -image | ) | -- |
Definition at line 603 of file pearl-area-profiles.ipf.
- -data acquisition and analysis package for ARPES at PEARL. -More...
-#include "pearl-area-display"
#include "pearl-area-profiles"
#include "pearl-area-import"
#include "pearl-pshell-import"
#include "pearl-data-explorer"
#include "pearl-anglescan-process"
#include "pearl-anglescan-panel"
#include "pearl-anglescan-tracker"
#include "pearl-scienta-preprocess"
#include "pearl-elog"
Go to the source code of this file.
--Namespaces | |
PearlArpes | |
data acquisition and analysis package for ARPES at PEARL. | |
-Functions | |
static variable | AfterCompiledHook () |
initializes package data once when the procedure is first loaded More... | |
variable | UnloadPearlArpesPackage () |
data acquisition and analysis package for ARPES at PEARL.
-this procedure defines the PEARL ARPES package the main purpose of this file is to load the necessary dependent procedures (see the include statements at the top)
-Definition in file pearl-arpes.ipf.
-
-
|
- -static | -
initializes package data once when the procedure is first loaded
- -Definition at line 83 of file pearl-arpes.ipf.
- -variable UnloadPearlArpesPackage | -( | -) | -- |
Definition at line 90 of file pearl-arpes.ipf.
- -preview and import panel for PEARL data -More...
-#include "pearl-area-import"
#include "pearl-area-profiles"
#include "pearl-area-display"
#include "pearl-pshell-import"
Go to the source code of this file.
--Namespaces | |
PearlDataExplorer | |
preview and import panel for PEARL data | |
-Functions | |
variable | pearl_data_explorer () |
static variable | init_package () |
initialize the global variables of the data explorer. More... | |
static variable | save_prefs () |
static variable | load_prefs () |
static variable | pearl_file_type (string filename) |
check whether a file can be imported by this module. More... | |
static variable | update_filelist () |
read a list of PEARL files from the file system More... | |
static variable | update_datasets () |
static variable | preview_file (string filename) |
static wave | preview_pshell_file (string filename) |
load the preview of a PShell HDF5 file. More... | |
static wave | preview_hdf_file (string filename) |
load the preview of a PEARL HDF5 file. More... | |
static wave | preview_itx_file (string filename) |
static wave | preview_mtrx_file (string filename) |
load the preview of a Matrix STM file. More... | |
static variable | extract_preview_image (wave data, wave preview) |
static variable | preview_dataset (string datasetname) |
static variable | preview_datafolder () |
static variable | preview_setscale_x (wave data, wave preview) |
static variable | preview_attributes (dfref attr_folder, dfref dest_folder=defaultValue, wave attr_filter=defaultValue, variable include_datawaves=defaultValue, variable include_infowaves=defaultValue) |
static variable | display_dataset (string datasetname) |
variable | test_attributes_notebook () |
static variable | attributes_notebook (wave attr_names, wave attr_values, string title) |
static variable | notebook_add_attributes (string notebook_name, wave attr_filter, wave attr_names, wave attr_values) |
static string | show_preview_graph (wave data, wave xdata=defaultValue) |
static string | display_preview_trace (wave xtrace, wave ytrace) |
static variable | load_selected_files (string options=defaultValue) |
static variable | load_file (string filename, string options=defaultValue) |
static variable | prompt_hdf_options (string *options) |
variable | prompt_default_process (string *param) |
prototype for prompting for processing function parameters. More... | |
variable | prompt_func_params (string func_name, string *func_param) |
static dfr | load_pshell_file (string filename, string options=defaultValue) |
static dfr | load_hdf_file (string filename, string options=defaultValue) |
static dfr | load_itx_file (string filename, string options=defaultValue) |
static dfr | load_mtrx_file (string filename, string options=defaultValue) |
load a matrix (STM) data file More... | |
string | itx_suggest_foldername (string filename, variable ignoredate=defaultValue, string sourcename=defaultValue, variable unique=defaultValue) |
void | PearlDataExplorer () |
static variable | bp_load_prefs (WMButtonAction *ba) |
static variable | bp_save_prefs (WMButtonAction *ba) |
static variable | bp_browse_filepath (WMButtonAction *ba) |
static variable | bp_update_filelist (WMButtonAction *ba) |
static variable | bp_load_files (WMButtonAction *ba) |
static variable | bp_load_files_opt (WMButtonAction *ba) |
static variable | bp_file_next (WMButtonAction *ba) |
static variable | bp_file_prev (WMButtonAction *ba) |
static variable | lbp_filelist (WMListboxAction *lba) |
static variable | bp_update_datasets (WMButtonAction *ba) |
static variable | bp_dataset_folder (WMButtonAction *ba) |
static variable | bp_dataset_display (WMButtonAction *ba) |
static variable | bp_dataset_next (WMButtonAction *ba) |
static variable | bp_dataset_prev (WMButtonAction *ba) |
static variable | lbp_datasets (WMListboxAction *lba) |
static variable | bp_attr_notebook (WMButtonAction *ba) |
-Variables | |
static const string | package_name = "pearl_explorer" |
static const string | package_path = "root:packages:pearl_explorer:" |
static const string | ks_filematch_adh5 = "*.h5" |
static const string | ks_filematch_pshell = "psh*.h5" |
static const string | ks_filematch_itx = "*.itx" |
static const string | ks_filematch_mtrx = "*_mtrx" |
preview and import panel for PEARL data
-preview and import panel for PEARL data:
Definition in file pearl-data-explorer.ipf.
-
-
|
- -static | -
Definition at line 805 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 1733 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 1419 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 1624 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 1598 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 1644 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 1671 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 1485 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 1517 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 1457 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 1471 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 1391 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 1405 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 1584 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 1443 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 765 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 922 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 478 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
initialize the global variables of the data explorer.
-initializes the global variables and data folder for this procedure file must be called once before the panel is created warning: this function overwrites previous values
- -Definition at line 55 of file pearl-data-explorer.ipf.
- -string itx_suggest_foldername | -( | -string | -filename, | -
- | - | variable | -ignoredate = defaultValue , |
-
- | - | string | -sourcename = defaultValue , |
-
- | - | variable | -unique = defaultValue |
-
- | ) | -- |
Definition at line 1241 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 1698 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 1549 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 979 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 1125 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 1175 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
load a matrix (STM) data file
- -Definition at line 1218 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 116 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 1073 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 955 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 844 of file pearl-data-explorer.ipf.
- -variable pearl_data_explorer | -( | -) | -- |
Definition at line 44 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
check whether a file can be imported by this module.
-the file type is determined by the extension of the file name.
-Definition at line 161 of file pearl-data-explorer.ipf.
- -void PearlDataExplorer | -( | -) | -- |
Definition at line 1300 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 631 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 560 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 517 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 255 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
load the preview of a PEARL HDF5 file.
-the preview is an arbitrary detector image extracted from the file, see adh5_load_preview(). the preview is loaded to the preview_image wave in the pear_explorer data folder.
-the s_file_info string is updated with information about the scan dimensions.
-filename | name of a file in the directory specified by the pearl_explorer_filepath path object. |
Definition at line 363 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 395 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
load the preview of a Matrix STM file.
-the preview is loaded to the preview_image wave in the pearl_explorer data folder.
-the s_file_info string is updated with information about the scan dimensions.
-this function requires the MatrixFileReader.xop and pearl-matrix-import.ipf to be loaded. otherwise it will return an empty wave reference.
-filename | name of a file in the directory specified by the pearl_explorer_filepath path object. |
Definition at line 435 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
load the preview of a PShell HDF5 file.
-the preview is an arbitrary detector image extracted from the file, see adh5_load_preview(). the preview is loaded to the preview_image wave in the pear_explorer data folder.
-the s_file_info string is updated with information about the scan dimensions.
-filename | name of a file in the directory specified by the pearl_explorer_filepath path object. |
Definition at line 307 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 601 of file pearl-data-explorer.ipf.
- -variable prompt_default_process | -( | -string * | -param | ) | -- |
prototype for prompting for processing function parameters.
-the function should prompt the user for function parameters, and update the param argument if the user clicked OK. returns 0 if the user clicked OK, 1 if the user cancelled.
-prompt functions must have the same name as the corresponding reduction function with the prefix "prompt_". be aware of the limited length of function names in Igor.
-this function is a prototype. it does nothing but returns OK.
- -Definition at line 1053 of file pearl-data-explorer.ipf.
- -variable prompt_func_params | -( | -string | -func_name, | -
- | - | string * | -func_param | -
- | ) | -- |
Definition at line 1059 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 1014 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 96 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 871 of file pearl-data-explorer.ipf.
- -variable test_attributes_notebook | -( | -) | -- |
Definition at line 798 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 212 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
read a list of PEARL files from the file system
-wtFiles and wSelectedFiles in the package data folder are updated. only files for which pearl_file_type() returns non-zero are listed.
- -Definition at line 184 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 39 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 41 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 42 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 40 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 36 of file pearl-data-explorer.ipf.
- -
-
|
- -static | -
Definition at line 37 of file pearl-data-explorer.ipf.
- -interface for writing ELOG entries with Igor graphs as attachment. -More...
-Go to the source code of this file.
--Namespaces | |
PearlElog | |
interface for writing ELOG entries with Igor graphs as attachment. | |
-Functions | |
variable | pearl_elog (string logbook) |
main function to initialize ELOG and to open an ELOG panel. More... | |
static variable | IgorBeforeNewHook (string igorApplicationNameStr) |
save preferences and recent values before Igor opens a new experiment. More... | |
static variable | IgorQuitHook (string igorApplicationNameStr) |
save preferences and recent values before Igor quits. More... | |
static variable | AfterFileOpenHook (variable refNum, string file, string pathName, string type, string creator, variable kind) |
initialize the package and reload preferences after an experiment is loaded. More... | |
static dfr | get_elog_df (string name, variable category) |
get the package, logbook, or template datafolder. More... | |
static variable | init_package (variable clean=defaultValue) |
initialize the package data folder. More... | |
variable | elog_init_pearl_templates () |
setup PEARL template logbooks. More... | |
static variable | init_volatile_vars () |
initialize volatile variables. More... | |
variable | elog_create_logbook (string name, string template=defaultValue) |
create a new logbook. More... | |
variable | elog_config (string elog_path=defaultValue, string hostname=defaultValue, variable port=defaultValue, string subdir=defaultValue) |
set global module configuration parameters More... | |
variable | elog_login (string logbook, string username, string password) |
set username and password for login to a logbook More... | |
variable | elog_logout (string logbook) |
clear username and password of a logbook or all logbooks. More... | |
static variable | save_prefs () |
save persistent package data to the preferences file. More... | |
static variable | load_prefs () |
load persistent package data from the preferences file. More... | |
static string | list_logbooks (variable templates=defaultValue) |
get a list of configured logbooks or templates. More... | |
variable | elog_validate_attributes (string logbook, string attributes) |
validate attributes More... | |
variable | elog_create_entry (string logbook, string attributes, string message, variable encoding=defaultValue, string graphs=defaultValue, variable replyto=defaultValue) |
create a new entry in ELOG More... | |
variable | elog_add_attachment (string logbook, variable id, string graphs) |
add one or more graphs to an existing ELOG entry More... | |
static string | prepare_command_line (string logbook) |
format the ELOG command and essential address arguments. More... | |
static string | format_url (string logbook) |
format the URL for display to the user More... | |
static string | prepare_graph_attachments (string graphs) |
prepare screenshots of graph windows for attachments More... | |
static string | get_timestamp (string sep) |
static string | create_message_file (string message) |
save the message to a temporary text file More... | |
static string | create_graph_file (string graphname, variable fileindex) |
save a graph to a temporary graphics file More... | |
static string | create_cmd_file (string cmd) |
write the command line to a file. More... | |
static string | get_log_path () |
static variable | cleanup_temp_files () |
delete temporary files created by the ELOG module. More... | |
static variable | parse_result () |
parse the result file from an elog invokation. More... | |
string | elog_prompt_logbook () |
prompt to open or create a logbook More... | |
variable | elog_prompt_login (string logbook) |
prompt the user for login to a logbook More... | |
string | PearlElogPanel (string logbook) |
open a new panel for submitting data to ELOG. More... | |
static variable | elog_panel_hook (WMWinHookStruct *s) |
static variable | update_attach_items (string logbook) |
update the list of attachments More... | |
static variable | move_attach_item (string logbook, variable item, variable distance) |
move an attachment item in the list of attachments More... | |
static variable | bp_attach_updown (WMButtonAction *ba) |
button procedure for the attachment up and down buttons More... | |
static variable | bp_submit (WMButtonAction *ba) |
button procedure for the Submit and Reply buttons More... | |
static variable | bp_attach_top (WMButtonAction *ba) |
select top graph window for attachment More... | |
static variable | bp_attach_allnone (WMButtonAction *ba) |
select/deselect all graph windows for attachment More... | |
static variable | bp_attach (WMButtonAction *ba) |
static variable | bp_save_graphs (WMButtonAction *ba) |
static variable | bp_clear (WMButtonAction *ba) |
static variable | bp_login (WMButtonAction *ba) |
static variable | bp_logout (WMButtonAction *ba) |
static string | get_default_panel_name () |
static string | get_panel_attributes (string windowname) |
get a list of attributes from the fields of the ELOG panel. More... | |
static string | set_panel_attributes (string windowname, string attributes, variable clear=defaultValue) |
set the fields of the ELOG panel More... | |
static string | get_panel_message (string windowname) |
get the message field of the ELOG panel More... | |
static string | set_panel_message (string windowname, string message) |
set the message field of the ELOG panel More... | |
static string | get_panel_graphs (string windowname) |
get the names of the graphs selected for attachment More... | |
static string | set_panel_graphs (string windowname, string graphs) |
update selection of graphs for attachment More... | |
-Variables | |
static const string | package_name = "pearl_elog" |
static const string | package_path = "root:packages:pearl_elog:" |
static const variable | kdfRoot = 0 |
static const variable | kdfVolatile = 1 |
static const variable | kdfPersistent = 2 |
static const variable | kdfTemplates = 3 |
static const string | elog_success_msg = "Message successfully transmitted" |
static const string | elog_parse_id = "ID=%u" |
static const variable | kAttachColSel = 0 |
static const variable | kAttachColTitle = 1 |
static const variable | kAttachColName = 2 |
interface for writing ELOG entries with Igor graphs as attachment.
-the functions in this module support the following ELOG features:
usage:
elog command line
* elog -h <hostname> [-p port] [-d subdir] -* Location where elogd is running -* -l logbook Name of logbook -* -s Use SSL for communication -* [-v] For verbose output -* [-w password] Write password defined on server -* [-u username password] User name and password -* [-f <attachment>] Up to 50 attachments -* -a <attribute>=<value> Up to 50 attributes -* [-r <id>] Reply to existing message -* [-q] Quote original text on reply -* [-e <id>] Edit existing message -* [-x] Suppress email notification -* [-n 0|1|2] Encoding: 0:ELcode,1:plain,2:HTML -* -m <textfile>] | <text> -*
Definition in file pearl-elog.ipf.
-
-
|
- -static | -
initialize the package and reload preferences after an experiment is loaded.
- -Definition at line 143 of file pearl-elog.ipf.
- -
-
|
- -static | -
Definition at line 1634 of file pearl-elog.ipf.
- -
-
|
- -static | -
select/deselect all graph windows for attachment
- -Definition at line 1613 of file pearl-elog.ipf.
- -
-
|
- -static | -
select top graph window for attachment
- -Definition at line 1597 of file pearl-elog.ipf.
- -
-
|
- -static | -
button procedure for the attachment up and down buttons
- -Definition at line 1518 of file pearl-elog.ipf.
- -
-
|
- -static | -
Definition at line 1695 of file pearl-elog.ipf.
- -
-
|
- -static | -
Definition at line 1711 of file pearl-elog.ipf.
- -
-
|
- -static | -
Definition at line 1729 of file pearl-elog.ipf.
- -
-
|
- -static | -
Definition at line 1667 of file pearl-elog.ipf.
- -
-
|
- -static | -
button procedure for the Submit and Reply buttons
- -Definition at line 1550 of file pearl-elog.ipf.
- -
-
|
- -static | -
delete temporary files created by the ELOG module.
-this deletes all temporary graph files that are referenced by the volatile temp_graph_files list. temp_graph_files is a semicolon-delimited string. items are added by create_graph_file().
-this function should be called before a new experiment is loaded or igor quits.
- -Definition at line 1115 of file pearl-elog.ipf.
- -
-
|
- -static | -
write the command line to a file.
-the command script changes the working directory to the Temporary directory. it also deletes a previous elog.log file.
-Definition at line 1059 of file pearl-elog.ipf.
- -
-
|
- -static | -
save a graph to a temporary graphics file
-the file is saved to the Temporary directory returned by igor's SpecialDirPath function. the file name contains a time stamp and the specified file index to make it unique. the function returns the name of the file (excluding path!)
-the full path is added to the temp_graph_files global list. a hook function will delete the files listed there when igor quits.
-graphname | object name of the graph to save. |
fileindex | incrememtal index of the file within one submission. the file name is made unique by a time stamp and this file index. submissions within the same second must have a unique file index. |
Definition at line 1023 of file pearl-elog.ipf.
- -
-
|
- -static | -
save the message to a temporary text file
-the file is saved to the Temporary directory returned by igor's SpecialDirPath function under the file name "elog_temp_message.txt". the function returns the name of the file (excluding path!)
-message | text message to save to the file. |
Definition at line 982 of file pearl-elog.ipf.
- -variable elog_add_attachment | -( | -string | -logbook, | -
- | - | variable | -id, | -
- | - | string | -graphs | -
- | ) | -- |
add one or more graphs to an existing ELOG entry
-logbook | name of the target logbook |
id | identification number of the existing entry |
graphs | names of graph windows to be added as attachments, semicolon separated |
Definition at line 792 of file pearl-elog.ipf.
- -variable elog_config | -( | -string | -elog_path = defaultValue , |
-
- | - | string | -hostname = defaultValue , |
-
- | - | variable | -port = defaultValue , |
-
- | - | string | -subdir = defaultValue |
-
- | ) | -- |
set global module configuration parameters
- -Definition at line 473 of file pearl-elog.ipf.
- -variable elog_create_entry | -( | -string | -logbook, | -
- | - | string | -attributes, | -
- | - | string | -message, | -
- | - | variable | -encoding = defaultValue , |
-
- | - | string | -graphs = defaultValue , |
-
- | - | variable | -replyto = defaultValue |
-
- | ) | -- |
create a new entry in ELOG
-this is the main function to create a new entry in a logbook.
-logbook | name of the target logbook. |
attributes | key=value list of attributes, semicolon separated. |
message | free text part of the entry. |
encoding | encoding of message, 0:ELcode, 1:plain (default), 2:HTML. |
graphs | names of graph windows to be added as attachments, semicolon separated. |
replyto | existing message ID (> 1) to follow up on. 0 or default: start new thread. |
Definition at line 685 of file pearl-elog.ipf.
- -variable elog_create_logbook | -( | -string | -name, | -
- | - | string | -template = defaultValue |
-
- | ) | -- |
create a new logbook.
-create a new empty logbook or duplicate from a template.
-name | name of the new logbook. if the logbook exists, the existing logbook folder is killed and replaced by a new one. this may fail if a window is still open. |
template | name of the template. if empty string, a new empty logbook is created. |
Definition at line 414 of file pearl-elog.ipf.
- -variable elog_init_pearl_templates | -( | -) | -- |
setup PEARL template logbooks.
-template logbooks for PEARL.
-Definition at line 262 of file pearl-elog.ipf.
- -variable elog_login | -( | -string | -logbook, | -
- | - | string | -username, | -
- | - | string | -password | -
- | ) | -- |
set username and password for login to a logbook
-the username and password are stored (in plain text) in global strings under the selected logbook folder. this is necessary for sending data to the ELOG server.
-call elog_logout() to clear the password variables and to avoid unintended use of your credentials.
-logbook | name of the target logbook. |
Definition at line 513 of file pearl-elog.ipf.
- -variable elog_logout | -( | -string | -logbook | ) | -- |
clear username and password of a logbook or all logbooks.
-the username and password are stored (in plain text) in global strings under the selected logbook folder. this function resets the username and password strings.
-logbook | name of the target logbook. if empty, the passwords of all logbooks are cleared. |
Definition at line 533 of file pearl-elog.ipf.
- -
-
|
- -static | -
Definition at line 1394 of file pearl-elog.ipf.
- -string elog_prompt_logbook | -( | -) | -- |
prompt to open or create a logbook
- -Definition at line 1184 of file pearl-elog.ipf.
- -variable elog_prompt_login | -( | -string | -logbook | ) | -- |
prompt the user for login to a logbook
- -Definition at line 1214 of file pearl-elog.ipf.
- -variable elog_validate_attributes | -( | -string | -logbook, | -
- | - | string | -attributes | -
- | ) | -- |
validate attributes
-Definition at line 653 of file pearl-elog.ipf.
- -
-
|
- -static | -
format the URL for display to the user
-logbook | name of the target logbook |
Definition at line 902 of file pearl-elog.ipf.
- -
-
|
- -static | -
Definition at line 1746 of file pearl-elog.ipf.
- -
-
|
- -static | -
get the package, logbook, or template datafolder.
-name | name of logbook or template, or empty string for respective parent folder. |
category | parameter category:
|
Definition at line 170 of file pearl-elog.ipf.
- -
-
|
- -static | -
Definition at line 1095 of file pearl-elog.ipf.
- -
-
|
- -static | -
get a list of attributes from the fields of the ELOG panel.
-windowname | window name of the ELOG panel if empty, use default name "PearlElogPanel" |
"key1=value1;key2=value2"
. Definition at line 1759 of file pearl-elog.ipf.
- -
-
|
- -static | -
get the names of the graphs selected for attachment
-windowname | panel window name |
Definition at line 1914 of file pearl-elog.ipf.
- -
-
|
- -static | -
get the message field of the ELOG panel
-windowname | window name of the ELOG panel if empty, use default name "PearlElogPanel" |
Definition at line 1868 of file pearl-elog.ipf.
- -
-
|
- -static | -
Definition at line 958 of file pearl-elog.ipf.
- -
-
|
- -static | -
save preferences and recent values before Igor opens a new experiment.
- -Definition at line 127 of file pearl-elog.ipf.
- -
-
|
- -static | -
save preferences and recent values before Igor quits.
- -Definition at line 135 of file pearl-elog.ipf.
- -
-
|
- -static | -
initialize the package data folder.
-the data folder is initialized with a default, local configuration without any logbooks. the server configuration should be set in the preferences.
-clean | decides what to do if the package configuration exists.
|
Definition at line 217 of file pearl-elog.ipf.
- -
-
|
- -static | -
initialize volatile variables.
-create and initialize all volatile variables for the configured notebooks. values of existing variables are not changed.
-this function must be called after new logbooks have been configured, specifically by elog_create_logbook() and load_prefs().
- -Definition at line 340 of file pearl-elog.ipf.
- -
-
|
- -static | -
get a list of configured logbooks or templates.
-this is list of data folder names under persistent:logbooks (or persistent:templates). the function does not check whether the folders contain valid data.
-templates | select whether logbooks (0, default) or templates (1) are returned. |
Definition at line 618 of file pearl-elog.ipf.
- -
-
|
- -static | -
load persistent package data from the preferences file.
-the preferences file is an Igor packed experiment file in a special preferences folder
- -Definition at line 584 of file pearl-elog.ipf.
- -
-
|
- -static | -
move an attachment item in the list of attachments
- -Definition at line 1494 of file pearl-elog.ipf.
- -
-
|
- -static | -
parse the result file from an elog invokation.
-Definition at line 1141 of file pearl-elog.ipf.
- -variable pearl_elog | -( | -string | -logbook | ) | -- |
main function to initialize ELOG and to open an ELOG panel.
-this function takes care of all necessary initialization, configuration, and preferences. if a panel exists, it will be moved to the front.
-logbook | name of the logbook if empty, the user is prompted to select or create a logbook by elog_prompt_logbook(). |
Definition at line 97 of file pearl-elog.ipf.
- -string PearlElogPanel | -( | -string | -logbook | ) | -- |
open a new panel for submitting data to ELOG.
-this function creates only the panel but not the necessary data folders. call init_package() and load_prefs() once before creating panels.
-logbook | name of the target logbook |
Definition at line 1241 of file pearl-elog.ipf.
- -
-
|
- -static | -
format the ELOG command and essential address arguments.
-the following arguments are included (from global variables) if applicable: host name, port, SSL, sub-dir, username, password the result string does not include leading or trailing space
-logbook | name of the target logbook |
Definition at line 853 of file pearl-elog.ipf.
- -
-
|
- -static | -
prepare screenshots of graph windows for attachments
-prepares the attachment files from Igor graph windows and returns the arguments to the elog command to attach the files. file names are returned without path. the result string does not include leading or trailing space.
-graphs | names of graph windows to be added as attachments, semicolon separated |
Definition at line 939 of file pearl-elog.ipf.
- -
-
|
- -static | -
save persistent package data to the preferences file.
-saves everything under the persistent folder of the package.
- -Definition at line 564 of file pearl-elog.ipf.
- -
-
|
- -static | -
set the fields of the ELOG panel
-windowname | window name of the ELOG panel if empty, use default name "PearlElogPanel" |
attributes | list of attributes to set (format "key1=value1;key2=value2") |
clear | what to do if a key is missing in attributes?
|
Definition at line 1806 of file pearl-elog.ipf.
- -
-
|
- -static | -
update selection of graphs for attachment
-windowname | panel window name. looks for default panel if empty. |
graphs | semicolon-separated list of names of graph windows to select for attachment. |
Definition at line 1954 of file pearl-elog.ipf.
- -
-
|
- -static | -
set the message field of the ELOG panel
-windowname | window name of the ELOG panel if empty, use default name "PearlElogPanel" |
message | message text that can be passed to the Notebook operation. |
Definition at line 1894 of file pearl-elog.ipf.
- -
-
|
- -static | -
update the list of attachments
- -Definition at line 1433 of file pearl-elog.ipf.
- -
-
|
- -static | -
Definition at line 1134 of file pearl-elog.ipf.
- -
-
|
- -static | -
Definition at line 1133 of file pearl-elog.ipf.
- -
-
|
- -static | -
Definition at line 1430 of file pearl-elog.ipf.
- -
-
|
- -static | -
Definition at line 1428 of file pearl-elog.ipf.
- -
-
|
- -static | -
Definition at line 1429 of file pearl-elog.ipf.
- -
-
|
- -static | -
Definition at line 155 of file pearl-elog.ipf.
- -
-
|
- -static | -
Definition at line 153 of file pearl-elog.ipf.
- -
-
|
- -static | -
Definition at line 156 of file pearl-elog.ipf.
- -
-
|
- -static | -
Definition at line 154 of file pearl-elog.ipf.
- -
-
|
- -static | -
Definition at line 85 of file pearl-elog.ipf.
- -
-
|
- -static | -
Definition at line 86 of file pearl-elog.ipf.
- -various fit functions for photoelectron spectroscopy. -More...
-#include "mm-physconst"
Go to the source code of this file.
--Data Structures | |
struct | DoniachSunjicStruct |
-Namespaces | |
PearlFitFuncs | |
various fit functions for photoelectron spectroscopy. | |
-Functions | |
threadsafe variable | MultiGaussLinBG (wave w, variable x) |
multiple gaussian peaks on a linear background fit function. More... | |
threadsafe variable | MultiGaussLinBG_AO (wave pw, wave yw, wave xw) |
multiple gaussian peaks on a linear background fit function (all at once). More... | |
variable | MultiVoigtLinBG (wave w, variable x) |
multiple voigt peaks on a linear background fit function. More... | |
threadsafe variable | DoniachSunjic (variable x, variable amp, variable pos, variable sing, variable fwhm) |
Doniach-Sunjic line shape. More... | |
variable | MultiDoniachSunjicLinBG (wave w, variable x) |
multiple doniach-sunjic peaks on a linear background fit function. More... | |
threadsafe variable | ds1_bg (wave w, variable x) |
threadsafe variable | ds2_bg (wave w, variable x) |
variable | ds4_bg (wave w, variable x) |
variable | ds6_bg (wave w, variable x) |
threadsafe variable | DoniachSunjicBroadS (DoniachSunjicStruct *s) |
variable | DoniachSunjicBroad (wave pw, wave yw, wave xw) |
variable | Calc_DoniachSunjicBroad (wave pw, wave yw) |
variable | Fit_DoniachSunjicBroad (wave pw, wave yw, wave xw, wave ww) |
variable | Au4f (wave w, variable x) |
variable | Au4f_2p2 (wave w, variable x) |
variable | ShowComponents_Au4f_2p2 (wave coef_wave, wave fit_wave) |
variable | Au4f_2p3 (wave w, variable x) |
variable | ShowComponents_Au4f_2p3 (wave coef_wave, wave fit_wave) |
variable | FermiGaussConv (wave pw, wave yw, wave xw) |
convolution of Fermi-Dirac distribution and a Gaussian. More... | |
various fit functions for photoelectron spectroscopy.
-this procedure contains various functions for curve fitting.
-Definition in file pearl-fitfuncs.ipf.
-variable Au4f | -( | -wave | -w, | -
- | - | variable | -x | -
- | ) | -- |
Definition at line 564 of file pearl-fitfuncs.ipf.
- -variable Au4f_2p2 | -( | -wave | -w, | -
- | - | variable | -x | -
- | ) | -- |
Definition at line 609 of file pearl-fitfuncs.ipf.
- -variable Au4f_2p3 | -( | -wave | -w, | -
- | - | variable | -x | -
- | ) | -- |
Definition at line 694 of file pearl-fitfuncs.ipf.
- -variable Calc_DoniachSunjicBroad | -( | -wave | -pw, | -
- | - | wave | -yw | -
- | ) | -- |
Definition at line 507 of file pearl-fitfuncs.ipf.
- -threadsafe variable DoniachSunjic | -( | -variable | -x, | -
- | - | variable | -amp, | -
- | - | variable | -pos, | -
- | - | variable | -sing, | -
- | - | variable | -fwhm | -
- | ) | -- |
Doniach-Sunjic line shape.
-[S. Doniach, M. Sunjic, J. Phys. C 3 (1970) 285]
-x | independent variable |
amp | amplitude |
pos | position |
sing | singularity index (0 <= sing < 1) |
fwhm | full width at half maximum |
Definition at line 140 of file pearl-fitfuncs.ipf.
- -variable DoniachSunjicBroad | -( | -wave | -pw, | -
- | - | wave | -yw, | -
- | - | wave | -xw | -
- | ) | -- |
Definition at line 446 of file pearl-fitfuncs.ipf.
- -threadsafe variable DoniachSunjicBroadS | -( | -DoniachSunjicStruct * | -s | ) | -- |
Definition at line 357 of file pearl-fitfuncs.ipf.
- -threadsafe variable ds1_bg | -( | -wave | -w, | -
- | - | variable | -x | -
- | ) | -- |
Definition at line 183 of file pearl-fitfuncs.ipf.
- -threadsafe variable ds2_bg | -( | -wave | -w, | -
- | - | variable | -x | -
- | ) | -- |
Definition at line 206 of file pearl-fitfuncs.ipf.
- -variable ds4_bg | -( | -wave | -w, | -
- | - | variable | -x | -
- | ) | -- |
Definition at line 234 of file pearl-fitfuncs.ipf.
- -variable ds6_bg | -( | -wave | -w, | -
- | - | variable | -x | -
- | ) | -- |
Definition at line 275 of file pearl-fitfuncs.ipf.
- -variable FermiGaussConv | -( | -wave | -pw, | -
- | - | wave | -yw, | -
- | - | wave | -xw | -
- | ) | -- |
convolution of Fermi-Dirac distribution and a Gaussian.
-Definition at line 817 of file pearl-fitfuncs.ipf.
- -variable Fit_DoniachSunjicBroad | -( | -wave | -pw, | -
- | - | wave | -yw, | -
- | - | wave | -xw, | -
- | - | wave | -ww | -
- | ) | -- |
Definition at line 528 of file pearl-fitfuncs.ipf.
- -variable MultiDoniachSunjicLinBG | -( | -wave | -w, | -
- | - | variable | -x | -
- | ) | -- |
multiple doniach-sunjic peaks on a linear background fit function.
-w | shape parameters. the length of the wave defines the number of peaks.
|
x | independent variable |
Definition at line 167 of file pearl-fitfuncs.ipf.
- -threadsafe variable MultiGaussLinBG | -( | -wave | -w, | -
- | - | variable | -x | -
- | ) | -- |
multiple gaussian peaks on a linear background fit function.
-w | shape parameters. the length of the wave defines the number of peaks.
|
x | independent variable |
Definition at line 44 of file pearl-fitfuncs.ipf.
- -threadsafe variable MultiGaussLinBG_AO | -( | -wave | -pw, | -
- | - | wave | -yw, | -
- | - | wave | -xw | -
- | ) | -- |
multiple gaussian peaks on a linear background fit function (all at once).
-this is the all-at-once version of MultiGaussLinBG. it runs about 15% faster compared to the point-by-point function (measured on a 200 point spectrum with 3 peaks).
-pw | shape parameters. the length of the wave defines the number of peaks.
|
yw | y (dependent) values. |
xw | x (independent) independent values. |
Definition at line 79 of file pearl-fitfuncs.ipf.
- -variable MultiVoigtLinBG | -( | -wave | -w, | -
- | - | variable | -x | -
- | ) | -- |
multiple voigt peaks on a linear background fit function.
-w | shape parameters. the length of the wave defines the number of peaks.
|
x | independent variable |
Definition at line 110 of file pearl-fitfuncs.ipf.
- -variable ShowComponents_Au4f_2p2 | -( | -wave | -coef_wave, | -
- | - | wave | -fit_wave | -
- | ) | -- |
Definition at line 663 of file pearl-fitfuncs.ipf.
- -variable ShowComponents_Au4f_2p3 | -( | -wave | -coef_wave, | -
- | - | wave | -fit_wave | -
- | ) | -- |
Definition at line 762 of file pearl-fitfuncs.ipf.
- -Go to the source code of this file.
--Functions | |
variable | display_progress_panel (string title, string message, variable progress_max) |
variable | update_progress_panel (variable progress, string message=defaultValue, variable progress_max=defaultValue) |
variable | kill_progress_panel () |
variable display_progress_panel | -( | -string | -title, | -
- | - | string | -message, | -
- | - | variable | -progress_max | -
- | ) | -- |
Definition at line 18 of file pearl-gui-tools.ipf.
- -variable kill_progress_panel | -( | -) | -- |
Definition at line 50 of file pearl-gui-tools.ipf.
- -variable update_progress_panel | -( | -variable | -progress, | -
- | - | string | -message = defaultValue , |
-
- | - | variable | -progress_max = defaultValue |
-
- | ) | -- |
Definition at line 32 of file pearl-gui-tools.ipf.
- -data file import for omicron matrix (STM) files -More...
-Go to the source code of this file.
--Data Structures | |
struct | errorCode |
from matrixfilereader help More... | |
-Namespaces | |
PearlMatrixImport | |
data file import for omicron matrix (STM) files | |
-Functions | |
static variable | init_package () |
initialize the package data folder. More... | |
static variable | check_package_folder () |
check that the package data folder exists More... | |
static variable | AfterFileOpenHook (variable refNum, string file, string pathName, string type, string creator, variable kind) |
initialize the package and reload preferences after an experiment is loaded. More... | |
static variable | BeforeFileOpenHook (variable refNum, string fileName, string path, string type, string creator, variable kind) |
open a matrix file that was dropped into Igor. More... | |
string | matrix_format_elog_message (wave metadata) |
generate elog message from bricklet metadata More... | |
variable | matrix_preview_2d (wave data, wave metadata) |
static wave | preview_matrix_file (string filename) |
load the preview of a Matrix data file More... | |
static variable | initStruct (errorCode *errorCode) |
from matrixfilereader help More... | |
variable | mtrx_load_all () |
load all data from a Matrix data file. More... | |
variable | mtrx_parse_filename (string fileName, string *resultFile, variable *runCycle, variable *scanCycle, string *channel) |
parse matrix file names More... | |
string | mtrx_split_filename (string fileName, string *prefix, string *datepart, string *timepart) |
split a matrix filename and return the first three parts More... | |
dfr | mtrx_create_folder (string fileName, dfref df_base=defaultValue) |
create or look up a data folder based on a matrix file name. More... | |
dfr | mtrx_get_cycle_folder (dfref df_base=defaultValue, variable runCycle=defaultValue, variable scanCycle=defaultValue) |
create a data folder for bricklet data. More... | |
variable | mtrx_file_brickletID (string resultFile, variable runCycle, variable scanCycle, string channel) |
find out bricklet ID of a file More... | |
variable | mtrx_open_file (string pathName, string fileNameOrPath) |
open a matrix result or data file More... | |
string | mtrx_load_preview (string destName, string pathName, string fileName, string traces=defaultValue) |
load a preview image from a Matrix data file. More... | |
string | mtrx_load_file (string pathName, string fileName, string traces=defaultValue) |
load all data from a Matrix data file. More... | |
variable | mtrx_scale_dataset (wave data) |
string | mtrx_load_info (string APathName, string AFileName) |
load descriptive info from a Matrix data file. More... | |
variable | subtract_line_bg (wave img) |
remove linear background line-by-line More... | |
-Variables | |
static const string | package_name = "pearl_matrix_import" |
static const string | package_path = "root:packages:pearl_matrix_import:" |
static const string | ks_filematch_mtrx = "*_mtrx" |
data file import for omicron matrix (STM) files
-the matrix file import requires the matrix file reader XOP by thomas braun (http://www.igorexchange.com/project/matrixFileReader) which in turn requires an installation of vernissage by omicron nanotechnology.
-Definition in file pearl-matrix-import.ipf.
-
-
|
- -static | -
initialize the package and reload preferences after an experiment is loaded.
- -Definition at line 85 of file pearl-matrix-import.ipf.
- -
-
|
- -static | -
open a matrix file that was dropped into Igor.
-preliminary implementation. this should rather load the entire file and display a preview. graph windows should be reused by subsequent loads. also decide on a data saving location.
- -Definition at line 102 of file pearl-matrix-import.ipf.
- -
-
|
- -static | -
check that the package data folder exists
-initialize the package if the folder does not exist.
- -Definition at line 72 of file pearl-matrix-import.ipf.
- -
-
|
- -static | -
initialize the package data folder.
- -Definition at line 45 of file pearl-matrix-import.ipf.
- -
-
|
- -static | -
from matrixfilereader help
- -Definition at line 212 of file pearl-matrix-import.ipf.
- -string matrix_format_elog_message | -( | -wave | -metadata | ) | -- |
generate elog message from bricklet metadata
-metadata | two-column text wave |
Definition at line 120 of file pearl-matrix-import.ipf.
- -variable matrix_preview_2d | -( | -wave | -data, | -
- | - | wave | -metadata | -
- | ) | -- |
Definition at line 145 of file pearl-matrix-import.ipf.
- -dfr mtrx_create_folder | -( | -string | -fileName, | -
- | - | dfref | -df_base = defaultValue |
-
- | ) | -- |
create or look up a data folder based on a matrix file name.
-the name of the folder is mtrx_date_time, where date and time are parsed from the file name. for this to work, the file name must consist of at least three parts that are separated by dash or underscore. the second (third) part contains the date (time). date and time are copied as strings.
-if the data folder exists, a reference to the existing folder is returned.
-fileName | name of the result or data file. |
df_base | (optional) base data folder. default: current folder. |
Definition at line 360 of file pearl-matrix-import.ipf.
- -variable mtrx_file_brickletID | -( | -string | -resultFile, | -
- | - | variable | -runCycle, | -
- | - | variable | -scanCycle, | -
- | - | string | -channel | -
- | ) | -- |
find out bricklet ID of a file
-resultFile | base name of result file without chain link number and extension. as returned by mtrx_parse_filename. |
runCycle | requested run cycle. 0 = first available. |
scanCycle | requested scan cycle. 0 = first available. |
channel | channel name. for example: "I", "Z", "Aux(V)", etc. empty string: first available. |
Definition at line 461 of file pearl-matrix-import.ipf.
- -dfr mtrx_get_cycle_folder | -( | -dfref | -df_base = defaultValue , |
-
- | - | variable | -runCycle = defaultValue , |
-
- | - | variable | -scanCycle = defaultValue |
-
- | ) | -- |
create a data folder for bricklet data.
-the name of the folder is, for example "r23s2" where the first (second) number is the run (scan) cycle. run cycle and scan cycle numbers are taken from the open matrix file unless overridden by optional arguments.
-if the data folder exists, a reference to the existing folder is returned. if one of the run or scan cycle numbers is lower than 1, the base folder is returned.
-df_base | (optional) base data folder. default: current folder. |
runCycle | (optional) run cycle number. must be >= 1. default: from last mtrx_open_file call. |
scanCycle | (optional) scan cycle number. must be >= 1. default: from last mtrx_open_file call. |
Definition at line 405 of file pearl-matrix-import.ipf.
- -variable mtrx_load_all | -( | -) | -- |
load all data from a Matrix data file.
- -Definition at line 231 of file pearl-matrix-import.ipf.
- -string mtrx_load_file | -( | -string | -pathName, | -
- | - | string | -fileName, | -
- | - | string | -traces = defaultValue |
-
- | ) | -- |
load all data from a Matrix data file.
-the data wave is loaded into a sub-subfolder the current data folder. the relative path has the format ":mtrx_{date}_{time}:r{run_cycle}s{scan_cycle}", where the parameters {date}, {time}, {run_cycle} and {scan_cycle} are copied from the file name. the file name must be formatted according to the specifications set out below.
-pathName | igor symbolic path name. can be empty if the path is specified in FileName or a dialog box should be displayed |
fileName | if empty a dialog box shows up the file name must adhere to the format "{prefix}-{date}-{time}-{anything}--{run_cycle}_{scan_cycle}.{extension}". the first three seperators can alternatively be underscores. it may be necessary to change the configuration of the Matrix application. |
traces | (currently not used) semicolon-separated list of preferred traces. the items of the list are match strings for the Igor StringMatch function. only matching traces are loaded from the file. default: "*Up;*Down;*ReUp;*ReDown;" |
Definition at line 767 of file pearl-matrix-import.ipf.
- -string mtrx_load_info | -( | -string | -APathName, | -
- | - | string | -AFileName | -
- | ) | -- |
load descriptive info from a Matrix data file.
-the info string lists the following information for each scan contained in the file:
APathName | igor symbolic path name. can be empty if the path is specified in AFileName or a dialog box should be displayed |
AFileName | if empty a dialog box shows up |
Definition at line 863 of file pearl-matrix-import.ipf.
- -string mtrx_load_preview | -( | -string | -destName, | -
- | - | string | -pathName, | -
- | - | string | -fileName, | -
- | - | string | -traces = defaultValue |
-
- | ) | -- |
load a preview image from a Matrix data file.
-the data wave is loaded into the current data folder.
-destName | destination wave name. the wave is created in the current data folder. |
pathName | igor symbolic path name. can be empty if the path is specified in FileName or a dialog box should be displayed |
fileName | if empty a dialog box shows up the file name must adhere to the format "{prefix}-{date}-{time}-{anything}--{run_cycle}_{scan_cycle}.{extension}". the first three seperators can alternatively be underscores. it may be necessary to change the configuration of the Matrix application. |
traces | (currently not used) semicolon-separated list of preferred traces. the items of the list are match strings for the Igor StringMatch function. only the first matching trace is loaded from the file. default: "*Up;*Down;*ReUp;*ReDown;" |
Definition at line 682 of file pearl-matrix-import.ipf.
- -variable mtrx_open_file | -( | -string | -pathName, | -
- | - | string | -fileNameOrPath | -
- | ) | -- |
open a matrix result or data file
-this function opens a matrix result file (.mtrx) or data file (.*_mtrx).
-if a data file is selected, the function locates the corresponding result file, opens it, and looks up the bricklet ID of the data file. if a result file is selected, the function opens it but does not look up bricklet IDs.
-the result file remains open and can be accessed using the mtrx_ functions or MFR_ operations. once a result file is open, you can easily access any bricklets linked to it, i.e., any run cycle, scan cycle, and channel.
-the function stores information about the opened file in a global package data folder. if the same result file is opened again later, the information is reused and the file not read again. this may cause problems if the file has been modified in the meantime, or if the cached data become corrupt for some reason. the function detects if a data file is not linked in the open result file, and updates the cache. in other situations it may be necessary to force a reload.
-pathName | igor path name or empty string. |
fileName | file name, with or without path, or empty string. |
Definition at line 545 of file pearl-matrix-import.ipf.
- -variable mtrx_parse_filename | -( | -string | -fileName, | -
- | - | string * | -resultFile, | -
- | - | variable * | -runCycle, | -
- | - | variable * | -scanCycle, | -
- | - | string * | -channel | -
- | ) | -- |
parse matrix file names
-parse matrix file names for result name, run cycle, scan cycle, and channel.
-fileName | matrix result or data file name (without path). |
resultFile | (out) base name of the result file. append "_%04u.mtrx" to get the actual result file. we do not know the chain link number at this stage. |
runCycle | (out) run cycle number. necessary to look up the bricklet ID. |
scanCycle | (out) scan cycle number. necessary to look up the bricklet ID. |
channel | (out) channel name. |
result data files look like: default_2015Apr20-124353_STM-STM_AtomManipulation–136_1.Aux1(V)_mtrx, default_2015Apr20-124353_STM-STM_AtomManipulation–136_1.I(V)_mtrx, default_2015Apr20-124353_STM-STM_AtomManipulation–14_1.I_mtrx, default_2015Apr20-124353_STM-STM_AtomManipulation–14_1.Z_mtrx, etc. the function returns all results as described in the parameter list.
- -Definition at line 294 of file pearl-matrix-import.ipf.
- -variable mtrx_scale_dataset | -( | -wave | -data | ) | -- |
Definition at line 829 of file pearl-matrix-import.ipf.
- -string mtrx_split_filename | -( | -string | -fileName, | -
- | - | string * | -prefix, | -
- | - | string * | -datepart, | -
- | - | string * | -timepart | -
- | ) | -- |
split a matrix filename and return the first three parts
-we assume that the second (third) part contains the date (time). the parts are separated by dash or underscore.
- -Definition at line 332 of file pearl-matrix-import.ipf.
- -
-
|
- -static | -
load the preview of a Matrix data file
-the preview is loaded to the preview_image wave in the pearl_explorer data folder.
-the s_file_info string is updated with information about the scan dimensions.
-filename | name of a file in the directory specified by the pearl_explorer_filepath path object. |
Definition at line 170 of file pearl-matrix-import.ipf.
- -variable subtract_line_bg | -( | -wave | -img | ) | -- |
remove linear background line-by-line
- -Definition at line 886 of file pearl-matrix-import.ipf.
- -
-
|
- -static | -
Definition at line 40 of file pearl-matrix-import.ipf.
- -
-
|
- -static | -
Definition at line 37 of file pearl-matrix-import.ipf.
- -
-
|
- -static | -
Definition at line 38 of file pearl-matrix-import.ipf.
- -Go to the source code of this file.
--Functions | |
string | PearlMenuEnableFunc (string funcname) |
variable | LoadPearlOptics () |
variable | LoadPearlArpes () |
variable | LoadPearlPreparation () |
variable | Display2dProfiles () |
variable | Display3dSlicer () |
variable | DisplayGizmoSlicer () |
variable | PearlLiveDisplay (string epicsname, string nickname, string wbRGB) |
variable | PearlAnglescanTracker (string epicsname, string wbRGB) |
variable Display2dProfiles | -( | -) | -- |
Definition at line 113 of file pearl-menu.ipf.
- -variable Display3dSlicer | -( | -) | -- |
Definition at line 130 of file pearl-menu.ipf.
- -variable DisplayGizmoSlicer | -( | -) | -- |
Definition at line 149 of file pearl-menu.ipf.
- -variable LoadPearlArpes | -( | -) | -- |
Definition at line 101 of file pearl-menu.ipf.
- -variable LoadPearlOptics | -( | -) | -- |
Definition at line 94 of file pearl-menu.ipf.
- -variable LoadPearlPreparation | -( | -) | -- |
Definition at line 107 of file pearl-menu.ipf.
- -variable PearlAnglescanTracker | -( | -string | -epicsname, | -
- | - | string | -wbRGB | -
- | ) | -- |
Definition at line 187 of file pearl-menu.ipf.
- -variable PearlLiveDisplay | -( | -string | -epicsname, | -
- | - | string | -nickname, | -
- | - | string | -wbRGB | -
- | ) | -- |
Definition at line 168 of file pearl-menu.ipf.
- -string PearlMenuEnableFunc | -( | -string | -funcname | ) | -- |
Definition at line 82 of file pearl-menu.ipf.
- -Go to the source code of this file.
--Functions | |
variable | otf_load_itx_all (string pathname) |
variable | otf_load_itx_match (string pathname, string matchstr) |
variable | otf_load_itx (string pathname, string filename) |
variable | otf_gather_iterator (dfref df, string *sdata) |
variable | otf_gather_batch (string ywavematch, string xwavematch, string destfolder) |
variable | gather_batch (string foldermatch, string ywavematch, string xwavematch, string destfolder) |
variable | otf_rename_folders_iterator (dfref df, string *sdata) |
variable | otf_rename_folders (string pattern, variable unique_index=defaultValue, string new_suffix=defaultValue, string match_str=defaultValue) |
variable | otf_interp (variable e1, variable e2, variable npts, variable smo) |
variable | otf_smo_int (wave win, wave wout, wave wpe, variable smo) |
variable gather_batch | -( | -string | -foldermatch, | -
- | - | string | -ywavematch, | -
- | - | string | -xwavematch, | -
- | - | string | -destfolder | -
- | ) | -- |
Definition at line 162 of file pearl-otf-import.ipf.
- -variable otf_gather_batch | -( | -string | -ywavematch, | -
- | - | string | -xwavematch, | -
- | - | string | -destfolder | -
- | ) | -- |
Definition at line 152 of file pearl-otf-import.ipf.
- -variable otf_gather_iterator | -( | -dfref | -df, | -
- | - | string * | -sdata | -
- | ) | -- |
Definition at line 106 of file pearl-otf-import.ipf.
- -variable otf_interp | -( | -variable | -e1, | -
- | - | variable | -e2, | -
- | - | variable | -npts, | -
- | - | variable | -smo | -
- | ) | -- |
Definition at line 271 of file pearl-otf-import.ipf.
- -variable otf_load_itx | -( | -string | -pathname, | -
- | - | string | -filename | -
- | ) | -- |
Definition at line 76 of file pearl-otf-import.ipf.
- -variable otf_load_itx_all | -( | -string | -pathname | ) | -- |
Definition at line 31 of file pearl-otf-import.ipf.
- -variable otf_load_itx_match | -( | -string | -pathname, | -
- | - | string | -matchstr | -
- | ) | -- |
Definition at line 53 of file pearl-otf-import.ipf.
- -variable otf_rename_folders | -( | -string | -pattern, | -
- | - | variable | -unique_index = defaultValue , |
-
- | - | string | -new_suffix = defaultValue , |
-
- | - | string | -match_str = defaultValue |
-
- | ) | -- |
Definition at line 231 of file pearl-otf-import.ipf.
- -variable otf_rename_folders_iterator | -( | -dfref | -df, | -
- | - | string * | -sdata | -
- | ) | -- |
Definition at line 185 of file pearl-otf-import.ipf.
- -variable otf_smo_int | -( | -wave | -win, | -
- | - | wave | -wout, | -
- | - | wave | -wpe, | -
- | - | variable | -smo | -
- | ) | -- |
Definition at line 304 of file pearl-otf-import.ipf.
- -
+ PEARL Procedures
+ rev-distro-2.0.2-0-g3235d52
+
+ Igor procedures for the analysis of PEARL data
+ |
+
+ PEARL Procedures
+ rev-distro-2.0.2-0-g3235d52
+
+ Igor procedures for the analysis of PEARL data
+ |
+
Go to the source code of this file.
--Functions | |
variable | cart2polar (variable xx, variable yy, variable zz, variable *radius, variable *theta, variable *phi) |
variable | cart2polar_wave (wave in, wave out) |
variable | polar2cart (variable radius, variable theta, variable phi, variable *xx, variable *yy, variable *zz) |
variable | polar2cart_wave (wave in, wave out) |
variable | polar_distance (variable polar1, variable azim1, variable polar2, variable azim2) |
variable cart2polar | -( | -variable | -xx, | -
- | - | variable | -yy, | -
- | - | variable | -zz, | -
- | - | variable * | -radius, | -
- | - | variable * | -theta, | -
- | - | variable * | -phi | -
- | ) | -- |
Definition at line 10 of file pearl-polar-coordinates.ipf.
- -variable cart2polar_wave | -( | -wave | -in, | -
- | - | wave | -out | -
- | ) | -- |
Definition at line 36 of file pearl-polar-coordinates.ipf.
- -variable polar2cart | -( | -variable | -radius, | -
- | - | variable | -theta, | -
- | - | variable | -phi, | -
- | - | variable * | -xx, | -
- | - | variable * | -yy, | -
- | - | variable * | -zz | -
- | ) | -- |
Definition at line 48 of file pearl-polar-coordinates.ipf.
- -variable polar2cart_wave | -( | -wave | -in, | -
- | - | wave | -out | -
- | ) | -- |
Definition at line 58 of file pearl-polar-coordinates.ipf.
- -variable polar_distance | -( | -variable | -polar1, | -
- | - | variable | -azim1, | -
- | - | variable | -polar2, | -
- | - | variable | -azim2 | -
- | ) | -- |
Definition at line 69 of file pearl-polar-coordinates.ipf.
- -import data from PShell -More...
-#include <HDF5 Browser>
#include "pearl-gui-tools"
#include "pearl-area-import"
Go to the source code of this file.
--Namespaces | |
PearlPShellImport | |
import data from PShell | |
-Functions | |
variable | psh5_open_file (string ANickName, string APathName, string AFileName) |
open a HDF5 file created by the PShell data acquisition program and prepare the data folder. More... | |
variable | psh5_close_file (variable fileID) |
close a HDF5 file opened by psh5_open_file. More... | |
string | psh5_load_complete (string ANickName, string APathName, string AFileName, variable load_data=defaultValue, variable load_attr=defaultValue) |
load everything from a PShell data file. More... | |
string | psh5_load_preview (string APathName, string AFileName, variable load_data=defaultValue, variable load_attr=defaultValue, string pref_scans=defaultValue, string pref_datasets=defaultValue) |
load a preview image from a PShell data file. More... | |
string | psh5_load_scan_complete (variable fileID, string scanpath, variable load_data=defaultValue, variable load_attr=defaultValue) |
load all data of a selected scan from a PShell data file. More... | |
string | psh5_list_scans (variable fileID) |
list scan groups of a PShell data file. More... | |
string | psh5_list_scan_datasets (variable fileID, string scanpath, variable include_regions=defaultValue) |
list datasets of a PShell scan group. More... | |
string | psh5_list_scan_regions (variable fileID, string scanpath) |
list regions of a PShell scan group. More... | |
string | psh5_load_scan_data (variable fileID, string scanpath) |
load all datasets of a PShell scan group. More... | |
string | psh5_load_scan_attrs (variable fileID, string scanpath, variable attr_sets=defaultValue) |
load attributes of a PShell scan group. More... | |
string | psh5_load_scan_meta (variable fileID, string scanpath) |
load metadata of a PShell scan group. More... | |
string | psh5_load_dataset (variable fileID, string scanpath, string datasetname, variable set_scale=defaultValue) |
load a dataset from an open PShell HDF5 file. More... | |
static string | select_dataset (string file_datasets, string pref_datasets) |
select the preferred dataset from a list of available datasets. More... | |
string | psh5_load_scan_preview (variable fileID, string scanpath, variable set_scale=defaultValue, string pref_datasets=defaultValue) |
load a preview dataset from an open PShell HDF5 file. More... | |
string | psh5_load_scan_section (variable fileID, string scanpath, variable dim, variable set_scale=defaultValue, string pref_datasets=defaultValue) |
load a longitudinal section of a scan from an open PShell HDF5 file. More... | |
variable | psh5_load_dataset_meta (variable fileID, string datapath, string datasetname, wave datawave) |
load metadata of a PShell dataset. More... | |
string | psh5_load_dataset_slabs (variable fileID, string datapath, string datasetname, variable progress=defaultValue) |
load a dataset slab-wise from the open PShell HDF5 file. More... | |
string | psh5_load_dataset_slab (variable fileID, string datapath, string datasetname, variable dim2start, variable dim2count, variable dim3start, variable dim3count) |
load a single image from the open PShell data file. More... | |
variable | ps_set_dimlabels (wave data) |
set dimension labels according to the axis type More... | |
variable | ps_set_dimlabels2 (wave data, string name) |
set dimension labels according to the axis type More... | |
static dfr | find_scan_folder (dfref dataDF) |
find the scan folder More... | |
static dfr | find_attr_folder (dfref dataDF) |
find the attributes data folder More... | |
variable | ps_scale_datasets () |
set the dimension scales of loaded PShell Scienta datasets according to attributes. More... | |
variable | ps_scale_dataset (wave data) |
set the dimension scales of a loaded PShell Scienta dataset according to attributes. More... | |
static wave | find_scale_wave (string name, dfref dataDF, dfref scanDF, dfref attrDF) |
variable | ps_detect_scale (wave ax, wave lo, wave hi, wave un) |
detect the dimension scales from attributes. More... | |
variable | ps_scale_dataset_2 (wave data, wave ax, wave lo, wave hi, wave un) |
set the dimension scales of a dataset. More... | |
string | psh5_load_reduced (string ANickName, string APathName, string AFileName, funcref reduction_func, string reduction_param, variable progress=defaultValue, variable nthreads=defaultValue) |
load and reduce the ScientaImage dataset of the first scan of a PShell data file. More... | |
string | psh5_load_dataset_reduced (variable fileID, string scanpath, string datasetname, funcref reduction_func, string reduction_param, variable progress=defaultValue, variable nthreads=defaultValue) |
load a reduced dataset from the open PShell HDF5 file. More... | |
static threadsafe variable | reduce_slab_worker (funcref reduction_func) |
static threadsafe wave | reduce_slab_image (wave slabdata, wave image, funcref reduction_func, string reduction_param) |
string | psh5_load_info (string APathName, string AFileName) |
load descriptive info from a PShell data file. More... | |
string | psh5_load_scan_info (variable fileID, string scanpath) |
load descriptive info from a PShell scan. More... | |
static string | twave2list (wave wt, string sep) |
convert text wave to list. More... | |
static string | wave2list (wave w, string format, string sep) |
convert numeric wave to list. More... | |
-Variables | |
const string | kEnergyDimLabel = "energy" |
Dimension label for the energy dispersive dimension of multi-dimensional datasets. More... | |
const string | kAngleDimLabel = "angle" |
Dimension label for the angle dispersive dimension of multi-dimensional datasets. More... | |
const string | kScanDimLabel = "scan" |
Dimension label for the scan dimension of multi-dimensional datasets. More... | |
const string | kDataDimLabel = "data" |
Dimension label for the data dimension. More... | |
const string | kPreviewDatasets = "ScientaImage;ScientaSpectrum;ImageAngleDistribution;ImageEnergyDistribution;Counts;SampleCurrent;" |
List of preferred datasets to load for preview. More... | |
const string | kScientaScalingDatasets = "LensMode;ScientaChannelBegin;ScientaChannelEnd;ScientaSliceBegin;ScientaSliceEnd;" |
List of datasets that must be loaded to determine the axis scaling of a Scienta image. More... | |
const string | kTransposedDatasets = "ScientaImage;" |
List of datasets that should be transposed upon loading. More... | |
const variable | kDetectorSensitivity = 4 |
multiply scienta detector intensity by this value to get actual counts. More... | |
import data from PShell
-HDF5 file import from the PShell data acquisition program. the main import functions are:
-the following helper functions are also needed:
-Definition in file pearl-pshell-import.ipf.
-
-
|
- -static | -
find the attributes data folder
-this is the :attr folder.
- -Definition at line 1458 of file pearl-pshell-import.ipf.
- -
-
|
- -static | -
Definition at line 1546 of file pearl-pshell-import.ipf.
- -
-
|
- -static | -
find the scan folder
-the scan folder is the one that contains the :attr folder the data and scan folders may refer to the same folder.
- -Definition at line 1441 of file pearl-pshell-import.ipf.
- -variable ps_detect_scale | -( | -wave | -ax, | -
- | - | wave | -lo, | -
- | - | wave | -hi, | -
- | - | wave | -un | -
- | ) | -- |
detect the dimension scales from attributes.
-the function checks the data , scan and attributes folders for scan parameters. the results are written to the provided waves. the function is normally called by ps_scale_datasets() but can also be used independently.
-the current datafolder must be the data or the scan folder. the data folder contains the waves that are to be scaled. the scan folder contains the scan positions and the :attr folder.
-the provided waves are redimensioned by the function, and dimension labels are set. the scale parameters can then be extracted by keyword, e.g.,
lo[%energy]
analyser energy dimension. lo[%angle]
analyser angle dimension. lo[%scan]
scan dimension. lo[%data]
data dimension.the function tries to read the following waves, in the data, scan, and attributes folders, where the first folder in the list takes precedence. it may fall back to more or less reasonable default values if no data is not found.
LensMode
ScientaChannelBegin
ScientaChannelEnd
ScientaSliceBegin
ScientaSliceEnd
ScanWritables
ScanWritables[0]
ax | text wave to receive the axis labels. |
lo | wave to receive the lower limits. |
hi | wave to receive the upper limits. |
un | text wave to receive the unit labels. |
Definition at line 1603 of file pearl-pshell-import.ipf.
- -variable ps_scale_dataset | -( | -wave | -data | ) | -- |
set the dimension scales of a loaded PShell Scienta dataset according to attributes.
-the current datafolder must contain the :attr folder. the data wave can be in the current folder or a sub-folder.
-the dimension labels of the dataset waves must have been set correctly, e.g. by ps_set_dimlabels(). this is implicitly done by the high-level load functions.
-the function is useful if a single dataset is loaded and scaled. if multiple datasets are loaded, ps_scale_datasets() is slightly more efficient.
-data | data wave to be scaled. dimension labels (index -1) must be set correctly, cf. ps_set_dimlabels(). |
Definition at line 1532 of file pearl-pshell-import.ipf.
- -variable ps_scale_dataset_2 | -( | -wave | -data, | -
- | - | wave | -ax, | -
- | - | wave | -lo, | -
- | - | wave | -hi, | -
- | - | wave | -un | -
- | ) | -- |
set the dimension scales of a dataset.
-the function is normally called by ps_scale_datasets() but can also be used independently. the limits and units must be given as function arguments with proper dimension labels.
-the provided limit and unit waves must have dimension labels matching the -1 index dimension labels of the data wave, such as set by the ps_detect_scale() function. the scale parameters are extracted by keyword, e.g.,
lo[%energy]
analyser energy dimension. lo[%angle]
analyser angle dimension. lo[%scan]
scan dimension. lo[%data]
data dimension.if the data dimension labels and units are at their defaults ("value" and "arb.", respectively), the function tries to read them from the existing wave note ("AxisLabelD" and "AxisUnitD"), or based on the wave name if the name is one of the known measurement variables: "ScientaImage", "ImageAngleDistribution", "ScientaAngleDistribution", "ScientaSpectrum", "ImageEnergyDistribution", "ScientaEnergyDistribution", "SampleCurrent", "RefCurrent", "AuxCurrent", "MachineCurrent".
-data | data wave to be scaled. dimension labels (index -1) must be set to match the limit waves. |
ax | axis labels. the axis labels are written to the wave note in the format AxisLabel%s=%s where X , Y , Z , D is substituted for the first place holder and the label for the second one. |
lo | lower limits. the lower limits are applied using the SetScale operation. |
hi | upper limits. the upper limits are applied using the SetScale operation. |
un | unit labels. the unit labels are applied using the SetScale operation. |
Definition at line 1763 of file pearl-pshell-import.ipf.
- -variable ps_scale_datasets | -( | -) | -- |
set the dimension scales of loaded PShell Scienta datasets according to attributes.
-datasets listed in the ScanReadables waves are scaled according to the attribute waves in the data, scan, and attributes folders, whichever is found first.
-the current datafolder must contain the ScanReadables wave and the :attr folder. the ScanReadables text wave contains names of the waves to scale. wave names can include a relative path to a sub-folder. the path separator is "/".
-the dimension labels of the dataset waves must have been set correctly, e.g. by ps_set_dimlabels(). this is implicitly done by the high-level load functions.
-Definition at line 1486 of file pearl-pshell-import.ipf.
- -variable ps_set_dimlabels | -( | -wave | -data | ) | -- |
set dimension labels according to the axis type
-this function asserts a particular ordering of dimensions types based on the name of the wave for ScientaImage, ScientaSpectrum, ImageAngleDistribution, ImageEnergyDistribution. all other waves must be one-dimensional, and the dimension must be the scan dimension.
-dimension labels are required by scaling functions.
-data | data wave as loaded from PShell file |
Definition at line 1365 of file pearl-pshell-import.ipf.
- -variable ps_set_dimlabels2 | -( | -wave | -data, | -
- | - | string | -name | -
- | ) | -- |
set dimension labels according to the axis type
-same as ps_set_dimlabels() except that the dimension labels are set according to a separate name argument instead of the wave name.
-data | data wave as loaded from PShell file. |
name | original name of the dataset in the PShell file. |
Definition at line 1384 of file pearl-pshell-import.ipf.
- -variable psh5_close_file | -( | -variable | -fileID | ) | -- |
close a HDF5 file opened by psh5_open_file.
-this function just closes the HDF5 file. no change is made to the loaded data.
-fileID | ID of open HDF5 file from psh5_open_file(). |
Definition at line 139 of file pearl-pshell-import.ipf.
- -string psh5_list_scan_datasets | -( | -variable | -fileID, | -
- | - | string | -scanpath, | -
- | - | variable | -include_regions = defaultValue |
-
- | ) | -- |
list datasets of a PShell scan group.
-the function returns a list of all datasets of the selected scan. this does not include datasets from the attributes sub-group.
-fileID | ID of open HDF5 file from psh5_open_file(). |
scanpath | path to the scan group in the HDF5 file, e.g. "/scan 1". |
Definition at line 439 of file pearl-pshell-import.ipf.
- -string psh5_list_scan_regions | -( | -variable | -fileID, | -
- | - | string | -scanpath | -
- | ) | -- |
list regions of a PShell scan group.
-the function returns a list of all region groups of the selected scan.
-fileID | ID of open HDF5 file from psh5_open_file(). |
scanpath | path to the scan group in the HDF5 file, e.g. "/scan 1". |
Definition at line 480 of file pearl-pshell-import.ipf.
- -string psh5_list_scans | -( | -variable | -fileID | ) | -- |
list scan groups of a PShell data file.
-the function returns a list of all top-level groups whose name starts with "scan".
-fileID | ID of open HDF5 file from psh5_open_file(). |
Definition at line 404 of file pearl-pshell-import.ipf.
- -string psh5_load_complete | -( | -string | -ANickName, | -
- | - | string | -APathName, | -
- | - | string | -AFileName, | -
- | - | variable | -load_data = defaultValue , |
-
- | - | variable | -load_attr = defaultValue |
-
- | ) | -- |
load everything from a PShell data file.
-ANickName | destination folder name (top level under root) |
APathName | igor symbolic path name. can be empty if the path is specified in FileName or a dialog box should be displayed |
AFileName | if empty a dialog box shows up |
load_data | select whether datasets (positioners and detectors) are loaded.
|
load_attr | select whether attributes (auxiliary device readbacks) are loaded. for proper wave scaling, the attributes must be loaded.
|
Definition at line 169 of file pearl-pshell-import.ipf.
- -string psh5_load_dataset | -( | -variable | -fileID, | -
- | - | string | -scanpath, | -
- | - | string | -datasetname, | -
- | - | variable | -set_scale = defaultValue |
-
- | ) | -- |
load a dataset from an open PShell HDF5 file.
-if the dataset has a maximum of two dimensions, the function loads it at once. if it has more than two dimension, the function calls psh5_load_dataset_slabs() to load the data slab by slab.
-set_scale
option is selected (default). the attributes must be loaded by psh5_load_scan_meta() and psh5_load_scan_attrs() (attr_sets=2).the dataset is loaded into the current data folder unless datasetname contains a region specifier. in the latter case, the dataset is loaded into sub-folder with the name of the region. the function returns from the original data folder.
-fileID | ID of open HDF5 file from psh5_open_file(). |
scanpath | path to the scan group in the HDF5 file, e.g. "/scan 1". |
datasetname | name of the dataset. the name of the loaded wave is a cleaned up version of the dataset name. the name can include the region name as a relative path, e.g. "region1/ScientaSpectrum". in this case, the dataset is loaded into a sub-folder named "region1". |
set_scale | by default, the function tries to set the wave scaling if the attributes have been loaded. if multiple datasets are loaded from a file, it is more efficient to set the scaling of all loaded datasets at the end by calling ps_scale_datasets().
|
Definition at line 688 of file pearl-pshell-import.ipf.
- -variable psh5_load_dataset_meta | -( | -variable | -fileID, | -
- | - | string | -datapath, | -
- | - | string | -datasetname, | -
- | - | wave | -datawave | -
- | ) | -- |
load metadata of a PShell dataset.
-"metadata" are the HDF5 attributes attached to the scan dataset.
-data is added to the wave note.
-fileID | ID of open HDF5 file from psh5_open_file(). |
datapath | path to the containing group in the HDF5 file. path separator is the slash "/". |
datasetname | name of the dataset. may include relative path. |
datawave | metadata is added to the wave note of this wave. |
Definition at line 1073 of file pearl-pshell-import.ipf.
- -string psh5_load_dataset_reduced | -( | -variable | -fileID, | -
- | - | string | -scanpath, | -
- | - | string | -datasetname, | -
- | - | funcref | -reduction_func, | -
- | - | string | -reduction_param, | -
- | - | variable | -progress = defaultValue , |
-
- | - | variable | -nthreads = defaultValue |
-
- | ) | -- |
load a reduced dataset from the open PShell HDF5 file.
-the function loads the dataset image by image using the hyperslab option and applies a custom reduction function to each image. the results from the reduction function are written to the ReducedData1
, ReducedData2
, etc. waves. the raw data are discarded.
by default, the reduction function is called in separate threads to reduce the total loading time. (see the global variable psh5_perf_secs which reports the total run time of the function.) the effect varies depending on the balance between file loading (image size) and data processing (complexity of the reduction function). for debugging the reduction function, multi-threading can be disabled.
-if the reduction function requires the image waves to be scaled properly, the attributes must have been loaded by psh5_load_scan_attrs() before. in this case, the scales of the result waves are also set by the function. otherwise, the results can also be scaled by ps_scale_dataset() later.
-fileID | ID of open HDF5 file from psh5_open_file(). |
scanpath | path to scan group in the HDF5 file. |
datasetname | name of the dataset. this must currently be "ScientaImage", other data is not supported. the name of the loaded wave is a cleaned up version of the dataset name. the name can include the region name as a relative path, e.g. "region1/ScientaImage". in this case, the dataset is loaded into a sub-folder named "region1". |
reduction_func | custom data reduction function. this can be any user-defined function which has the same parameters as adh5_default_reduction. some reduction functions are predefined in the PearlScientaPreprocess module. |
reduction_param | parameter string for the reduction function. |
progress | progress window.
|
nthreads |
|
ReducedData1
, ReducedData2
, etc. if successful. auxiliary waves, scan positions, attributes are loaded but not listed in the string. empty string if an error occurred. error messages are printed to the history.Definition at line 2022 of file pearl-pshell-import.ipf.
- -string psh5_load_dataset_slab | -( | -variable | -fileID, | -
- | - | string | -datapath, | -
- | - | string | -datasetname, | -
- | - | variable | -dim2start, | -
- | - | variable | -dim2count, | -
- | - | variable | -dim3start, | -
- | - | variable | -dim3count | -
- | ) | -- |
load a single image from the open PShell data file.
-the function can average over a region in the extra dimensions.
-fileID | ID of open HDF5 file from psh5_open_file(). |
datapath | path to the containing group in the HDF5 file. path separator is the slash "/". |
dataset | name of the dataset. also defines the name of the loaded wave. |
dim2start | 2nd dimension coordinate of the first image set to 0 if dimension may not be present |
dim2count | number of subsequent images to average set to 1 if dimension may not be present |
dim3start | 3rd dimension coordinate of the first image set to 0 if dimension may not be present |
dim3count | number of subsequent images to average set to 1 if dimension may not be present |
Definition at line 1266 of file pearl-pshell-import.ipf.
- -string psh5_load_dataset_slabs | -( | -variable | -fileID, | -
- | - | string | -datapath, | -
- | - | string | -datasetname, | -
- | - | variable | -progress = defaultValue |
-
- | ) | -- |
load a dataset slab-wise from the open PShell HDF5 file.
-the function loads the dataset image by image using the hyperslab option.
-fileID | ID of open HDF5 file from psh5_open_file(). |
datapath | path to the containing group in the HDF5 file. path separator is the slash "/". |
dataset | name of the dataset. also defines the name of the loaded wave. |
progress | select whether a progress window is displayed during the process.
|
Definition at line 1130 of file pearl-pshell-import.ipf.
- -string psh5_load_info | -( | -string | -APathName, | -
- | - | string | -AFileName | -
- | ) | -- |
load descriptive info from a PShell data file.
-the info string lists the following information for each scan contained in the file:
APathName | igor symbolic path name. can be empty if the path is specified in AFileName or a dialog box should be displayed |
AFileName | if empty a dialog box shows up |
Definition at line 2349 of file pearl-pshell-import.ipf.
- -string psh5_load_preview | -( | -string | -APathName, | -
- | - | string | -AFileName, | -
- | - | variable | -load_data = defaultValue , |
-
- | - | variable | -load_attr = defaultValue , |
-
- | - | string | -pref_scans = defaultValue , |
-
- | - | string | -pref_datasets = defaultValue |
-
- | ) | -- |
load a preview image from a PShell data file.
-the data wave is loaded into the current data folder. attributes are loaded into the attr subfolder. existing waves in attr are deleted.
-APathName | igor symbolic path name. can be empty if the path is specified in FileName or a dialog box should be displayed |
AFileName | if empty a dialog box shows up |
load_data | 1 (default): load data; 0: do not load data |
load_attr | 1 (default): load attributes; 0: do not load attributes note: for correct scaling of the image, the attributes need to be loaded |
pref_scans | semicolon-separated list of preferred scans. the items of the list are match strings for the Igor StringMatch function. the first matching scan (i.e. top-level HDF5 group with a matching name) is loaded from the file. if no match is found, the first scan is loaded. |
pref_datasets | semicolon-separated list of preferred datasets. the items of the list are match strings for the Igor StringMatch function. the first matching dataset is loaded from the file. if no match is found, the first dataset listed in the file is loaded. |
Definition at line 250 of file pearl-pshell-import.ipf.
- -string psh5_load_reduced | -( | -string | -ANickName, | -
- | - | string | -APathName, | -
- | - | string | -AFileName, | -
- | - | funcref | -reduction_func, | -
- | - | string | -reduction_param, | -
- | - | variable | -progress = defaultValue , |
-
- | - | variable | -nthreads = defaultValue |
-
- | ) | -- |
load and reduce the ScientaImage dataset of the first scan of a PShell data file.
-the resulting dataset is reduced in one image dimension by a user-defined reduction function, e.g. by region-of-interest integration, curve fitting, etc. cf. adh5_default_reduction for further details.
-the function loads the dataset image by image using the hyperslab option and applies a custom reduction function to each image. the results from the reduction function are composed into one result wave. the raw data are discarded.
-if the data is from the electron analyser driver and some special attributes are included, the function will set the scales of the image dimensions.
-by default, the reduction function is called in separate threads to reduce the total loading time. (see the global variable psh5_perf_secs which reports the total run time of the function.) the effect varies depending on the balance between file loading (image size) and data processing (complexity of the reduction function). for debugging the reduction function, multi-threading can be disabled.
-ANickName | destination folder name (top level under root). |
APathName | igor symbolic path name. can be empty if the path is specified in FileName or a dialog box should be displayed. |
AFileName | if empty a dialog box shows up. |
reduction_func | custom data reduction function. this can be any user-defined function which has the same parameters as adh5_default_reduction. some reduction functions are predefined in the PearlScientaPreprocess module. |
reduction_param | parameter string for the reduction function. |
progress | progress window.
|
nthreads |
|
ReducedData1
, ReducedData2
, etc. if successful. auxiliary waves, scan positions, attributes are loaded but not listed in the string. empty string if an error occurred. error messages are printed to the history.Definition at line 1893 of file pearl-pshell-import.ipf.
- -string psh5_load_scan_attrs | -( | -variable | -fileID, | -
- | - | string | -scanpath, | -
- | - | variable | -attr_sets = defaultValue |
-
- | ) | -- |
load attributes of a PShell scan group.
-"attributes" are the auxiliary data inside the attrs group. do not confuse with HDF5 attributes! HDF5 attributes are loaded by the psh5_load_scan_meta() function.
-data is loaded into the current data folder. this should normally be the :attr
folder inside the respective scan folder.
fileID | ID of open HDF5 file from psh5_open_file(). |
scanpath | path to the scan group in the HDF5 file, e.g. "/scan 1". |
attr_sets | specify the attribute sets to be loaded. this value can be an arithmetic OR of the following constants. by default, all attributes are loaded.
|
Definition at line 553 of file pearl-pshell-import.ipf.
- -string psh5_load_scan_complete | -( | -variable | -fileID, | -
- | - | string | -scanpath, | -
- | - | variable | -load_data = defaultValue , |
-
- | - | variable | -load_attr = defaultValue |
-
- | ) | -- |
load all data of a selected scan from a PShell data file.
-data is loaded into the current data folder. attribute datasets are loaded into sub-folder attr
. region datasets are loaded into region sub-folders. existing data, if present, is overwritten.
fileID | ID of open HDF5 file from psh5_open_file(). |
scanpath | path to the scan group in the HDF5 file, e.g. "/scan 1". |
load_data | select whether datasets (positioners and detectors) are loaded.
|
load_attr | select whether attributes (auxiliary device readbacks) are loaded. for proper wave scaling, the attributes must be loaded.
|
Definition at line 360 of file pearl-pshell-import.ipf.
- -string psh5_load_scan_data | -( | -variable | -fileID, | -
- | - | string | -scanpath | -
- | ) | -- |
load all datasets of a PShell scan group.
-data is loaded into the current data folder. region datasets are loaded into the respective region sub-folders.
-this function does not scale the datasets. call ps_scale_datasets() separately.
-fileID | ID of open HDF5 file from psh5_open_file(). |
scanpath | path to the scan group in the HDF5 file, e.g. "/scan 1". |
Definition at line 513 of file pearl-pshell-import.ipf.
- -string psh5_load_scan_info | -( | -variable | -fileID, | -
- | - | string | -scanpath | -
- | ) | -- |
load descriptive info from a PShell scan.
-the info string contains up to three lines which are made up of the following information:
fileID | ID of open HDF5 file from psh5_open_file(). |
scanpath | path to scan group in the HDF5 file. |
Definition at line 2396 of file pearl-pshell-import.ipf.
- -string psh5_load_scan_meta | -( | -variable | -fileID, | -
- | - | string | -scanpath | -
- | ) | -- |
load metadata of a PShell scan group.
-metadata are the HDF5 attributes attached to the scan group. the following attributes are loaded. the respective wave names under Igor are given in parentheses.
-if they are missing in the file, ScanDimensions
and ScanReadables
are set to default values assuming the file contains a single spectrum.
data is loaded into the current data folder.
-fileID | ID of open HDF5 file from psh5_open_file(). |
scanpath | path to the scan group in the HDF5 file, e.g. "/scan 1". |
Definition at line 621 of file pearl-pshell-import.ipf.
- -string psh5_load_scan_preview | -( | -variable | -fileID, | -
- | - | string | -scanpath, | -
- | - | variable | -set_scale = defaultValue , |
-
- | - | string | -pref_datasets = defaultValue |
-
- | ) | -- |
load a preview dataset from an open PShell HDF5 file.
-if the dataset has a maximum of two dimensions, the function loads it at once. if it has more than two dimension, the function selects and loads one two-dimensional slab.
-fileID | ID of open HDF5 file from psh5_open_file(). |
scanpath | path to the scan group in the HDF5 file, e.g. "/scan 1". |
set_scale | by default, the function tries to set the wave scaling if the attributes have been loaded. if multiple datasets are loaded from a file, it is more efficient to set the scaling of all loaded datasets at the end by calling ps_scale_datasets().
|
pref_datasets | semicolon-separated list of preferred datasets. the items of the list are match strings for the Igor StringMatch function. the first matching dataset is loaded from the file. if no match is found, the first dataset listed in the file is loaded. if empty, a hard-coded default preference list is used. |
Definition at line 822 of file pearl-pshell-import.ipf.
- -string psh5_load_scan_section | -( | -variable | -fileID, | -
- | - | string | -scanpath, | -
- | - | variable | -dim, | -
- | - | variable | -set_scale = defaultValue , |
-
- | - | string | -pref_datasets = defaultValue |
-
- | ) | -- |
load a longitudinal section of a scan from an open PShell HDF5 file.
-the dataset must have three dimensions.
-fileID | ID of open HDF5 file from psh5_open_file(). |
scanpath | path to the scan group in the HDF5 file, e.g. "/scan 1". |
dim | reserved, must be 0. |
set_scale | by default, the function tries to set the wave scaling if the attributes have been loaded. if multiple datasets are loaded from a file, it is more efficient to set the scaling of all loaded datasets at the end by calling ps_scale_datasets().
|
pref_datasets | semicolon-separated list of preferred datasets. the items of the list are match strings for the Igor StringMatch function. the first matching dataset is loaded from the file. if no match is found, the first dataset listed in the file is loaded. if empty, a hard-coded default preference list is used. |
Definition at line 935 of file pearl-pshell-import.ipf.
- -variable psh5_open_file | -( | -string | -ANickName, | -
- | - | string | -APathName, | -
- | - | string | -AFileName | -
- | ) | -- |
open a HDF5 file created by the PShell data acquisition program and prepare the data folder.
-the function opens a specified or interactively selected HDF5 file, creates a data folder $ANickName
under root, and changes to the new data folder.
the file must be closed by psh5_close_file() after use.
-ANickName | destination folder name (top level under root). |
APathName | igor symbolic path name. can be empty if the path is specified in FileName or a dialog box should be displayed |
AFileName | if empty a dialog box shows up |
Definition at line 109 of file pearl-pshell-import.ipf.
- -
-
|
- -static | -
Definition at line 2323 of file pearl-pshell-import.ipf.
- -
-
|
- -static | -
Definition at line 2284 of file pearl-pshell-import.ipf.
- -
-
|
- -static | -
select the preferred dataset from a list of available datasets.
-file_datasets | semicolon-separated list of datasets that are available in the file. the items may include a path separated by slashes "/". only the last component of the path is checked. |
pref_datasets | semicolon-separated list of preferred datasets. the items of the list are match strings for the Igor StringMatch function. the first matching dataset is loaded from the file. if no match is found, the first file dataset is selected. |
Definition at line 760 of file pearl-pshell-import.ipf.
- -
-
|
- -static | -
convert text wave to list.
- -Definition at line 2455 of file pearl-pshell-import.ipf.
- -
-
|
- -static | -
convert numeric wave to list.
- -Definition at line 2472 of file pearl-pshell-import.ipf.
- -const string kAngleDimLabel = "angle" | -
Dimension label for the angle dispersive dimension of multi-dimensional datasets.
- -Definition at line 67 of file pearl-pshell-import.ipf.
- -const string kDataDimLabel = "data" | -
Dimension label for the data dimension.
-This label may be used to store the parameters for the setscale d
operation.
Definition at line 74 of file pearl-pshell-import.ipf.
- -const variable kDetectorSensitivity = 4 | -
multiply scienta detector intensity by this value to get actual counts.
- -Definition at line 86 of file pearl-pshell-import.ipf.
- -const string kEnergyDimLabel = "energy" | -
Dimension label for the energy dispersive dimension of multi-dimensional datasets.
- -Definition at line 64 of file pearl-pshell-import.ipf.
- -const string kPreviewDatasets = "ScientaImage;ScientaSpectrum;ImageAngleDistribution;ImageEnergyDistribution;Counts;SampleCurrent;" | -
List of preferred datasets to load for preview.
- -Definition at line 77 of file pearl-pshell-import.ipf.
- -const string kScanDimLabel = "scan" | -
Dimension label for the scan dimension of multi-dimensional datasets.
- -Definition at line 70 of file pearl-pshell-import.ipf.
- -const string kScientaScalingDatasets = "LensMode;ScientaChannelBegin;ScientaChannelEnd;ScientaSliceBegin;ScientaSliceEnd;" | -
List of datasets that must be loaded to determine the axis scaling of a Scienta image.
- -Definition at line 80 of file pearl-pshell-import.ipf.
- -const string kTransposedDatasets = "ScientaImage;" | -
List of datasets that should be transposed upon loading.
- -Definition at line 83 of file pearl-pshell-import.ipf.
- -preprocessing functions for Scienta detector images. -More...
-#include "pearl-fitfuncs"
Go to the source code of this file.
--Namespaces | |
PearlScientaPreprocess | |
preprocessing functions for Scienta detector images. | |
-Functions | |
variable | prompt_int_linbg_reduction (string *param) |
prompt the user for integrate on linear background reduction parameters. More... | |
string | capture_int_linbg_cursors () |
this function is for testing only, until we implement a proper interface More... | |
string | csr_int_linbg_reduction (string win) |
set reduction parameters from cursors in a graph. More... | |
threadsafe wave | int_linbg_reduction (wave source, string *param) |
linear-background subtracted integration reduction function. More... | |
variable | prompt_int_quadbg_reduction (string *param) |
threadsafe wave | int_quadbg_reduction (wave source, string *param) |
integrate peak area minus a quadratic background More... | |
variable | prompt_redim_linbg_reduction (string *param) |
parameter dialog for the redim_linbg_reduction() function More... | |
threadsafe wave | redim_linbg_reduction (wave source, string *param) |
linear background reduction function for incorrectly dimensioned scienta image More... | |
variable | test_gauss4_reduction (wave image) |
apply the gauss4_reduction function to a single image More... | |
variable | prompt_gauss4_reduction (string *param) |
prompt for the gauss4_reduction parameters More... | |
threadsafe wave | gauss4_reduction (wave source, string *param) |
fit horizontal cuts of an image with up to four gaussian peaks on a linear background More... | |
preprocessing functions for Scienta detector images.
-this procedure contains functions for data reduction and instrument-specific normalization.
-Definition in file pearl-scienta-preprocess.ipf.
-string capture_int_linbg_cursors | -( | -) | -- |
this function is for testing only, until we implement a proper interface
- -Definition at line 67 of file pearl-scienta-preprocess.ipf.
- -string csr_int_linbg_reduction | -( | -string | -win | ) | -- |
set reduction parameters from cursors in a graph.
-PRELIMINARY - function arguments may change
-sets reduction parameters from cursors in a graph. an even number of cursors (2 or more) must be set on the image. cursor names and order do not matter, except that the alphabetically first cursor which is attached to an image selects the image. the cursors mark the following positions, from innermost to outermost pair: 1) low and high limits of peak region. 2) peak-side boundary of lower and upper background region. 3) lower and upper cropping region.
- -Definition at line 89 of file pearl-scienta-preprocess.ipf.
- -threadsafe wave gauss4_reduction | -( | -wave | -source, | -
- | - | string * | -param | -
- | ) | -- |
fit horizontal cuts of an image with up to four gaussian peaks on a linear background
-the function fits each horizontal profile (EDC) with four gaussian peaks on a linear background. the position and width of the peaks is kept fixed according to input parameters. the peak amplitude is constrained to positive value.
-the width parameter is defined as in Igor's gauss curve fit function (standard deviation divided by the square root of two). the return value in dest1 is the integrated peak of one of the peaks. dest2 returns the corresponding error estimate.
-source | source wave. two-dimensional distribution of counts. for correct weighting and error estimation it is important that the source wave contains actual counts (Poisson statistics). |
param | (in, out) semicolon-separated key=value list of processing parameters. this is a pass-by-reference argument. the following parameters are required. position, width and limit parameters are on the x (energy) scale.
|
Definition at line 672 of file pearl-scienta-preprocess.ipf.
- -threadsafe wave int_linbg_reduction | -( | -wave | -source, | -
- | - | string * | -param | -
- | ) | -- |
linear-background subtracted integration reduction function.
-data reduction function for adh5_load_reduced_detector. cf. adh5_default_reduction for an explanation of reduction functions.
-this function calculates the average pixel value of each angular slice in one center and two background intervals. a background value is calculated at the center position by linear interpolation from the two background values. returns the center minus linear background in dest1. returns the Poisson one-sigma error in dest2.
-typical values (peak centered on detector, FWHM ~ 20 % of image) Lcrop=0.11;Hcrop=0.11;Lsize=0.2;Hsize=0.2;Cpos=0.5;Csize=0.2
-source | scienta detector image, energy axis along X, angle axis along Y. two-dimensional intensity distribution (image). the scales are carried over to the result waves. |
param | parameters in a key1=value1;key2=value2;... list. all region parameters are relative to the image size (0...1).
|
Definition at line 214 of file pearl-scienta-preprocess.ipf.
- -threadsafe wave int_quadbg_reduction | -( | -wave | -source, | -
- | - | string * | -param | -
- | ) | -- |
integrate peak area minus a quadratic background
-data reduction function for adh5_load_reduced_detector. cf. adh5_default_reduction for an explanation of reduction functions.
-this function calculates the average pixel value of each angular slice in one center and two background intervals. a background value is calculated at the center position by linear interpolation from the two background values. returns the center minus linear background in dest1. returns the Poisson one-sigma error in dest2.
-typical values (peak centered on detector, FWHM ~ 20 % of image) Lcrop=0.11;Hcrop=0.11;Lsize=0.2;Hsize=0.2;Cpos=0.5;Csize=0.2
-source | scienta detector image, energy axis along X, angle axis along Y. two-dimensional intensity distribution (image). the scales are carried over to the result waves. |
param | parameters in a key1=value1;key2=value2;... list. all region parameters are relative to the image size (0...1).
|
Definition at line 367 of file pearl-scienta-preprocess.ipf.
- -variable prompt_gauss4_reduction | -( | -string * | -param | ) | -- |
prompt for the gauss4_reduction parameters
- -Definition at line 580 of file pearl-scienta-preprocess.ipf.
- -variable prompt_int_linbg_reduction | -( | -string * | -param | ) | -- |
prompt the user for integrate on linear background reduction parameters.
- -Definition at line 35 of file pearl-scienta-preprocess.ipf.
- -variable prompt_int_quadbg_reduction | -( | -string * | -param | ) | -- |
Definition at line 305 of file pearl-scienta-preprocess.ipf.
- -variable prompt_redim_linbg_reduction | -( | -string * | -param | ) | -- |
parameter dialog for the redim_linbg_reduction() function
-param | parameter string in a key1=value1;key2=value2;... list. the parameter string is passed by reference. see redim_linbg_reduction() for a description of parameters. |
Definition at line 463 of file pearl-scienta-preprocess.ipf.
- -threadsafe wave redim_linbg_reduction | -( | -wave | -source, | -
- | - | string * | -param | -
- | ) | -- |
linear background reduction function for incorrectly dimensioned scienta image
-if the energy step size does not divide the energy range to an integer number, the scienta image is exported with the wrong array size. this can be fixed by redimensioning the array.
-the current implementation works in the case where dimension 0 needs to be incremented. the function may be generalized to dimension 1 and/or decrementing by additional parameters. it is not known yet whether a generalization is needed or whether it can cover all cases.
-background subtraction and peak integration is the same as by the int_linbg_reduction() function.
-source | source wave Scienta detector image, energy axis along X, angle axis along Y |
param | parameter string in a key1=value1;key2=value2;... list. the parameter string is passed by reference. |
all region parameters are relative to the image size (0...1).
typical values (peak centered on detector, FWHM ~ 20 % of image) Lcrop=0.11;Hcrop=0.11;Lsize=0.2;Hsize=0.2;Cpos=0.5;Csize=0.2
-Definition at line 526 of file pearl-scienta-preprocess.ipf.
- -variable test_gauss4_reduction | -( | -wave | -image | ) | -- |
apply the gauss4_reduction function to a single image
-useful for testing or manual processing. to debug, (temporarily) remove the threadsafe attribute from the gauss2_reduction function.
- -Definition at line 546 of file pearl-scienta-preprocess.ipf.
- -#include "pearl-gui-tools"
Go to the source code of this file.
--Functions | |
variable | DefaultWaveIterator (wave w, string *sdata) |
variable | AppendToGraphIterator (wave w, string *sdata) |
variable | SumWavesIterator (wave w, string *sdata) |
string | IterateWaves (string matchStr, funcref iterator, string sdata) |
variable | DefaultFolderIterator (dfref df, string *sdata) |
string | IterateDataFolders (string matchStr, funcref iterator, string sdata, string progress_title=defaultValue) |
variable AppendToGraphIterator | -( | -wave | -w, | -
- | - | string * | -sdata | -
- | ) | -- |
Definition at line 26 of file pearl-tools.ipf.
- -variable DefaultFolderIterator | -( | -dfref | -df, | -
- | - | string * | -sdata | -
- | ) | -- |
Definition at line 65 of file pearl-tools.ipf.
- -variable DefaultWaveIterator | -( | -wave | -w, | -
- | - | string * | -sdata | -
- | ) | -- |
Definition at line 18 of file pearl-tools.ipf.
- -string IterateDataFolders | -( | -string | -matchStr, | -
- | - | funcref | -iterator, | -
- | - | string | -sdata, | -
- | - | string | -progress_title = defaultValue |
-
- | ) | -- |
Definition at line 79 of file pearl-tools.ipf.
- -string IterateWaves | -( | -string | -matchStr, | -
- | - | funcref | -iterator, | -
- | - | string | -sdata | -
- | ) | -- |
Definition at line 45 of file pearl-tools.ipf.
- -variable SumWavesIterator | -( | -wave | -w, | -
- | - | string * | -sdata | -
- | ) | -- |
Definition at line 34 of file pearl-tools.ipf.
- -Go to the source code of this file.
--Functions | |
variable | rotate2d_x (variable xx, variable yy, variable angle) |
variable | rotate2d_y (variable xx, variable yy, variable angle) |
wave | create_rotation_matrix_free () |
wave | set_rotation_x (wave matrix, variable angle) |
wave | set_rotation_y (wave matrix, variable angle) |
wave | set_rotation_z (wave matrix, variable angle) |
variable | rotate_x_wave (wave inout, variable angle) |
variable | rotate_y_wave (wave inout, variable angle) |
variable | rotate_z_wave (wave inout, variable angle) |
wave create_rotation_matrix_free | -( | -) | -- |
Definition at line 26 of file pearl-vector-operations.ipf.
- -variable rotate2d_x | -( | -variable | -xx, | -
- | - | variable | -yy, | -
- | - | variable | -angle | -
- | ) | -- |
Definition at line 10 of file pearl-vector-operations.ipf.
- -variable rotate2d_y | -( | -variable | -xx, | -
- | - | variable | -yy, | -
- | - | variable | -angle | -
- | ) | -- |
Definition at line 18 of file pearl-vector-operations.ipf.
- -variable rotate_x_wave | -( | -wave | -inout, | -
- | - | variable | -angle | -
- | ) | -- |
Definition at line 83 of file pearl-vector-operations.ipf.
- -variable rotate_y_wave | -( | -wave | -inout, | -
- | - | variable | -angle | -
- | ) | -- |
Definition at line 101 of file pearl-vector-operations.ipf.
- -variable rotate_z_wave | -( | -wave | -inout, | -
- | - | variable | -angle | -
- | ) | -- |
Definition at line 119 of file pearl-vector-operations.ipf.
- -wave set_rotation_x | -( | -wave | -matrix, | -
- | - | variable | -angle | -
- | ) | -- |
Definition at line 35 of file pearl-vector-operations.ipf.
- -wave set_rotation_y | -( | -wave | -matrix, | -
- | - | variable | -angle | -
- | ) | -- |
Definition at line 51 of file pearl-vector-operations.ipf.
- -wave set_rotation_z | -( | -wave | -matrix, | -
- | - | variable | -angle | -
- | ) | -- |
Definition at line 67 of file pearl-vector-operations.ipf.
- -