ts_ids_components.particle_sizer package#
Submodules#
Module contents#
This module contains components for particle sizer IDSs.
Particle sizing#
Particle sizer instruments determine the size (and related properties) of particles suspended in a liquid or dispersed in air by measuring how they scatter light. These components are shared across particle sizer instruments from different vendors (e.g. Malvern Zetasizer, Wyatt DynaPro, Malvern Mastersizer), which report the same underlying quantities using different raw file formats and value conventions.
Four related light-scattering techniques are covered, selected per method via
ParticleSizerTechnique:
Dynamic Light Scattering (DLS) – sizes sub-micron particles from the Brownian-motion-driven fluctuations of the scattered intensity (the autocorrelation function).
Electrophoretic Light Scattering (ELS / Zeta) – determines zeta potential from the electrophoretic mobility of particles in an applied field.
Static Light Scattering (SLS) – determines molar mass from the time-averaged scattered intensity (DynaPro, measured simultaneously with DLS).
Laser Diffraction (LD) – sizes particles from sub-micron to millimetre from the angular scattering pattern of a laser.
Composing an IDS from these components#
These are building blocks, not a ready-made schema. A vendor-specific IDS
imports only the pieces its instrument needs and composes them – the same
convention used by the System
and plate reader MeasurementSetting components. The
Method and
Result base
classes therefore carry only the fields common to every technique; the
technique-specific blocks are added by inheriting from their nested mixin
classes. No combine-everything convenience class is provided – a consuming
IDS assembles exactly the blocks its instrument needs.
System and run components#
ParticleSizerSystem
extends the generic System
with serial number, software, firmware, and a list of attached
Accessory
objects (dispersion unit, autosampler, sample-prep chamber, etc.).
ParticleSizerRun
extends the generic Run with a
vendor record id, a comment, and a standardized start/stop/acquired
timestamp. Both carry a pk
(UUIDPrimaryKey) so a
consuming IDS can declare them as top-level arrays and link results back to
the specific system and run involved.
The samples array uses the generic Sample directly – the vendor IDS adds a pk
to it where results need to link to a specific well/sample via fk_sample
(e.g. plate-reader DLS instruments). No particle-sizer-specific Sample
subclass is provided, since it would add nothing beyond that pk.
Method components#
Method holds the
measurement conditions common to every technique – Temperature, dispersant
(Solvent),
particle optics (Particle), and Plate. Technique settings are added
by inheriting from Method.DynamicLightScattering (which carries
DLSMethodSettings, also used for
ELS/SLS) and/or Method.LaserDiffraction (which carries
LaserDiffractionMethodSettings); an
instrument supporting several techniques inherits from all the corresponding
nested classes.
Result components#
Result holds the
fields common to every result – the SizeDistribution results that DLS
and Laser Diffraction share, plus foreign keys back to the run, method,
sample, and originating curve. Technique-specific result blocks are added by
inheriting from Result.DynamicLightScattering (DLSResult),
Result.ElectrophoreticLightScattering (ELSResult),
Result.StaticLightScattering (SLSResult), and/or
Result.LaserDiffraction (LaserDiffractionResult) – the
consuming IDS inherits from only the blocks its instrument produces.
Curve components#
CurveFile is a
pointer to a Parquet file holding raw curve data (the DLS autocorrelation
function, the ELS phase/frequency trace, or the raw laser-diffraction
scattering pattern). A curve is always tied to its run and sample; a result
that was derived from a curve links to it via Result.fk_curve.
- Model Accessory[source]#
Bases:
IdsElementAn accessory or module attached to a particle sizer instrument – e.g. a dispersion unit (Malvern Mastersizer’s Hydro/Aero), an autosampler, a sample-prep chamber, or an additional detector channel.
A particle sizer can be equipped with more than one accessory, so
ParticleSizerSystemholds these as a list. Modeled as an object (rather than a bare serial-number string) so the serial number stays tied to the accessory it identifies and so additional accessory attributes can be captured as instruments report them. In some raw data (e.g. the Mastersizer CSV export) only the serial number is available, in which casenameis left unset.Show JSON schema
{ "description": "An accessory or module attached to a particle sizer instrument -- e.g. a\ndispersion unit (Malvern Mastersizer's Hydro/Aero), an autosampler, a\nsample-prep chamber, or an additional detector channel.\n\nA particle sizer can be equipped with more than one accessory, so\n:py:class:`ParticleSizerSystem` holds these as a list. Modeled as an\nobject (rather than a bare serial-number string) so the serial number\nstays tied to the accessory it identifies and so additional accessory\nattributes can be captured as instruments report them. In some raw data\n(e.g. the Mastersizer CSV export) only the serial number is available, in\nwhich case ``name`` is left unset.", "type": "object", "properties": { "name": { "description": "Name or type of the accessory, e.g. 'Hydro MV' or 'Aero S'. Unset when the raw data reports only the serial number.", "type": [ "string", "null" ] }, "serial_number": { "description": "Serial number of the accessory, as reported by the instrument.", "type": [ "string", "null" ] } }, "additionalProperties": false }
- Validators:
- Model AcquisitionQualityGate[source]#
Bases:
IdsElementA data quality gate/filter applied during DLS acquisition, used to accept or reject individual acquisitions before averaging.
Show JSON schema
{ "description": "A data quality gate/filter applied during DLS acquisition, used to accept\nor reject individual acquisitions before averaging.", "type": "object", "properties": { "file_key": { "description": "Vendor key identifying the gate in the raw file.", "type": [ "number", "null" ] }, "label": { "description": "Human-readable name of the quality gate.", "type": [ "string", "null" ] }, "threshold": { "description": "Threshold/condition applied by the gate, as reported by the instrument.", "type": [ "string", "null" ] }, "enabled": { "description": "Whether the gate is enabled (1) or disabled (0).", "type": [ "number", "null" ] } }, "additionalProperties": false }
- Validators:
- Model AdditionalStatistic[source]#
Bases:
IdsElementAn additional Dxx percentile beyond the standard D10/D50/D90.
Show JSON schema
{ "description": "An additional Dxx percentile beyond the standard D10/D50/D90.", "type": "object", "properties": { "name": { "description": "Name of the percentile, e.g. 'D[v,0.25]'.", "type": [ "string", "null" ] }, "value": { "description": "Numeric value of the percentile.", "type": [ "number", "null" ] }, "unit": { "description": "Unit of the value, e.g. 'Micrometer'.", "type": [ "string", "null" ] } }, "additionalProperties": false }
- Validators:
- Model CumulantFit[source]#
Bases:
IdsElementCumulant analysis fit parameters from the DLS autocorrelation function (ACF). Regularized NNLS deconvolution yields amplitude, decay time, and diffusion coefficient from the fitted ACF decay.
Show JSON schema
{ "description": "Cumulant analysis fit parameters from the DLS autocorrelation function\n(ACF). Regularized NNLS deconvolution yields amplitude, decay time, and\ndiffusion coefficient from the fitted ACF decay.", "type": "object", "properties": { "amplitude": { "$ref": "#/definitions/RawValueUnit", "description": "Fitted amplitude (intercept) of the ACF." }, "decay_time": { "$ref": "#/definitions/RawValueUnit", "description": "Characteristic decay time of the ACF." }, "diffusion_coefficient": { "$ref": "#/definitions/RawValueUnit", "description": "Translational diffusion coefficient from the fit." }, "radius": { "$ref": "#/definitions/RawValueUnit", "description": "Hydrodynamic radius from the fit." }, "molecular_weight": { "$ref": "#/definitions/RawValueUnit", "description": "Molecular weight estimated from the fit." }, "viscosity": { "$ref": "#/definitions/RawValueUnit", "description": "Viscosity used in the fit." }, "q": { "$ref": "#/definitions/RawValueUnit", "description": "Scattering vector magnitude used in the fit." }, "polydispersity": { "$ref": "#/definitions/RawValueUnit", "description": "Polydispersity from the fit." }, "polydispersity_index": { "$ref": "#/definitions/RawValueUnit", "description": "Polydispersity index from the fit." }, "polydispersity_percent": { "$ref": "#/definitions/RawValueUnit", "description": "Polydispersity expressed as a percentage." }, "baseline": { "$ref": "#/definitions/RawValueUnit", "description": "Fitted baseline of the ACF." }, "sos_error": { "$ref": "#/definitions/RawValueUnit", "description": "Sum-of-squares error of the fit." }, "lambda": { "$ref": "#/definitions/RawValueUnit", "description": "Regularization parameter used in the deconvolution." }, "sigma": { "$ref": "#/definitions/RawValueUnit", "description": "Standard deviation (width) parameter of the fit." }, "first_cumulant": { "$ref": "#/definitions/RawValueUnit", "description": "First cumulant (mean decay rate)." }, "second_cumulant": { "$ref": "#/definitions/RawValueUnit", "description": "Second cumulant (variance of the decay rate)." }, "measured_baseline": { "$ref": "#/definitions/RawValueUnit", "description": "Measured (as opposed to fitted) baseline." }, "fit_error": { "$ref": "#/definitions/RawValueUnit", "description": "Overall error metric of the fit." }, "order_of_fit": { "description": "Order of the cumulant polynomial fit.", "type": [ "number", "null" ] } }, "additionalProperties": false, "definitions": { "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" } } }
- Validators:
- field amplitude: RawValueUnit#
Fitted amplitude (intercept) of the ACF.
- field baseline: RawValueUnit#
Fitted baseline of the ACF.
- field decay_time: RawValueUnit#
Characteristic decay time of the ACF.
- field diffusion_coefficient: RawValueUnit#
Translational diffusion coefficient from the fit.
- field first_cumulant: RawValueUnit#
First cumulant (mean decay rate).
- field fit_error: RawValueUnit#
Overall error metric of the fit.
- field lambda_: RawValueUnit (alias 'lambda')#
Regularization parameter used in the deconvolution.
- field measured_baseline: RawValueUnit#
Measured (as opposed to fitted) baseline.
- field molecular_weight: RawValueUnit#
Molecular weight estimated from the fit.
- field polydispersity: RawValueUnit#
Polydispersity from the fit.
- field polydispersity_index: RawValueUnit#
Polydispersity index from the fit.
- field polydispersity_percent: RawValueUnit#
Polydispersity expressed as a percentage.
- field q: RawValueUnit#
Scattering vector magnitude used in the fit.
- field radius: RawValueUnit#
Hydrodynamic radius from the fit.
- field second_cumulant: RawValueUnit#
Second cumulant (variance of the decay rate).
- field sigma: RawValueUnit#
Standard deviation (width) parameter of the fit.
- field sos_error: RawValueUnit#
Sum-of-squares error of the fit.
- field viscosity: RawValueUnit#
Viscosity used in the fit.
- Model CurveFile[source]#
Bases:
IdsElementPointer to a Parquet file containing raw curve data (ACF, ELS time-series, etc.).
Show JSON schema
{ "description": "Pointer to a Parquet file containing raw curve data (ACF, ELS time-series, etc.).", "type": "object", "properties": { "pk": { "@primary_key": true, "description": "Primary key for this curve file.", "type": "string" }, "file_id": { "description": "Identifier of the Parquet file within the Tetra Data Platform.", "type": [ "string", "null" ] }, "file_name": { "description": "Name of the Parquet file.", "type": [ "string", "null" ] }, "fk_run": { "@foreign_key": "/properties/runs/items/properties/pk", "description": "Foreign key to the run this curve belongs to.", "type": "string" }, "fk_sample": { "@foreign_key": "/properties/samples/items/properties/pk", "description": "Foreign key to the sample this curve was measured on.", "type": "string" }, "description": { "description": "Human-readable description of the curve's contents, e.g. 'DLS autocorrelation function'.", "type": [ "string", "null" ] } }, "additionalProperties": false, "required": [ "pk", "fk_run", "fk_sample" ] }
- Validators:
- field description: str | None#
Human-readable description of the curve’s contents, e.g. ‘DLS autocorrelation function’.
- field fk_run: str#
Foreign key to the run this curve belongs to.
- Constraints:
func = <function validate_uuid at 0x7f1493ac61f0>
json_schema_input_type = PydanticUndefined
ids_field_arg = primary_key
pk_reference_field = @foreign_key
- Model DLSAcquisition[source]#
Bases:
IdsElementA single DLS acquisition within a measurement, with its own fit results.
Show JSON schema
{ "description": "A single DLS acquisition within a measurement, with its own fit results.", "type": "object", "properties": { "index": { "description": "Index of the acquisition within the measurement.", "type": [ "number", "null" ] }, "cumulant_fit": { "$ref": "#/definitions/CumulantFit", "description": "Cumulant fit for this acquisition." }, "regularized_fit_peaks": { "description": "Peaks from the regularized fit of this acquisition.", "items": { "$ref": "#/definitions/RegularizedFitPeak" }, "type": "array" } }, "additionalProperties": false, "definitions": { "CumulantFit": { "additionalProperties": false, "description": "Cumulant analysis fit parameters from the DLS autocorrelation function\n(ACF). Regularized NNLS deconvolution yields amplitude, decay time, and\ndiffusion coefficient from the fitted ACF decay.", "properties": { "amplitude": { "$ref": "#/definitions/RawValueUnit", "description": "Fitted amplitude (intercept) of the ACF." }, "decay_time": { "$ref": "#/definitions/RawValueUnit", "description": "Characteristic decay time of the ACF." }, "diffusion_coefficient": { "$ref": "#/definitions/RawValueUnit", "description": "Translational diffusion coefficient from the fit." }, "radius": { "$ref": "#/definitions/RawValueUnit", "description": "Hydrodynamic radius from the fit." }, "molecular_weight": { "$ref": "#/definitions/RawValueUnit", "description": "Molecular weight estimated from the fit." }, "viscosity": { "$ref": "#/definitions/RawValueUnit", "description": "Viscosity used in the fit." }, "q": { "$ref": "#/definitions/RawValueUnit", "description": "Scattering vector magnitude used in the fit." }, "polydispersity": { "$ref": "#/definitions/RawValueUnit", "description": "Polydispersity from the fit." }, "polydispersity_index": { "$ref": "#/definitions/RawValueUnit", "description": "Polydispersity index from the fit." }, "polydispersity_percent": { "$ref": "#/definitions/RawValueUnit", "description": "Polydispersity expressed as a percentage." }, "baseline": { "$ref": "#/definitions/RawValueUnit", "description": "Fitted baseline of the ACF." }, "sos_error": { "$ref": "#/definitions/RawValueUnit", "description": "Sum-of-squares error of the fit." }, "lambda": { "$ref": "#/definitions/RawValueUnit", "description": "Regularization parameter used in the deconvolution." }, "sigma": { "$ref": "#/definitions/RawValueUnit", "description": "Standard deviation (width) parameter of the fit." }, "first_cumulant": { "$ref": "#/definitions/RawValueUnit", "description": "First cumulant (mean decay rate)." }, "second_cumulant": { "$ref": "#/definitions/RawValueUnit", "description": "Second cumulant (variance of the decay rate)." }, "measured_baseline": { "$ref": "#/definitions/RawValueUnit", "description": "Measured (as opposed to fitted) baseline." }, "fit_error": { "$ref": "#/definitions/RawValueUnit", "description": "Overall error metric of the fit." }, "order_of_fit": { "description": "Order of the cumulant polynomial fit.", "type": [ "number", "null" ] } }, "type": "object" }, "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" }, "RegularizedFitPeak": { "additionalProperties": false, "description": "A single peak from regularized NNLS deconvolution of the DLS ACF.", "properties": { "dist": { "description": "Distribution index the peak belongs to.", "type": [ "number", "null" ] }, "peak_index": { "description": "Index of the peak within the distribution.", "type": [ "number", "null" ] }, "radius": { "$ref": "#/definitions/RawValueUnit", "description": "Hydrodynamic radius of the peak." }, "diffusion_coefficient": { "$ref": "#/definitions/RawValueUnit", "description": "Diffusion coefficient of the peak." }, "molecular_weight": { "$ref": "#/definitions/RawValueUnit", "description": "Molecular weight estimated for the peak." }, "polydispersity": { "$ref": "#/definitions/RawValueUnit", "description": "Polydispersity of the peak." }, "first_index": { "description": "Index of the first ACF grid point contributing to the peak.", "type": [ "number", "null" ] }, "number_of_points": { "description": "Number of ACF grid points contributing to the peak.", "type": [ "number", "null" ] }, "decay_time": { "$ref": "#/definitions/RawValueUnit", "description": "Characteristic decay time of the peak." }, "percent_intensity": { "$ref": "#/definitions/RawValueUnit", "description": "Contribution of the peak to the intensity-weighted distribution, as a percentage." }, "percent_mass": { "$ref": "#/definitions/RawValueUnit", "description": "Contribution of the peak to the mass/volume-weighted distribution, as a percentage." }, "percent_number": { "$ref": "#/definitions/RawValueUnit", "description": "Contribution of the peak to the number-weighted distribution, as a percentage." } }, "type": "object" } } }
- Validators:
- field cumulant_fit: CumulantFit#
Cumulant fit for this acquisition.
- field regularized_fit_peaks: List[RegularizedFitPeak]#
Peaks from the regularized fit of this acquisition.
- Model DLSMethodSettings[source]#
Bases:
IdsElementDynamic Light Scattering method parameters. Also carries the optical configuration shared by the ELS and SLS techniques, which are measured on the same optical bench.
Show JSON schema
{ "description": "Dynamic Light Scattering method parameters. Also carries the optical\nconfiguration shared by the ELS and SLS techniques, which are measured on\nthe same optical bench.", "type": "object", "properties": { "cell_name": { "description": "Name/type of the measurement cell or cuvette used.", "type": [ "string", "null" ] }, "angle": { "$ref": "#/definitions/RawValueUnit", "description": "Scattering detection angle, e.g. 173 degrees for backscatter." }, "wavelength": { "$ref": "#/definitions/RawValueUnit", "description": "Wavelength of the incident laser." }, "attenuator": { "$ref": "#/definitions/RawValueUnit", "description": "Attenuator setting applied to the incident laser." }, "size_limits": { "$ref": "#/definitions/SizeLimits", "description": "Configured lower/upper size limits for the analysis." }, "instrument_states": { "description": "Per-acquisition instrument state (laser power, attenuation, etc.).", "items": { "$ref": "#/definitions/InstrumentState" }, "type": "array" }, "acquisition_quality_gates": { "description": "Data quality gates applied during acquisition filtering.", "items": { "$ref": "#/definitions/AcquisitionQualityGate" }, "type": "array" } }, "additionalProperties": false, "definitions": { "AcquisitionQualityGate": { "additionalProperties": false, "description": "A data quality gate/filter applied during DLS acquisition, used to accept\nor reject individual acquisitions before averaging.", "properties": { "file_key": { "description": "Vendor key identifying the gate in the raw file.", "type": [ "number", "null" ] }, "label": { "description": "Human-readable name of the quality gate.", "type": [ "string", "null" ] }, "threshold": { "description": "Threshold/condition applied by the gate, as reported by the instrument.", "type": [ "string", "null" ] }, "enabled": { "description": "Whether the gate is enabled (1) or disabled (0).", "type": [ "number", "null" ] } }, "type": "object" }, "InstrumentState": { "additionalProperties": false, "description": "Per-measurement DLS instrument state, one entry per acquisition.", "properties": { "measurement_index": { "description": "Zero- or one-based index of the measurement within the run.", "type": [ "number", "null" ] }, "measurement_id": { "description": "Vendor identifier for the measurement.", "type": [ "string", "null" ] }, "laser_power": { "$ref": "#/definitions/RawValueUnit", "description": "Laser power used for the measurement." }, "attenuation_level": { "$ref": "#/definitions/RawValueUnit", "description": "Attenuation level applied to the incident laser, set automatically to keep the count rate in range." }, "acquisition_period": { "$ref": "#/definitions/RawValueUnit", "description": "Duration of a single acquisition." } }, "type": "object" }, "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" }, "SizeLimits": { "additionalProperties": false, "description": "Configured lower and upper size limits for DLS analysis.", "properties": { "low": { "$ref": "#/definitions/RawValueUnit", "description": "Lower size limit for the analysis." }, "high": { "$ref": "#/definitions/RawValueUnit", "description": "Upper size limit for the analysis." } }, "type": "object" } } }
- Validators:
- field acquisition_quality_gates: List[AcquisitionQualityGate]#
Data quality gates applied during acquisition filtering.
- field angle: RawValueUnit#
Scattering detection angle, e.g. 173 degrees for backscatter.
- field attenuator: RawValueUnit#
Attenuator setting applied to the incident laser.
- field instrument_states: List[InstrumentState]#
Per-acquisition instrument state (laser power, attenuation, etc.).
- field size_limits: SizeLimits#
Configured lower/upper size limits for the analysis.
- field wavelength: RawValueUnit#
Wavelength of the incident laser.
- Model DLSResult[source]#
Bases:
IdsElementDynamic Light Scattering (DLS) specific results.
Show JSON schema
{ "description": "Dynamic Light Scattering (DLS) specific results.", "type": "object", "properties": { "z_average": { "$ref": "#/definitions/ZAverage", "description": "Intensity-weighted harmonic mean hydrodynamic size from the cumulants fit. Zetasizer reports diameter natively; DynaPro reports radius natively." }, "polydispersity_index": { "$ref": "#/definitions/PolydispersityIndex", "description": "PDI from the cumulants fit. <0.1 monodisperse, >0.4 broad/aggregated. Definition differs between instruments -- check the ``definition`` field." }, "diffusion_coefficient": { "$ref": "#/definitions/RawValueUnit", "description": "Translational diffusion coefficient from the cumulants fit." }, "intercept": { "$ref": "#/definitions/RawValueUnit", "description": "ACF y-intercept at tau=0. Data quality indicator; ideal = 1.0." }, "mean_count_rate": { "$ref": "#/definitions/RawValueUnit", "description": "Photon count rate in kcps. Signal strength indicator." }, "derived_mean_count_rate": { "$ref": "#/definitions/RawValueUnit", "description": "Derived (attenuation-corrected) mean count rate." }, "in_range": { "$ref": "#/definitions/RawValueUnit", "description": "Fraction of the signal within the configured size range." }, "quality_indicator": { "description": "Overall data-quality verdict reported by the instrument, e.g. 'good' or a warning message.", "type": [ "string", "null" ] }, "number_of_runs": { "description": "Number of sub-runs/acquisitions averaged into this result.", "type": [ "number", "null" ] }, "run_retention": { "$ref": "#/definitions/RawValueUnit", "description": "Fraction of sub-runs retained after quality filtering." }, "particle_concentration": { "$ref": "#/definitions/RawValueUnit", "description": "Estimated particle concentration." }, "cumulant_fit": { "$ref": "#/definitions/CumulantFit", "description": "Cumulant fit for the averaged measurement." }, "regularized_fit_peaks": { "description": "Peaks from the regularized fit of the averaged measurement.", "items": { "$ref": "#/definitions/RegularizedFitPeak" }, "type": "array" }, "acquisitions": { "description": "Per-acquisition results within the measurement.", "items": { "$ref": "#/definitions/DLSAcquisition" }, "type": "array" }, "average_instrument_reading": { "$ref": "#/definitions/InstrumentReading", "description": "Average instrument reading over all acquisitions." }, "derived": { "$ref": "#/definitions/DerivedAnalysis", "description": "Derived concentration-dependent analysis (DynaPro SLS companion)." } }, "additionalProperties": false, "definitions": { "CumulantFit": { "additionalProperties": false, "description": "Cumulant analysis fit parameters from the DLS autocorrelation function\n(ACF). Regularized NNLS deconvolution yields amplitude, decay time, and\ndiffusion coefficient from the fitted ACF decay.", "properties": { "amplitude": { "$ref": "#/definitions/RawValueUnit", "description": "Fitted amplitude (intercept) of the ACF." }, "decay_time": { "$ref": "#/definitions/RawValueUnit", "description": "Characteristic decay time of the ACF." }, "diffusion_coefficient": { "$ref": "#/definitions/RawValueUnit", "description": "Translational diffusion coefficient from the fit." }, "radius": { "$ref": "#/definitions/RawValueUnit", "description": "Hydrodynamic radius from the fit." }, "molecular_weight": { "$ref": "#/definitions/RawValueUnit", "description": "Molecular weight estimated from the fit." }, "viscosity": { "$ref": "#/definitions/RawValueUnit", "description": "Viscosity used in the fit." }, "q": { "$ref": "#/definitions/RawValueUnit", "description": "Scattering vector magnitude used in the fit." }, "polydispersity": { "$ref": "#/definitions/RawValueUnit", "description": "Polydispersity from the fit." }, "polydispersity_index": { "$ref": "#/definitions/RawValueUnit", "description": "Polydispersity index from the fit." }, "polydispersity_percent": { "$ref": "#/definitions/RawValueUnit", "description": "Polydispersity expressed as a percentage." }, "baseline": { "$ref": "#/definitions/RawValueUnit", "description": "Fitted baseline of the ACF." }, "sos_error": { "$ref": "#/definitions/RawValueUnit", "description": "Sum-of-squares error of the fit." }, "lambda": { "$ref": "#/definitions/RawValueUnit", "description": "Regularization parameter used in the deconvolution." }, "sigma": { "$ref": "#/definitions/RawValueUnit", "description": "Standard deviation (width) parameter of the fit." }, "first_cumulant": { "$ref": "#/definitions/RawValueUnit", "description": "First cumulant (mean decay rate)." }, "second_cumulant": { "$ref": "#/definitions/RawValueUnit", "description": "Second cumulant (variance of the decay rate)." }, "measured_baseline": { "$ref": "#/definitions/RawValueUnit", "description": "Measured (as opposed to fitted) baseline." }, "fit_error": { "$ref": "#/definitions/RawValueUnit", "description": "Overall error metric of the fit." }, "order_of_fit": { "description": "Order of the cumulant polynomial fit.", "type": [ "number", "null" ] } }, "type": "object" }, "DLSAcquisition": { "additionalProperties": false, "description": "A single DLS acquisition within a measurement, with its own fit results.", "properties": { "index": { "description": "Index of the acquisition within the measurement.", "type": [ "number", "null" ] }, "cumulant_fit": { "$ref": "#/definitions/CumulantFit", "description": "Cumulant fit for this acquisition." }, "regularized_fit_peaks": { "description": "Peaks from the regularized fit of this acquisition.", "items": { "$ref": "#/definitions/RegularizedFitPeak" }, "type": "array" } }, "type": "object" }, "DerivedAnalysis": { "additionalProperties": false, "description": "Derived concentration-dependent analysis from DLS (DynaPro SLS\ncompanion), computed across a concentration series.", "properties": { "kd": { "$ref": "#/definitions/RawValueUnit", "description": "Diffusion interaction parameter (k_D) from the concentration series." }, "a2": { "$ref": "#/definitions/RawValueUnit", "description": "Second virial coefficient (A2) from the concentration series." }, "tagg": { "$ref": "#/definitions/RawValueUnit", "description": "Aggregation onset temperature (T_agg), when a thermal ramp is run." } }, "type": "object" }, "InstrumentReading": { "additionalProperties": false, "description": "Average instrument reading over all acquisitions in a measurement.", "properties": { "intensity": { "$ref": "#/definitions/RawValueUnit", "description": "Average scattered light intensity." }, "temperature": { "$ref": "#/definitions/RawValueUnit", "description": "Average measured temperature." }, "time": { "$ref": "#/definitions/RawValueUnit", "description": "Average acquisition time." } }, "type": "object" }, "PolydispersityIndex": { "additionalProperties": false, "description": "Polydispersity index (PDI) from the cumulants fit: <0.1 indicates a\nmonodisperse sample, >0.4 a broad or aggregated one. The computation\ndiffers between instruments -- always check ``definition``.", "properties": { "value": { "description": "Numeric PDI value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit of the PDI value (typically dimensionless).", "type": [ "string", "null" ] }, "definition": { "description": "Algorithm used to compute the PDI. The definitions are not interchangeable.", "example_values": [ "iso_22412", "percent_pd_over_100" ], "type": [ "string", "null" ] } }, "type": "object" }, "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" }, "RegularizedFitPeak": { "additionalProperties": false, "description": "A single peak from regularized NNLS deconvolution of the DLS ACF.", "properties": { "dist": { "description": "Distribution index the peak belongs to.", "type": [ "number", "null" ] }, "peak_index": { "description": "Index of the peak within the distribution.", "type": [ "number", "null" ] }, "radius": { "$ref": "#/definitions/RawValueUnit", "description": "Hydrodynamic radius of the peak." }, "diffusion_coefficient": { "$ref": "#/definitions/RawValueUnit", "description": "Diffusion coefficient of the peak." }, "molecular_weight": { "$ref": "#/definitions/RawValueUnit", "description": "Molecular weight estimated for the peak." }, "polydispersity": { "$ref": "#/definitions/RawValueUnit", "description": "Polydispersity of the peak." }, "first_index": { "description": "Index of the first ACF grid point contributing to the peak.", "type": [ "number", "null" ] }, "number_of_points": { "description": "Number of ACF grid points contributing to the peak.", "type": [ "number", "null" ] }, "decay_time": { "$ref": "#/definitions/RawValueUnit", "description": "Characteristic decay time of the peak." }, "percent_intensity": { "$ref": "#/definitions/RawValueUnit", "description": "Contribution of the peak to the intensity-weighted distribution, as a percentage." }, "percent_mass": { "$ref": "#/definitions/RawValueUnit", "description": "Contribution of the peak to the mass/volume-weighted distribution, as a percentage." }, "percent_number": { "$ref": "#/definitions/RawValueUnit", "description": "Contribution of the peak to the number-weighted distribution, as a percentage." } }, "type": "object" }, "ZAverage": { "additionalProperties": false, "description": "Intensity-weighted harmonic mean hydrodynamic size from the cumulants\nfit. The Zetasizer reports diameter natively; DynaPro reports radius\nnatively.", "properties": { "diameter": { "$ref": "#/definitions/RawValueUnit", "description": "Z-average hydrodynamic diameter." }, "radius": { "$ref": "#/definitions/RawValueUnit", "description": "Z-average hydrodynamic radius." } }, "type": "object" } } }
- Validators:
- field acquisitions: List[DLSAcquisition]#
Per-acquisition results within the measurement.
- field average_instrument_reading: InstrumentReading#
Average instrument reading over all acquisitions.
- field cumulant_fit: CumulantFit#
Cumulant fit for the averaged measurement.
- field derived: DerivedAnalysis#
Derived concentration-dependent analysis (DynaPro SLS companion).
- field derived_mean_count_rate: RawValueUnit#
Derived (attenuation-corrected) mean count rate.
- field diffusion_coefficient: RawValueUnit#
Translational diffusion coefficient from the cumulants fit.
- field in_range: RawValueUnit#
Fraction of the signal within the configured size range.
- field intercept: RawValueUnit#
ACF y-intercept at tau=0. Data quality indicator; ideal = 1.0.
- field mean_count_rate: RawValueUnit#
Photon count rate in kcps. Signal strength indicator.
- field particle_concentration: RawValueUnit#
Estimated particle concentration.
- field polydispersity_index: PolydispersityIndex#
PDI from the cumulants fit. <0.1 monodisperse, >0.4 broad/aggregated. Definition differs between instruments – check the
definitionfield.
- field quality_indicator: str | None#
Overall data-quality verdict reported by the instrument, e.g. ‘good’ or a warning message.
- field regularized_fit_peaks: List[RegularizedFitPeak]#
Peaks from the regularized fit of the averaged measurement.
- field run_retention: RawValueUnit#
Fraction of sub-runs retained after quality filtering.
- Model DerivedAnalysis[source]#
Bases:
IdsElementDerived concentration-dependent analysis from DLS (DynaPro SLS companion), computed across a concentration series.
Show JSON schema
{ "description": "Derived concentration-dependent analysis from DLS (DynaPro SLS\ncompanion), computed across a concentration series.", "type": "object", "properties": { "kd": { "$ref": "#/definitions/RawValueUnit", "description": "Diffusion interaction parameter (k_D) from the concentration series." }, "a2": { "$ref": "#/definitions/RawValueUnit", "description": "Second virial coefficient (A2) from the concentration series." }, "tagg": { "$ref": "#/definitions/RawValueUnit", "description": "Aggregation onset temperature (T_agg), when a thermal ramp is run." } }, "additionalProperties": false, "definitions": { "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" } } }
- Validators:
- field a2: RawValueUnit#
Second virial coefficient (A2) from the concentration series.
- field kd: RawValueUnit#
Diffusion interaction parameter (k_D) from the concentration series.
- field tagg: RawValueUnit#
Aggregation onset temperature (T_agg), when a thermal ramp is run.
- Model DispersionUnit[source]#
Bases:
IdsElementConfiguration of the dispersion unit (wet or dry) that suspends and delivers the sample to the laser diffraction measurement zone.
Show JSON schema
{ "description": "Configuration of the dispersion unit (wet or dry) that suspends and\ndelivers the sample to the laser diffraction measurement zone.", "type": "object", "properties": { "name": { "description": "Name/type of the dispersion unit.", "type": [ "string", "null" ] }, "stirrer_speed": { "$ref": "#/definitions/RawValueUnit", "description": "Stirrer speed of the wet dispersion unit." }, "ultrasound_power": { "$ref": "#/definitions/RawValueUnit", "description": "Ultrasound power applied to disperse/de-agglomerate the sample." }, "ultrasound_duration": { "$ref": "#/definitions/RawValueUnit", "description": "Duration for which ultrasound is applied." }, "ultrasound_mode": { "description": "Ultrasound application mode, e.g. 'continuous' or 'pre-measurement'.", "type": [ "string", "null" ] }, "venturi_type": { "description": "Venturi type for a dry dispersion unit.", "type": [ "string", "null" ] } }, "additionalProperties": false, "definitions": { "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" } } }
- Validators:
- field stirrer_speed: RawValueUnit#
Stirrer speed of the wet dispersion unit.
- field ultrasound_duration: RawValueUnit#
Duration for which ultrasound is applied.
- field ultrasound_mode: str | None#
Ultrasound application mode, e.g. ‘continuous’ or ‘pre-measurement’.
- field ultrasound_power: RawValueUnit#
Ultrasound power applied to disperse/de-agglomerate the sample.
- Model ELSResult[source]#
Bases:
IdsElementElectrophoretic Light Scattering (ELS) / zeta potential results.
Show JSON schema
{ "description": "Electrophoretic Light Scattering (ELS) / zeta potential results.", "type": "object", "properties": { "potential": { "$ref": "#/definitions/RawValueUnit", "description": "Zeta potential." }, "zeta_deviation": { "$ref": "#/definitions/RawValueUnit", "description": "Standard deviation (width) of the zeta potential distribution." }, "mobility": { "$ref": "#/definitions/RawValueUnit", "description": "Electrophoretic mobility." }, "model": { "description": "Model used to convert mobility to zeta potential, e.g. 'Smoluchowski' or 'Huckel'.", "type": [ "string", "null" ] }, "conductivity": { "$ref": "#/definitions/RawValueUnit", "description": "Conductivity of the dispersant." }, "mean_count_rate": { "$ref": "#/definitions/RawValueUnit", "description": "Photon count rate in kcps during the ELS measurement." }, "quality_factor": { "$ref": "#/definitions/RawValueUnit", "description": "Data quality factor reported for the measurement." }, "effective_voltage": { "$ref": "#/definitions/RawValueUnit", "description": "Effective voltage applied across the cell." }, "measured_voltage": { "$ref": "#/definitions/RawValueUnit", "description": "Measured voltage across the cell." }, "measured_current": { "$ref": "#/definitions/RawValueUnit", "description": "Measured current through the cell." }, "distribution": { "$ref": "#/definitions/ZetaDistribution", "description": "Zeta potential distribution." } }, "additionalProperties": false, "definitions": { "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" }, "ZetaDistribution": { "additionalProperties": false, "description": "Zeta potential distribution, expressed as a set of peaks.", "properties": { "peaks": { "description": "Peaks that make up the zeta potential distribution.", "items": { "$ref": "#/definitions/ZetaDistributionPeak" }, "type": "array" } }, "type": "object" }, "ZetaDistributionPeak": { "additionalProperties": false, "description": "A single peak in a zeta potential distribution.", "properties": { "mean": { "$ref": "#/definitions/RawValueUnit", "description": "Mean zeta potential of the peak." }, "area": { "$ref": "#/definitions/RawValueUnit", "description": "Area (relative contribution) of the peak." } }, "type": "object" } } }
- Validators:
- field conductivity: RawValueUnit#
Conductivity of the dispersant.
- field distribution: ZetaDistribution#
Zeta potential distribution.
- field effective_voltage: RawValueUnit#
Effective voltage applied across the cell.
- field mean_count_rate: RawValueUnit#
Photon count rate in kcps during the ELS measurement.
- field measured_current: RawValueUnit#
Measured current through the cell.
- field measured_voltage: RawValueUnit#
Measured voltage across the cell.
- field mobility: RawValueUnit#
Electrophoretic mobility.
- field model: str | None#
Model used to convert mobility to zeta potential, e.g. ‘Smoluchowski’ or ‘Huckel’.
- field potential: RawValueUnit#
Zeta potential.
- field quality_factor: RawValueUnit#
Data quality factor reported for the measurement.
- field zeta_deviation: RawValueUnit#
Standard deviation (width) of the zeta potential distribution.
- Model FeedRate[source]#
Bases:
IdsElementSample feed rate demand (configured) and achieved (measured) values.
Show JSON schema
{ "description": "Sample feed rate demand (configured) and achieved (measured) values.", "type": "object", "properties": { "demand": { "$ref": "#/definitions/RawValueUnit", "description": "Configured/demanded feed rate." }, "achieved": { "$ref": "#/definitions/RawValueUnit", "description": "Actual/achieved feed rate." } }, "additionalProperties": false, "definitions": { "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" } } }
- Validators:
- field achieved: RawValueUnit#
Actual/achieved feed rate.
- field demand: RawValueUnit#
Configured/demanded feed rate.
- Model InstrumentReading[source]#
Bases:
IdsElementAverage instrument reading over all acquisitions in a measurement.
Show JSON schema
{ "description": "Average instrument reading over all acquisitions in a measurement.", "type": "object", "properties": { "intensity": { "$ref": "#/definitions/RawValueUnit", "description": "Average scattered light intensity." }, "temperature": { "$ref": "#/definitions/RawValueUnit", "description": "Average measured temperature." }, "time": { "$ref": "#/definitions/RawValueUnit", "description": "Average acquisition time." } }, "additionalProperties": false, "definitions": { "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" } } }
- Validators:
- field intensity: RawValueUnit#
Average scattered light intensity.
- field temperature: RawValueUnit#
Average measured temperature.
- field time: RawValueUnit#
Average acquisition time.
- Model InstrumentState[source]#
Bases:
IdsElementPer-measurement DLS instrument state, one entry per acquisition.
Show JSON schema
{ "description": "Per-measurement DLS instrument state, one entry per acquisition.", "type": "object", "properties": { "measurement_index": { "description": "Zero- or one-based index of the measurement within the run.", "type": [ "number", "null" ] }, "measurement_id": { "description": "Vendor identifier for the measurement.", "type": [ "string", "null" ] }, "laser_power": { "$ref": "#/definitions/RawValueUnit", "description": "Laser power used for the measurement." }, "attenuation_level": { "$ref": "#/definitions/RawValueUnit", "description": "Attenuation level applied to the incident laser, set automatically to keep the count rate in range." }, "acquisition_period": { "$ref": "#/definitions/RawValueUnit", "description": "Duration of a single acquisition." } }, "additionalProperties": false, "definitions": { "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" } } }
- Validators:
- field acquisition_period: RawValueUnit#
Duration of a single acquisition.
- field attenuation_level: RawValueUnit#
Attenuation level applied to the incident laser, set automatically to keep the count rate in range.
- field laser_power: RawValueUnit#
Laser power used for the measurement.
- Model LaserDiffractionMethodSettings[source]#
Bases:
IdsElementLaser Diffraction method parameters (e.g. Mastersizer).
Show JSON schema
{ "description": "Laser Diffraction method parameters (e.g. Mastersizer).", "type": "object", "properties": { "sop_file": { "description": "Name/path of the Standard Operating Procedure (SOP) file used.", "type": [ "string", "null" ] }, "scattering_model": { "description": "Scattering model used to invert the diffraction pattern, e.g. 'Mie' or 'Fraunhofer'.", "type": [ "string", "null" ] }, "analysis_model": { "description": "Analysis model applied, e.g. 'general purpose' or 'single narrow mode'.", "type": [ "string", "null" ] }, "sensitivity": { "description": "Analysis sensitivity setting, e.g. 'normal' or 'enhanced'.", "type": [ "string", "null" ] }, "result_emulation": { "description": "Result emulation setting used to reproduce results from an older instrument model.", "type": [ "string", "null" ] }, "fine_powder_mode": { "description": "Fine powder mode setting for dry dispersion of cohesive powders.", "type": [ "string", "null" ] }, "size_range": { "$ref": "#/definitions/SizeRange", "description": "Configured lower/upper size range for the analysis." }, "obscuration": { "$ref": "#/definitions/ObscurationLimits", "description": "Configured obscuration high/low limits." }, "feed_rate": { "$ref": "#/definitions/FeedRate", "description": "Sample feed rate demand and achieved values." }, "gauge_air_pressure_demand": { "$ref": "#/definitions/RawValueUnit", "description": "Configured gauge air pressure for a dry dispersion unit." }, "hopper_gap": { "$ref": "#/definitions/RawValueUnit", "description": "Hopper gap setting controlling dry sample feed." }, "dispersion_unit": { "$ref": "#/definitions/DispersionUnit", "description": "Configuration of the wet/dry dispersion unit." }, "measurement_time": { "$ref": "#/definitions/MeasurementTime", "description": "Background and sample measurement durations." } }, "additionalProperties": false, "definitions": { "DispersionUnit": { "additionalProperties": false, "description": "Configuration of the dispersion unit (wet or dry) that suspends and\ndelivers the sample to the laser diffraction measurement zone.", "properties": { "name": { "description": "Name/type of the dispersion unit.", "type": [ "string", "null" ] }, "stirrer_speed": { "$ref": "#/definitions/RawValueUnit", "description": "Stirrer speed of the wet dispersion unit." }, "ultrasound_power": { "$ref": "#/definitions/RawValueUnit", "description": "Ultrasound power applied to disperse/de-agglomerate the sample." }, "ultrasound_duration": { "$ref": "#/definitions/RawValueUnit", "description": "Duration for which ultrasound is applied." }, "ultrasound_mode": { "description": "Ultrasound application mode, e.g. 'continuous' or 'pre-measurement'.", "type": [ "string", "null" ] }, "venturi_type": { "description": "Venturi type for a dry dispersion unit.", "type": [ "string", "null" ] } }, "type": "object" }, "FeedRate": { "additionalProperties": false, "description": "Sample feed rate demand (configured) and achieved (measured) values.", "properties": { "demand": { "$ref": "#/definitions/RawValueUnit", "description": "Configured/demanded feed rate." }, "achieved": { "$ref": "#/definitions/RawValueUnit", "description": "Actual/achieved feed rate." } }, "type": "object" }, "MeasurementTime": { "additionalProperties": false, "description": "Background and sample measurement durations for a laser diffraction method.", "properties": { "background": { "$ref": "#/definitions/RawValueUnit", "description": "Duration of the background (blank) measurement." }, "sample": { "$ref": "#/definitions/RawValueUnit", "description": "Duration of the sample measurement." } }, "type": "object" }, "ObscurationLimits": { "additionalProperties": false, "description": "Configured obscuration (light attenuation) high/low limits for a laser diffraction method.", "properties": { "high_limit": { "$ref": "#/definitions/RawValueUnit", "description": "Upper obscuration limit." }, "low_limit": { "$ref": "#/definitions/RawValueUnit", "description": "Lower obscuration limit." } }, "type": "object" }, "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" }, "SizeRange": { "additionalProperties": false, "description": "Configured lower and upper size range for laser diffraction analysis.", "properties": { "low": { "$ref": "#/definitions/RawValueUnit", "description": "Lower bound of the analysis size range." }, "high": { "$ref": "#/definitions/RawValueUnit", "description": "Upper bound of the analysis size range." } }, "type": "object" } } }
- Validators:
- field analysis_model: str | None#
Analysis model applied, e.g. ‘general purpose’ or ‘single narrow mode’.
- field dispersion_unit: DispersionUnit#
Configuration of the wet/dry dispersion unit.
- field fine_powder_mode: str | None#
Fine powder mode setting for dry dispersion of cohesive powders.
- field gauge_air_pressure_demand: RawValueUnit#
Configured gauge air pressure for a dry dispersion unit.
- field hopper_gap: RawValueUnit#
Hopper gap setting controlling dry sample feed.
- field measurement_time: MeasurementTime#
Background and sample measurement durations.
- field obscuration: ObscurationLimits#
Configured obscuration high/low limits.
- field result_emulation: str | None#
Result emulation setting used to reproduce results from an older instrument model.
- Model LaserDiffractionResult[source]#
Bases:
IdsElementLaser Diffraction specific results.
Show JSON schema
{ "description": "Laser Diffraction specific results.", "type": "object", "properties": { "d10": { "$ref": "#/definitions/RawValueUnit", "description": "10th percentile size: 10% of the volume distribution lies below this size." }, "d50": { "$ref": "#/definitions/RawValueUnit", "description": "50th percentile (median) size." }, "d90": { "$ref": "#/definitions/RawValueUnit", "description": "90th percentile size: 90% of the volume distribution lies below this size." }, "span": { "$ref": "#/definitions/RawValueUnit", "description": "Distribution width, (d90 - d10) / d50." }, "volume_weighted_mean": { "$ref": "#/definitions/RawValueUnit", "description": "D[4,3] - volume-weighted mean diameter." }, "surface_weighted_mean": { "$ref": "#/definitions/RawValueUnit", "description": "D[3,2] - surface-weighted mean diameter (Sauter mean)." }, "obscuration": { "$ref": "#/definitions/RawValueUnit", "description": "Obscuration (fraction of light attenuated) during the measurement." }, "concentration": { "$ref": "#/definitions/RawValueUnit", "description": "Sample concentration in the measurement zone." }, "weighted_residual": { "$ref": "#/definitions/RawValueUnit", "description": "Weighted residual of the model fit to the diffraction pattern; a goodness-of-fit indicator." }, "uniformity": { "$ref": "#/definitions/RawValueUnit", "description": "Uniformity of the size distribution." }, "specific_surface_area": { "$ref": "#/definitions/RawValueUnit", "description": "Specific surface area computed from the volume distribution." }, "additional_statistics": { "description": "Additional Dxx percentiles beyond D10/D50/D90.", "items": { "$ref": "#/definitions/AdditionalStatistic" }, "type": "array" } }, "additionalProperties": false, "definitions": { "AdditionalStatistic": { "additionalProperties": false, "description": "An additional Dxx percentile beyond the standard D10/D50/D90.", "properties": { "name": { "description": "Name of the percentile, e.g. 'D[v,0.25]'.", "type": [ "string", "null" ] }, "value": { "description": "Numeric value of the percentile.", "type": [ "number", "null" ] }, "unit": { "description": "Unit of the value, e.g. 'Micrometer'.", "type": [ "string", "null" ] } }, "type": "object" }, "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" } } }
- Validators:
- field additional_statistics: List[AdditionalStatistic]#
Additional Dxx percentiles beyond D10/D50/D90.
- field concentration: RawValueUnit#
Sample concentration in the measurement zone.
- field d10: RawValueUnit#
10th percentile size: 10% of the volume distribution lies below this size.
- field d50: RawValueUnit#
50th percentile (median) size.
- field d90: RawValueUnit#
90th percentile size: 90% of the volume distribution lies below this size.
- field obscuration: RawValueUnit#
Obscuration (fraction of light attenuated) during the measurement.
- field span: RawValueUnit#
Distribution width, (d90 - d10) / d50.
- field specific_surface_area: RawValueUnit#
Specific surface area computed from the volume distribution.
- field surface_weighted_mean: RawValueUnit#
D[3,2] - surface-weighted mean diameter (Sauter mean).
- field uniformity: RawValueUnit#
Uniformity of the size distribution.
- field volume_weighted_mean: RawValueUnit#
D[4,3] - volume-weighted mean diameter.
- field weighted_residual: RawValueUnit#
Weighted residual of the model fit to the diffraction pattern; a goodness-of-fit indicator.
- Model MeasurementTime[source]#
Bases:
IdsElementBackground and sample measurement durations for a laser diffraction method.
Show JSON schema
{ "description": "Background and sample measurement durations for a laser diffraction method.", "type": "object", "properties": { "background": { "$ref": "#/definitions/RawValueUnit", "description": "Duration of the background (blank) measurement." }, "sample": { "$ref": "#/definitions/RawValueUnit", "description": "Duration of the sample measurement." } }, "additionalProperties": false, "definitions": { "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" } } }
- Validators:
- field background: RawValueUnit#
Duration of the background (blank) measurement.
- field sample: RawValueUnit#
Duration of the sample measurement.
- Model Method[source]#
Bases:
IdsElementMeasurement method and conditions common to every particle sizer technique.
The technique-specific settings blocks are not included here. Following the same pattern as the
Systemandplate reader MeasurementSettingcomponents, a vendor-specific IDS composes only the blocks its instrument supports by inheriting from this base plus the relevant nested mixin classes – e.g. a DLS-only instrument usesclass MyMethod(Method, Method.DynamicLightScattering), while an instrument supporting several techniques inherits from all the corresponding nested classes.Show JSON schema
{ "description": "Measurement method and conditions common to every particle sizer\ntechnique.\n\nThe technique-specific settings blocks are *not* included here. Following\nthe same pattern as the :py:class:`System <ts_ids_core.schema.system.System>`\nand :py:class:`plate reader MeasurementSetting\n<ts_ids_components.plate_reader.methods.MeasurementSetting>` components, a\nvendor-specific IDS composes only the blocks its instrument supports by\ninheriting from this base plus the relevant nested mixin classes -- e.g.\na DLS-only instrument uses ``class MyMethod(Method, Method.DynamicLightScattering)``,\nwhile an instrument supporting several techniques inherits from all the\ncorresponding nested classes.", "type": "object", "properties": { "pk": { "@primary_key": true, "description": "Primary key for this method, referenced by results via ``fk_method``.", "type": "string" }, "technique": { "description": "Standardized measurement technique used.", "example_values": [ "dynamic light scattering", "electrophoretic light scattering", "static light scattering", "laser diffraction" ], "type": [ "string", "null" ] }, "temperature": { "$ref": "#/definitions/Temperature", "description": "Target and actual temperature of the measurement." }, "plate": { "$ref": "#/definitions/Plate", "description": "Plate information, for plate-reader DLS instruments." }, "solvents": { "description": "Dispersant(s) the particles are suspended in.", "items": { "$ref": "#/definitions/Solvent" }, "type": "array" }, "particle": { "$ref": "#/definitions/Particle", "description": "Optical properties of the analyte particle material." }, "fk_run": { "@foreign_key": "/properties/runs/items/properties/pk", "description": "Foreign key to the run this method was used in.", "type": "string" } }, "additionalProperties": false, "required": [ "pk", "fk_run" ], "definitions": { "Particle": { "additionalProperties": false, "description": "Optical properties of the analyte particle (material). The refractive\nindex and absorption index are the material constants used by the\nscattering model (e.g. Mie theory for laser diffraction) to convert a\nscattering pattern into a size distribution.\n\nThe ``*_blue`` variants carry the constants at a second, shorter (blue)\nwavelength, reported by laser diffraction instruments (e.g. Mastersizer)\nthat use a blue light source in addition to the red laser to improve\nresolution of fine particles.", "properties": { "name": { "description": "Name of the particle material, e.g. 'Polystyrene latex'.", "type": [ "string", "null" ] }, "refractive_index": { "$ref": "#/definitions/RawValueUnit", "description": "Real part of the particle's refractive index (at the primary/red wavelength)." }, "absorption_index": { "$ref": "#/definitions/RawValueUnit", "description": "Imaginary part (absorption) of the particle's refractive index (at the primary/red wavelength)." }, "refractive_index_blue": { "$ref": "#/definitions/RawValueUnit", "description": "Real part of the particle's refractive index at the blue wavelength (laser diffraction)." }, "absorption_index_blue": { "$ref": "#/definitions/RawValueUnit", "description": "Imaginary part (absorption) of the particle's refractive index at the blue wavelength (laser diffraction)." }, "density": { "$ref": "#/definitions/RawValueUnit", "description": "Density of the particle material, used to convert between volume- and mass-weighted results." }, "shape_model": { "description": "Particle shape model assumed by the analysis, e.g. 'spherical'.", "type": [ "string", "null" ] } }, "type": "object" }, "Plate": { "additionalProperties": false, "description": "Well plate used by plate-reader DLS instruments (e.g. DynaPro Plate\nReader), where each well holds a separate sample.", "properties": { "brand": { "description": "Manufacturer/brand of the plate.", "type": [ "string", "null" ] }, "name": { "description": "Name or catalog identifier of the plate.", "type": [ "string", "null" ] }, "type": { "description": "Plate type/format, e.g. '96-well' or '384-well'.", "type": [ "string", "null" ] } }, "type": "object" }, "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" }, "Solvent": { "additionalProperties": false, "description": "Dispersant / solvent medium the particles are suspended in. Its\nrefractive index and viscosity are required inputs to the Stokes-Einstein\nrelation used to convert a measured diffusion coefficient into a\nhydrodynamic size, and its dielectric constant is required for ELS/zeta\npotential calculations.", "properties": { "id": { "description": "Vendor identifier for the dispersant in the instrument's material database.", "type": [ "string", "null" ] }, "name": { "description": "Name of the dispersant, e.g. 'Water'.", "type": [ "string", "null" ] }, "refractive_index": { "$ref": "#/definitions/RawValueUnit", "description": "Refractive index of the dispersant at the measurement wavelength." }, "viscosity": { "$ref": "#/definitions/RawValueUnit", "description": "Dynamic viscosity of the dispersant at the measurement temperature." }, "dielectric_constant": { "$ref": "#/definitions/RawValueUnit", "description": "Dielectric constant (relative permittivity) of the dispersant, used for ELS/zeta calculations." }, "abundance": { "$ref": "#/definitions/RawValueUnit", "description": "Relative abundance/fraction of this dispersant, when the medium is a mixture." } }, "type": "object" }, "Temperature": { "additionalProperties": false, "description": "Target (set-point) and actual (measured) temperature for a measurement.", "properties": { "target": { "$ref": "#/definitions/RawValueUnit", "description": "Target/set-point temperature configured for the measurement." }, "actual": { "$ref": "#/definitions/RawValueUnit", "description": "Actual temperature measured during the measurement." } }, "type": "object" } } }
- Validators:
- field fk_run: str#
Foreign key to the run this method was used in.
- Constraints:
func = <function validate_uuid at 0x7f1493ac61f0>
json_schema_input_type = PydanticUndefined
ids_field_arg = primary_key
pk_reference_field = @foreign_key
- field pk: str#
Primary key for this method, referenced by results via
fk_method.- Constraints:
func = <function validate_uuid at 0x7f1493ac61f0>
json_schema_input_type = PydanticUndefined
- field temperature: Temperature#
Target and actual temperature of the measurement.
- Model DynamicLightScattering[source]#
Bases:
IdsElementAdds the Dynamic Light Scattering method settings (which also carry the ELS/SLS optical configuration). Inherit from this to support DLS, ELS, or SLS.
Show JSON schema
{ "description": "Adds the Dynamic Light Scattering method settings (which also carry\nthe ELS/SLS optical configuration). Inherit from this to support DLS,\nELS, or SLS.", "type": "object", "properties": { "dynamic_light_scattering": { "$ref": "#/definitions/DLSMethodSettings", "description": "DLS-specific method parameters (also carries the ELS/SLS optical configuration)." } }, "additionalProperties": false, "definitions": { "AcquisitionQualityGate": { "additionalProperties": false, "description": "A data quality gate/filter applied during DLS acquisition, used to accept\nor reject individual acquisitions before averaging.", "properties": { "file_key": { "description": "Vendor key identifying the gate in the raw file.", "type": [ "number", "null" ] }, "label": { "description": "Human-readable name of the quality gate.", "type": [ "string", "null" ] }, "threshold": { "description": "Threshold/condition applied by the gate, as reported by the instrument.", "type": [ "string", "null" ] }, "enabled": { "description": "Whether the gate is enabled (1) or disabled (0).", "type": [ "number", "null" ] } }, "type": "object" }, "DLSMethodSettings": { "additionalProperties": false, "description": "Dynamic Light Scattering method parameters. Also carries the optical\nconfiguration shared by the ELS and SLS techniques, which are measured on\nthe same optical bench.", "properties": { "cell_name": { "description": "Name/type of the measurement cell or cuvette used.", "type": [ "string", "null" ] }, "angle": { "$ref": "#/definitions/RawValueUnit", "description": "Scattering detection angle, e.g. 173 degrees for backscatter." }, "wavelength": { "$ref": "#/definitions/RawValueUnit", "description": "Wavelength of the incident laser." }, "attenuator": { "$ref": "#/definitions/RawValueUnit", "description": "Attenuator setting applied to the incident laser." }, "size_limits": { "$ref": "#/definitions/SizeLimits", "description": "Configured lower/upper size limits for the analysis." }, "instrument_states": { "description": "Per-acquisition instrument state (laser power, attenuation, etc.).", "items": { "$ref": "#/definitions/InstrumentState" }, "type": "array" }, "acquisition_quality_gates": { "description": "Data quality gates applied during acquisition filtering.", "items": { "$ref": "#/definitions/AcquisitionQualityGate" }, "type": "array" } }, "type": "object" }, "InstrumentState": { "additionalProperties": false, "description": "Per-measurement DLS instrument state, one entry per acquisition.", "properties": { "measurement_index": { "description": "Zero- or one-based index of the measurement within the run.", "type": [ "number", "null" ] }, "measurement_id": { "description": "Vendor identifier for the measurement.", "type": [ "string", "null" ] }, "laser_power": { "$ref": "#/definitions/RawValueUnit", "description": "Laser power used for the measurement." }, "attenuation_level": { "$ref": "#/definitions/RawValueUnit", "description": "Attenuation level applied to the incident laser, set automatically to keep the count rate in range." }, "acquisition_period": { "$ref": "#/definitions/RawValueUnit", "description": "Duration of a single acquisition." } }, "type": "object" }, "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" }, "SizeLimits": { "additionalProperties": false, "description": "Configured lower and upper size limits for DLS analysis.", "properties": { "low": { "$ref": "#/definitions/RawValueUnit", "description": "Lower size limit for the analysis." }, "high": { "$ref": "#/definitions/RawValueUnit", "description": "Upper size limit for the analysis." } }, "type": "object" } } }
- Validators:
- field dynamic_light_scattering: DLSMethodSettings#
DLS-specific method parameters (also carries the ELS/SLS optical configuration).
- Model LaserDiffraction[source]#
Bases:
IdsElementAdds the Laser Diffraction method settings. Inherit from this to support LD.
Show JSON schema
{ "description": "Adds the Laser Diffraction method settings. Inherit from this to support LD.", "type": "object", "properties": { "laser_diffraction": { "$ref": "#/definitions/LaserDiffractionMethodSettings", "description": "Laser diffraction-specific method parameters." } }, "additionalProperties": false, "definitions": { "DispersionUnit": { "additionalProperties": false, "description": "Configuration of the dispersion unit (wet or dry) that suspends and\ndelivers the sample to the laser diffraction measurement zone.", "properties": { "name": { "description": "Name/type of the dispersion unit.", "type": [ "string", "null" ] }, "stirrer_speed": { "$ref": "#/definitions/RawValueUnit", "description": "Stirrer speed of the wet dispersion unit." }, "ultrasound_power": { "$ref": "#/definitions/RawValueUnit", "description": "Ultrasound power applied to disperse/de-agglomerate the sample." }, "ultrasound_duration": { "$ref": "#/definitions/RawValueUnit", "description": "Duration for which ultrasound is applied." }, "ultrasound_mode": { "description": "Ultrasound application mode, e.g. 'continuous' or 'pre-measurement'.", "type": [ "string", "null" ] }, "venturi_type": { "description": "Venturi type for a dry dispersion unit.", "type": [ "string", "null" ] } }, "type": "object" }, "FeedRate": { "additionalProperties": false, "description": "Sample feed rate demand (configured) and achieved (measured) values.", "properties": { "demand": { "$ref": "#/definitions/RawValueUnit", "description": "Configured/demanded feed rate." }, "achieved": { "$ref": "#/definitions/RawValueUnit", "description": "Actual/achieved feed rate." } }, "type": "object" }, "LaserDiffractionMethodSettings": { "additionalProperties": false, "description": "Laser Diffraction method parameters (e.g. Mastersizer).", "properties": { "sop_file": { "description": "Name/path of the Standard Operating Procedure (SOP) file used.", "type": [ "string", "null" ] }, "scattering_model": { "description": "Scattering model used to invert the diffraction pattern, e.g. 'Mie' or 'Fraunhofer'.", "type": [ "string", "null" ] }, "analysis_model": { "description": "Analysis model applied, e.g. 'general purpose' or 'single narrow mode'.", "type": [ "string", "null" ] }, "sensitivity": { "description": "Analysis sensitivity setting, e.g. 'normal' or 'enhanced'.", "type": [ "string", "null" ] }, "result_emulation": { "description": "Result emulation setting used to reproduce results from an older instrument model.", "type": [ "string", "null" ] }, "fine_powder_mode": { "description": "Fine powder mode setting for dry dispersion of cohesive powders.", "type": [ "string", "null" ] }, "size_range": { "$ref": "#/definitions/SizeRange", "description": "Configured lower/upper size range for the analysis." }, "obscuration": { "$ref": "#/definitions/ObscurationLimits", "description": "Configured obscuration high/low limits." }, "feed_rate": { "$ref": "#/definitions/FeedRate", "description": "Sample feed rate demand and achieved values." }, "gauge_air_pressure_demand": { "$ref": "#/definitions/RawValueUnit", "description": "Configured gauge air pressure for a dry dispersion unit." }, "hopper_gap": { "$ref": "#/definitions/RawValueUnit", "description": "Hopper gap setting controlling dry sample feed." }, "dispersion_unit": { "$ref": "#/definitions/DispersionUnit", "description": "Configuration of the wet/dry dispersion unit." }, "measurement_time": { "$ref": "#/definitions/MeasurementTime", "description": "Background and sample measurement durations." } }, "type": "object" }, "MeasurementTime": { "additionalProperties": false, "description": "Background and sample measurement durations for a laser diffraction method.", "properties": { "background": { "$ref": "#/definitions/RawValueUnit", "description": "Duration of the background (blank) measurement." }, "sample": { "$ref": "#/definitions/RawValueUnit", "description": "Duration of the sample measurement." } }, "type": "object" }, "ObscurationLimits": { "additionalProperties": false, "description": "Configured obscuration (light attenuation) high/low limits for a laser diffraction method.", "properties": { "high_limit": { "$ref": "#/definitions/RawValueUnit", "description": "Upper obscuration limit." }, "low_limit": { "$ref": "#/definitions/RawValueUnit", "description": "Lower obscuration limit." } }, "type": "object" }, "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" }, "SizeRange": { "additionalProperties": false, "description": "Configured lower and upper size range for laser diffraction analysis.", "properties": { "low": { "$ref": "#/definitions/RawValueUnit", "description": "Lower bound of the analysis size range." }, "high": { "$ref": "#/definitions/RawValueUnit", "description": "Upper bound of the analysis size range." } }, "type": "object" } } }
- Validators:
- field laser_diffraction: LaserDiffractionMethodSettings#
Laser diffraction-specific method parameters.
- Model ObscurationLimits[source]#
Bases:
IdsElementConfigured obscuration (light attenuation) high/low limits for a laser diffraction method.
Show JSON schema
{ "description": "Configured obscuration (light attenuation) high/low limits for a laser diffraction method.", "type": "object", "properties": { "high_limit": { "$ref": "#/definitions/RawValueUnit", "description": "Upper obscuration limit." }, "low_limit": { "$ref": "#/definitions/RawValueUnit", "description": "Lower obscuration limit." } }, "additionalProperties": false, "definitions": { "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" } } }
- Validators:
- field high_limit: RawValueUnit#
Upper obscuration limit.
- field low_limit: RawValueUnit#
Lower obscuration limit.
- Model Particle[source]#
Bases:
IdsElementOptical properties of the analyte particle (material). The refractive index and absorption index are the material constants used by the scattering model (e.g. Mie theory for laser diffraction) to convert a scattering pattern into a size distribution.
The
*_bluevariants carry the constants at a second, shorter (blue) wavelength, reported by laser diffraction instruments (e.g. Mastersizer) that use a blue light source in addition to the red laser to improve resolution of fine particles.Show JSON schema
{ "description": "Optical properties of the analyte particle (material). The refractive\nindex and absorption index are the material constants used by the\nscattering model (e.g. Mie theory for laser diffraction) to convert a\nscattering pattern into a size distribution.\n\nThe ``*_blue`` variants carry the constants at a second, shorter (blue)\nwavelength, reported by laser diffraction instruments (e.g. Mastersizer)\nthat use a blue light source in addition to the red laser to improve\nresolution of fine particles.", "type": "object", "properties": { "name": { "description": "Name of the particle material, e.g. 'Polystyrene latex'.", "type": [ "string", "null" ] }, "refractive_index": { "$ref": "#/definitions/RawValueUnit", "description": "Real part of the particle's refractive index (at the primary/red wavelength)." }, "absorption_index": { "$ref": "#/definitions/RawValueUnit", "description": "Imaginary part (absorption) of the particle's refractive index (at the primary/red wavelength)." }, "refractive_index_blue": { "$ref": "#/definitions/RawValueUnit", "description": "Real part of the particle's refractive index at the blue wavelength (laser diffraction)." }, "absorption_index_blue": { "$ref": "#/definitions/RawValueUnit", "description": "Imaginary part (absorption) of the particle's refractive index at the blue wavelength (laser diffraction)." }, "density": { "$ref": "#/definitions/RawValueUnit", "description": "Density of the particle material, used to convert between volume- and mass-weighted results." }, "shape_model": { "description": "Particle shape model assumed by the analysis, e.g. 'spherical'.", "type": [ "string", "null" ] } }, "additionalProperties": false, "definitions": { "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" } } }
- Validators:
- field absorption_index: RawValueUnit#
Imaginary part (absorption) of the particle’s refractive index (at the primary/red wavelength).
- field absorption_index_blue: RawValueUnit#
Imaginary part (absorption) of the particle’s refractive index at the blue wavelength (laser diffraction).
- field density: RawValueUnit#
Density of the particle material, used to convert between volume- and mass-weighted results.
- field refractive_index: RawValueUnit#
Real part of the particle’s refractive index (at the primary/red wavelength).
- field refractive_index_blue: RawValueUnit#
Real part of the particle’s refractive index at the blue wavelength (laser diffraction).
- Model ParticleSizerRun[source]#
Bases:
RunA single particle sizer measurement run or sequence.
Show JSON schema
{ "description": "A single particle sizer measurement run or sequence.", "type": "object", "properties": { "id": { "description": "Unique identifier assigned to a specific run (execution) of an experiment.", "type": [ "string", "null" ] }, "name": { "description": "Name assigned to a specific run (execution) of an experiment.", "type": [ "string", "null" ] }, "logs": { "description": "Log messages recorded during a specific run (execution) of an experiment.", "items": { "type": "string" }, "type": "array" }, "pk": { "@primary_key": true, "description": "Primary key for this run, referenced by methods/results/datacubes belonging to it.", "type": "string" }, "record_id": { "description": "Vendor-assigned record identifier for this run, as stored in the raw file. Distinct from the generic ``id`` field, which is a user-facing run identifier.", "type": [ "string", "null" ] }, "comment": { "description": "Free-text comment or note recorded for this run.", "type": [ "string", "null" ] }, "time": { "$ref": "#/definitions/Time", "description": "Timestamps for the run: ``start`` and ``stop`` bound the measurement, and ``acquired`` records when the data was captured/exported." } }, "additionalProperties": false, "required": [ "pk" ], "definitions": { "RawTime": { "additionalProperties": false, "description": "The base model for capturing common time fields found in primary data.", "properties": { "start": { "description": "Process/experiment/task start time.", "type": [ "string", "null" ] }, "created": { "description": "Data created time.", "type": [ "string", "null" ] }, "stop": { "description": "Process/experiment/task stop/finish time.", "type": [ "string", "null" ] }, "duration": { "description": "Process/experiment/task duration.", "type": [ "string", "null" ] }, "last_updated": { "description": "Data last updated time of a file/method.", "type": [ "string", "null" ] }, "acquired": { "description": "Data acquired/exported/captured time.", "type": [ "string", "null" ] }, "modified": { "description": "Data last modified/edited time.", "type": [ "string", "null" ] }, "lookup": { "description": "Data lookup time.", "type": [ "string", "null" ] } }, "type": "object" }, "Time": { "additionalProperties": false, "description": "A model for datetime values converted to a standard ISO format and their\nrespective raw datetime values in the primary data.", "properties": { "start": { "description": "Process/experiment/task start time.", "type": [ "string", "null" ] }, "created": { "description": "Data created time.", "type": [ "string", "null" ] }, "stop": { "description": "Process/experiment/task stop/finish time.", "type": [ "string", "null" ] }, "duration": { "description": "Process/experiment/task duration.", "type": [ "string", "null" ] }, "last_updated": { "description": "Data last updated time of a file/method.", "type": [ "string", "null" ] }, "acquired": { "description": "Data acquired/exported/captured time.", "type": [ "string", "null" ] }, "modified": { "description": "Data last modified/edited time.", "type": [ "string", "null" ] }, "lookup": { "description": "Data lookup time.", "type": [ "string", "null" ] }, "raw": { "$ref": "#/definitions/RawTime", "description": "Raw time values from primary data." } }, "type": "object" } } }
- Validators:
- field pk: str#
Primary key for this run, referenced by methods/results/datacubes belonging to it.
- Constraints:
func = <function validate_uuid at 0x7f1493ac61f0>
json_schema_input_type = PydanticUndefined
- Model ParticleSizerSystem[source]#
Bases:
System,SerialNumber,Software,FirmwareInstrument system information common to particle sizer instruments, across Dynamic Light Scattering (DLS), Electrophoretic Light Scattering (ELS/Zeta), Static Light Scattering (SLS), and Laser Diffraction (LD) vendors (e.g. Malvern Zetasizer, Wyatt DynaPro, Malvern Mastersizer).
Show JSON schema
{ "description": "Instrument system information common to particle sizer instruments,\nacross Dynamic Light Scattering (DLS), Electrophoretic Light Scattering\n(ELS/Zeta), Static Light Scattering (SLS), and Laser Diffraction (LD)\nvendors (e.g. Malvern Zetasizer, Wyatt DynaPro, Malvern Mastersizer).", "type": "object", "properties": { "firmware": { "description": "System firmware metadata.", "items": { "$ref": "#/definitions/Firmware" }, "type": "array" }, "software": { "description": "Software applications that most recently handled the data (file) or the applications the data (file) is intended for. For example, applications can include Electronic Lab Notebooks (ELN), Instrument Control Software (ICS), Chromatography Data Systems (CDS), or instrument-specific analysis software.", "items": { "$ref": "#/definitions/Software" }, "type": "array" }, "serial_number": { "description": "System serial number. Indicates a unique instrument identifier within the same model line from a specific vendor. This is provided by the system vendor, unlike an ID or name which are usually created by the system owner or user.", "type": [ "string", "null" ] }, "vendor": { "description": "The instrument vendor or manufacturer, like 'PerkinElmer' or 'Agilent'.", "type": [ "string", "null" ] }, "model": { "description": "A specific model instrument type from a vendor.", "type": [ "string", "null" ] }, "type": { "description": "Indicates the type of instrument that's generating data.", "type": [ "string", "null" ] }, "pk": { "@primary_key": true, "description": "Primary key for this system, referenced by results/datacubes belonging to it.", "type": "string" }, "accessories": { "description": "Accessories or modules attached to the instrument (dispersion unit, autosampler, sample-prep chamber, additional detector channel, etc.). Empty when none are reported.", "items": { "$ref": "#/definitions/Accessory" }, "type": "array" } }, "additionalProperties": false, "required": [ "vendor", "model", "type", "pk" ], "definitions": { "Accessory": { "additionalProperties": false, "description": "An accessory or module attached to a particle sizer instrument -- e.g. a\ndispersion unit (Malvern Mastersizer's Hydro/Aero), an autosampler, a\nsample-prep chamber, or an additional detector channel.\n\nA particle sizer can be equipped with more than one accessory, so\n:py:class:`ParticleSizerSystem` holds these as a list. Modeled as an\nobject (rather than a bare serial-number string) so the serial number\nstays tied to the accessory it identifies and so additional accessory\nattributes can be captured as instruments report them. In some raw data\n(e.g. the Mastersizer CSV export) only the serial number is available, in\nwhich case ``name`` is left unset.", "properties": { "name": { "description": "Name or type of the accessory, e.g. 'Hydro MV' or 'Aero S'. Unset when the raw data reports only the serial number.", "type": [ "string", "null" ] }, "serial_number": { "description": "Serial number of the accessory, as reported by the instrument.", "type": [ "string", "null" ] } }, "type": "object" }, "Firmware": { "additionalProperties": false, "description": "System firmware metadata.", "properties": { "name": { "description": "Firmware name.", "type": [ "string", "null" ] }, "version": { "description": "Firmware version.", "type": [ "string", "null" ] } }, "required": [ "name", "version" ], "type": "object" }, "Software": { "additionalProperties": false, "description": "Software application that most recently handled the data (file) or the application\nthe data (file) is intended for. For example, applications can include Electronic\nLab Notebooks (ELN), Instrument Control Software (ICS), Chromatography Data Systems\n(CDS), or instrument-specific analysis software.", "properties": { "name": { "description": "Software name.", "type": [ "string", "null" ] }, "version": { "description": "Software version.", "type": [ "string", "null" ] } }, "required": [ "name", "version" ], "type": "object" } } }
- Validators:
- class ParticleSizerTechnique(value)[source]#
-
Standardized measurement technique for a particle sizer method. Each vendor reports the technique using a different raw value, which the task script should translate to one of these values rather than passing through verbatim.
DYNAMIC_LIGHT_SCATTERING– measures Brownian-motion-driven intensity fluctuations to size sub-micron particles.ELECTROPHORETIC_LIGHT_SCATTERING– measures particle electrophoretic mobility to determine zeta potential.STATIC_LIGHT_SCATTERING– measures time-averaged scattered intensity to determine molar mass (DynaPro, simultaneous with DLS).LASER_DIFFRACTION– measures the angular scattering pattern of a laser to size particles from sub-micron to millimetre.
- Model Plate[source]#
Bases:
IdsElementWell plate used by plate-reader DLS instruments (e.g. DynaPro Plate Reader), where each well holds a separate sample.
Show JSON schema
{ "description": "Well plate used by plate-reader DLS instruments (e.g. DynaPro Plate\nReader), where each well holds a separate sample.", "type": "object", "properties": { "brand": { "description": "Manufacturer/brand of the plate.", "type": [ "string", "null" ] }, "name": { "description": "Name or catalog identifier of the plate.", "type": [ "string", "null" ] }, "type": { "description": "Plate type/format, e.g. '96-well' or '384-well'.", "type": [ "string", "null" ] } }, "additionalProperties": false }
- Validators:
- Model PolydispersityIndex[source]#
Bases:
IdsElementPolydispersity index (PDI) from the cumulants fit: <0.1 indicates a monodisperse sample, >0.4 a broad or aggregated one. The computation differs between instruments – always check
definition.Show JSON schema
{ "description": "Polydispersity index (PDI) from the cumulants fit: <0.1 indicates a\nmonodisperse sample, >0.4 a broad or aggregated one. The computation\ndiffers between instruments -- always check ``definition``.", "type": "object", "properties": { "value": { "description": "Numeric PDI value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit of the PDI value (typically dimensionless).", "type": [ "string", "null" ] }, "definition": { "description": "Algorithm used to compute the PDI. The definitions are not interchangeable.", "example_values": [ "iso_22412", "percent_pd_over_100" ], "type": [ "string", "null" ] } }, "additionalProperties": false }
- Validators:
- class PolydispersityIndexDefinition(value)[source]#
-
Algorithm used to compute the polydispersity index (PDI). The two definitions are not interchangeable, so the definition must be recorded alongside the value.
ISO_22412– µ₂/Γ̄² from the cumulants fit (Zetasizer).PERCENT_PD_OVER_100– (%Pd/100)² (DynaPro).
- Model RegularizedFitPeak[source]#
Bases:
IdsElementA single peak from regularized NNLS deconvolution of the DLS ACF.
Show JSON schema
{ "description": "A single peak from regularized NNLS deconvolution of the DLS ACF.", "type": "object", "properties": { "dist": { "description": "Distribution index the peak belongs to.", "type": [ "number", "null" ] }, "peak_index": { "description": "Index of the peak within the distribution.", "type": [ "number", "null" ] }, "radius": { "$ref": "#/definitions/RawValueUnit", "description": "Hydrodynamic radius of the peak." }, "diffusion_coefficient": { "$ref": "#/definitions/RawValueUnit", "description": "Diffusion coefficient of the peak." }, "molecular_weight": { "$ref": "#/definitions/RawValueUnit", "description": "Molecular weight estimated for the peak." }, "polydispersity": { "$ref": "#/definitions/RawValueUnit", "description": "Polydispersity of the peak." }, "first_index": { "description": "Index of the first ACF grid point contributing to the peak.", "type": [ "number", "null" ] }, "number_of_points": { "description": "Number of ACF grid points contributing to the peak.", "type": [ "number", "null" ] }, "decay_time": { "$ref": "#/definitions/RawValueUnit", "description": "Characteristic decay time of the peak." }, "percent_intensity": { "$ref": "#/definitions/RawValueUnit", "description": "Contribution of the peak to the intensity-weighted distribution, as a percentage." }, "percent_mass": { "$ref": "#/definitions/RawValueUnit", "description": "Contribution of the peak to the mass/volume-weighted distribution, as a percentage." }, "percent_number": { "$ref": "#/definitions/RawValueUnit", "description": "Contribution of the peak to the number-weighted distribution, as a percentage." } }, "additionalProperties": false, "definitions": { "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" } } }
- Validators:
- field decay_time: RawValueUnit#
Characteristic decay time of the peak.
- field diffusion_coefficient: RawValueUnit#
Diffusion coefficient of the peak.
- field molecular_weight: RawValueUnit#
Molecular weight estimated for the peak.
- field percent_intensity: RawValueUnit#
Contribution of the peak to the intensity-weighted distribution, as a percentage.
- field percent_mass: RawValueUnit#
Contribution of the peak to the mass/volume-weighted distribution, as a percentage.
- field percent_number: RawValueUnit#
Contribution of the peak to the number-weighted distribution, as a percentage.
- field polydispersity: RawValueUnit#
Polydispersity of the peak.
- field radius: RawValueUnit#
Hydrodynamic radius of the peak.
- Model Result[source]#
Bases:
IdsElementA measurement result: the fields common to every technique (size distributions plus the foreign keys linking it back to its run, method, sample, and originating curve).
The technique-specific result blocks are not included here. As with
Method, a vendor-specific IDS composes only the blocks its instrument produces by inheriting from this base plus the relevant nested mixin classes – e.g.class MyResult(Result, Result.DynamicLightScattering, Result.ElectrophoreticLightScattering)for a DLS/ELS instrument.Show JSON schema
{ "description": "A measurement result: the fields common to every technique (size\ndistributions plus the foreign keys linking it back to its run, method,\nsample, and originating curve).\n\nThe technique-specific result blocks are *not* included here. As with\n:py:class:`Method <ts_ids_components.particle_sizer.method.Method>`, a\nvendor-specific IDS composes only the blocks its instrument produces by\ninheriting from this base plus the relevant nested mixin classes -- e.g.\n``class MyResult(Result, Result.DynamicLightScattering, Result.ElectrophoreticLightScattering)``\nfor a DLS/ELS instrument.", "type": "object", "properties": { "pk": { "@primary_key": true, "description": "Primary key for this result.", "type": "string" }, "analysis_pass": { "description": "Zetasizer-specific analysis pass. Two ``Result`` entries per measurement (one per pass). DynaPro and Mastersizer set null.", "example_values": [ "filtered", "unfiltered" ], "type": [ "string", "null" ] }, "size_distributions": { "description": "Size distributions for this result, one per weighting (shared across DLS and Laser Diffraction).", "items": { "$ref": "#/definitions/SizeDistribution" }, "type": "array" }, "fk_run": { "@foreign_key": "/properties/runs/items/properties/pk", "description": "Foreign key to the run that produced this result.", "type": "string" }, "fk_method": { "@foreign_key": "/properties/methods/items/properties/pk", "description": "Foreign key to the method used for this result.", "type": "string" }, "fk_sample": { "@foreign_key": "/properties/samples/items/properties/pk", "description": "Foreign key to the sample. Essential for plate-reader instruments where one run produces results for many samples.", "type": "string" }, "fk_curve": { "@foreign_key": "/properties/curves/items/properties/pk", "description": "Foreign key to the raw curve (in the ``curves`` array) this result was derived from. See :py:class:`CurveFile <ts_ids_components.particle_sizer.curve.CurveFile>`. When a result has no corresponding curve, point this at a placeholder curve entry so the foreign key is always satisfied.", "type": "string" } }, "additionalProperties": false, "required": [ "pk", "fk_run", "fk_method", "fk_sample", "fk_curve" ], "definitions": { "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" }, "SizeDistribution": { "additionalProperties": false, "description": "A size distribution result for a given weighting, summarized by its\npercentile statistics and constituent peaks.", "properties": { "weighting": { "description": "Statistical weighting of the distribution.", "example_values": [ "intensity", "volume", "mass", "number" ], "type": [ "string", "null" ] }, "source": { "description": "Analysis/source that produced the distribution, e.g. 'cumulants' or 'distribution analysis'.", "type": [ "string", "null" ] }, "d10": { "$ref": "#/definitions/RawValueUnit", "description": "10th percentile size: 10% of the distribution lies below this size." }, "d50": { "$ref": "#/definitions/RawValueUnit", "description": "50th percentile (median) size." }, "d90": { "$ref": "#/definitions/RawValueUnit", "description": "90th percentile size: 90% of the distribution lies below this size." }, "span": { "$ref": "#/definitions/RawValueUnit", "description": "Distribution width, (d90 - d10) / d50." }, "peaks": { "description": "Individual peaks that make up the distribution.", "items": { "$ref": "#/definitions/SizeDistributionPeak" }, "type": "array" } }, "type": "object" }, "SizeDistributionPeak": { "additionalProperties": false, "description": "A single peak within a size distribution.", "properties": { "mean": { "$ref": "#/definitions/RawValueUnit", "description": "Mean size of the peak." }, "mode": { "$ref": "#/definitions/RawValueUnit", "description": "Modal (most frequent) size of the peak." }, "standard_deviation": { "$ref": "#/definitions/RawValueUnit", "description": "Standard deviation (width) of the peak." }, "area": { "$ref": "#/definitions/RawValueUnit", "description": "Area under the peak." }, "radius": { "$ref": "#/definitions/RawValueUnit", "description": "Radius corresponding to the peak." }, "polydispersity": { "$ref": "#/definitions/RawValueUnit", "description": "Polydispersity of the peak." }, "molecular_weight": { "$ref": "#/definitions/RawValueUnit", "description": "Molecular weight estimated for the peak." }, "diffusion_coefficient": { "$ref": "#/definitions/RawValueUnit", "description": "Diffusion coefficient corresponding to the peak." }, "percent_intensity": { "$ref": "#/definitions/RawValueUnit", "description": "Contribution of the peak to the intensity-weighted distribution, as a percentage." }, "percent_mass": { "$ref": "#/definitions/RawValueUnit", "description": "Contribution of the peak to the mass/volume-weighted distribution, as a percentage." }, "percent_number": { "$ref": "#/definitions/RawValueUnit", "description": "Contribution of the peak to the number-weighted distribution, as a percentage." } }, "type": "object" } } }
- Validators:
- field analysis_pass: str | None#
Zetasizer-specific analysis pass. Two
Resultentries per measurement (one per pass). DynaPro and Mastersizer set null.
- field fk_curve: str#
Foreign key to the raw curve (in the
curvesarray) this result was derived from. SeeCurveFile. When a result has no corresponding curve, point this at a placeholder curve entry so the foreign key is always satisfied.- Constraints:
func = <function validate_uuid at 0x7f1493ac61f0>
json_schema_input_type = PydanticUndefined
ids_field_arg = primary_key
pk_reference_field = @foreign_key
- field fk_method: str#
Foreign key to the method used for this result.
- Constraints:
func = <function validate_uuid at 0x7f1493ac61f0>
json_schema_input_type = PydanticUndefined
ids_field_arg = primary_key
pk_reference_field = @foreign_key
- field fk_run: str#
Foreign key to the run that produced this result.
- Constraints:
func = <function validate_uuid at 0x7f1493ac61f0>
json_schema_input_type = PydanticUndefined
ids_field_arg = primary_key
pk_reference_field = @foreign_key
- field fk_sample: str#
Foreign key to the sample. Essential for plate-reader instruments where one run produces results for many samples.
- Constraints:
func = <function validate_uuid at 0x7f1493ac61f0>
json_schema_input_type = PydanticUndefined
ids_field_arg = primary_key
pk_reference_field = @foreign_key
- field pk: str#
Primary key for this result.
- Constraints:
func = <function validate_uuid at 0x7f1493ac61f0>
json_schema_input_type = PydanticUndefined
- field size_distributions: List[SizeDistribution]#
Size distributions for this result, one per weighting (shared across DLS and Laser Diffraction).
- Model DynamicLightScattering[source]#
Bases:
IdsElementAdds the Dynamic Light Scattering result block.
Show JSON schema
{ "description": "Adds the Dynamic Light Scattering result block.", "type": "object", "properties": { "dynamic_light_scattering": { "$ref": "#/definitions/DLSResult", "description": "Dynamic Light Scattering results." } }, "additionalProperties": false, "definitions": { "CumulantFit": { "additionalProperties": false, "description": "Cumulant analysis fit parameters from the DLS autocorrelation function\n(ACF). Regularized NNLS deconvolution yields amplitude, decay time, and\ndiffusion coefficient from the fitted ACF decay.", "properties": { "amplitude": { "$ref": "#/definitions/RawValueUnit", "description": "Fitted amplitude (intercept) of the ACF." }, "decay_time": { "$ref": "#/definitions/RawValueUnit", "description": "Characteristic decay time of the ACF." }, "diffusion_coefficient": { "$ref": "#/definitions/RawValueUnit", "description": "Translational diffusion coefficient from the fit." }, "radius": { "$ref": "#/definitions/RawValueUnit", "description": "Hydrodynamic radius from the fit." }, "molecular_weight": { "$ref": "#/definitions/RawValueUnit", "description": "Molecular weight estimated from the fit." }, "viscosity": { "$ref": "#/definitions/RawValueUnit", "description": "Viscosity used in the fit." }, "q": { "$ref": "#/definitions/RawValueUnit", "description": "Scattering vector magnitude used in the fit." }, "polydispersity": { "$ref": "#/definitions/RawValueUnit", "description": "Polydispersity from the fit." }, "polydispersity_index": { "$ref": "#/definitions/RawValueUnit", "description": "Polydispersity index from the fit." }, "polydispersity_percent": { "$ref": "#/definitions/RawValueUnit", "description": "Polydispersity expressed as a percentage." }, "baseline": { "$ref": "#/definitions/RawValueUnit", "description": "Fitted baseline of the ACF." }, "sos_error": { "$ref": "#/definitions/RawValueUnit", "description": "Sum-of-squares error of the fit." }, "lambda": { "$ref": "#/definitions/RawValueUnit", "description": "Regularization parameter used in the deconvolution." }, "sigma": { "$ref": "#/definitions/RawValueUnit", "description": "Standard deviation (width) parameter of the fit." }, "first_cumulant": { "$ref": "#/definitions/RawValueUnit", "description": "First cumulant (mean decay rate)." }, "second_cumulant": { "$ref": "#/definitions/RawValueUnit", "description": "Second cumulant (variance of the decay rate)." }, "measured_baseline": { "$ref": "#/definitions/RawValueUnit", "description": "Measured (as opposed to fitted) baseline." }, "fit_error": { "$ref": "#/definitions/RawValueUnit", "description": "Overall error metric of the fit." }, "order_of_fit": { "description": "Order of the cumulant polynomial fit.", "type": [ "number", "null" ] } }, "type": "object" }, "DLSAcquisition": { "additionalProperties": false, "description": "A single DLS acquisition within a measurement, with its own fit results.", "properties": { "index": { "description": "Index of the acquisition within the measurement.", "type": [ "number", "null" ] }, "cumulant_fit": { "$ref": "#/definitions/CumulantFit", "description": "Cumulant fit for this acquisition." }, "regularized_fit_peaks": { "description": "Peaks from the regularized fit of this acquisition.", "items": { "$ref": "#/definitions/RegularizedFitPeak" }, "type": "array" } }, "type": "object" }, "DLSResult": { "additionalProperties": false, "description": "Dynamic Light Scattering (DLS) specific results.", "properties": { "z_average": { "$ref": "#/definitions/ZAverage", "description": "Intensity-weighted harmonic mean hydrodynamic size from the cumulants fit. Zetasizer reports diameter natively; DynaPro reports radius natively." }, "polydispersity_index": { "$ref": "#/definitions/PolydispersityIndex", "description": "PDI from the cumulants fit. <0.1 monodisperse, >0.4 broad/aggregated. Definition differs between instruments -- check the ``definition`` field." }, "diffusion_coefficient": { "$ref": "#/definitions/RawValueUnit", "description": "Translational diffusion coefficient from the cumulants fit." }, "intercept": { "$ref": "#/definitions/RawValueUnit", "description": "ACF y-intercept at tau=0. Data quality indicator; ideal = 1.0." }, "mean_count_rate": { "$ref": "#/definitions/RawValueUnit", "description": "Photon count rate in kcps. Signal strength indicator." }, "derived_mean_count_rate": { "$ref": "#/definitions/RawValueUnit", "description": "Derived (attenuation-corrected) mean count rate." }, "in_range": { "$ref": "#/definitions/RawValueUnit", "description": "Fraction of the signal within the configured size range." }, "quality_indicator": { "description": "Overall data-quality verdict reported by the instrument, e.g. 'good' or a warning message.", "type": [ "string", "null" ] }, "number_of_runs": { "description": "Number of sub-runs/acquisitions averaged into this result.", "type": [ "number", "null" ] }, "run_retention": { "$ref": "#/definitions/RawValueUnit", "description": "Fraction of sub-runs retained after quality filtering." }, "particle_concentration": { "$ref": "#/definitions/RawValueUnit", "description": "Estimated particle concentration." }, "cumulant_fit": { "$ref": "#/definitions/CumulantFit", "description": "Cumulant fit for the averaged measurement." }, "regularized_fit_peaks": { "description": "Peaks from the regularized fit of the averaged measurement.", "items": { "$ref": "#/definitions/RegularizedFitPeak" }, "type": "array" }, "acquisitions": { "description": "Per-acquisition results within the measurement.", "items": { "$ref": "#/definitions/DLSAcquisition" }, "type": "array" }, "average_instrument_reading": { "$ref": "#/definitions/InstrumentReading", "description": "Average instrument reading over all acquisitions." }, "derived": { "$ref": "#/definitions/DerivedAnalysis", "description": "Derived concentration-dependent analysis (DynaPro SLS companion)." } }, "type": "object" }, "DerivedAnalysis": { "additionalProperties": false, "description": "Derived concentration-dependent analysis from DLS (DynaPro SLS\ncompanion), computed across a concentration series.", "properties": { "kd": { "$ref": "#/definitions/RawValueUnit", "description": "Diffusion interaction parameter (k_D) from the concentration series." }, "a2": { "$ref": "#/definitions/RawValueUnit", "description": "Second virial coefficient (A2) from the concentration series." }, "tagg": { "$ref": "#/definitions/RawValueUnit", "description": "Aggregation onset temperature (T_agg), when a thermal ramp is run." } }, "type": "object" }, "InstrumentReading": { "additionalProperties": false, "description": "Average instrument reading over all acquisitions in a measurement.", "properties": { "intensity": { "$ref": "#/definitions/RawValueUnit", "description": "Average scattered light intensity." }, "temperature": { "$ref": "#/definitions/RawValueUnit", "description": "Average measured temperature." }, "time": { "$ref": "#/definitions/RawValueUnit", "description": "Average acquisition time." } }, "type": "object" }, "PolydispersityIndex": { "additionalProperties": false, "description": "Polydispersity index (PDI) from the cumulants fit: <0.1 indicates a\nmonodisperse sample, >0.4 a broad or aggregated one. The computation\ndiffers between instruments -- always check ``definition``.", "properties": { "value": { "description": "Numeric PDI value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit of the PDI value (typically dimensionless).", "type": [ "string", "null" ] }, "definition": { "description": "Algorithm used to compute the PDI. The definitions are not interchangeable.", "example_values": [ "iso_22412", "percent_pd_over_100" ], "type": [ "string", "null" ] } }, "type": "object" }, "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" }, "RegularizedFitPeak": { "additionalProperties": false, "description": "A single peak from regularized NNLS deconvolution of the DLS ACF.", "properties": { "dist": { "description": "Distribution index the peak belongs to.", "type": [ "number", "null" ] }, "peak_index": { "description": "Index of the peak within the distribution.", "type": [ "number", "null" ] }, "radius": { "$ref": "#/definitions/RawValueUnit", "description": "Hydrodynamic radius of the peak." }, "diffusion_coefficient": { "$ref": "#/definitions/RawValueUnit", "description": "Diffusion coefficient of the peak." }, "molecular_weight": { "$ref": "#/definitions/RawValueUnit", "description": "Molecular weight estimated for the peak." }, "polydispersity": { "$ref": "#/definitions/RawValueUnit", "description": "Polydispersity of the peak." }, "first_index": { "description": "Index of the first ACF grid point contributing to the peak.", "type": [ "number", "null" ] }, "number_of_points": { "description": "Number of ACF grid points contributing to the peak.", "type": [ "number", "null" ] }, "decay_time": { "$ref": "#/definitions/RawValueUnit", "description": "Characteristic decay time of the peak." }, "percent_intensity": { "$ref": "#/definitions/RawValueUnit", "description": "Contribution of the peak to the intensity-weighted distribution, as a percentage." }, "percent_mass": { "$ref": "#/definitions/RawValueUnit", "description": "Contribution of the peak to the mass/volume-weighted distribution, as a percentage." }, "percent_number": { "$ref": "#/definitions/RawValueUnit", "description": "Contribution of the peak to the number-weighted distribution, as a percentage." } }, "type": "object" }, "ZAverage": { "additionalProperties": false, "description": "Intensity-weighted harmonic mean hydrodynamic size from the cumulants\nfit. The Zetasizer reports diameter natively; DynaPro reports radius\nnatively.", "properties": { "diameter": { "$ref": "#/definitions/RawValueUnit", "description": "Z-average hydrodynamic diameter." }, "radius": { "$ref": "#/definitions/RawValueUnit", "description": "Z-average hydrodynamic radius." } }, "type": "object" } } }
- Validators:
- Model ElectrophoreticLightScattering[source]#
Bases:
IdsElementAdds the Electrophoretic Light Scattering (zeta potential) result block.
Show JSON schema
{ "description": "Adds the Electrophoretic Light Scattering (zeta potential) result block.", "type": "object", "properties": { "electrophoretic_light_scattering": { "$ref": "#/definitions/ELSResult", "description": "Electrophoretic Light Scattering / zeta potential results." } }, "additionalProperties": false, "definitions": { "ELSResult": { "additionalProperties": false, "description": "Electrophoretic Light Scattering (ELS) / zeta potential results.", "properties": { "potential": { "$ref": "#/definitions/RawValueUnit", "description": "Zeta potential." }, "zeta_deviation": { "$ref": "#/definitions/RawValueUnit", "description": "Standard deviation (width) of the zeta potential distribution." }, "mobility": { "$ref": "#/definitions/RawValueUnit", "description": "Electrophoretic mobility." }, "model": { "description": "Model used to convert mobility to zeta potential, e.g. 'Smoluchowski' or 'Huckel'.", "type": [ "string", "null" ] }, "conductivity": { "$ref": "#/definitions/RawValueUnit", "description": "Conductivity of the dispersant." }, "mean_count_rate": { "$ref": "#/definitions/RawValueUnit", "description": "Photon count rate in kcps during the ELS measurement." }, "quality_factor": { "$ref": "#/definitions/RawValueUnit", "description": "Data quality factor reported for the measurement." }, "effective_voltage": { "$ref": "#/definitions/RawValueUnit", "description": "Effective voltage applied across the cell." }, "measured_voltage": { "$ref": "#/definitions/RawValueUnit", "description": "Measured voltage across the cell." }, "measured_current": { "$ref": "#/definitions/RawValueUnit", "description": "Measured current through the cell." }, "distribution": { "$ref": "#/definitions/ZetaDistribution", "description": "Zeta potential distribution." } }, "type": "object" }, "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" }, "ZetaDistribution": { "additionalProperties": false, "description": "Zeta potential distribution, expressed as a set of peaks.", "properties": { "peaks": { "description": "Peaks that make up the zeta potential distribution.", "items": { "$ref": "#/definitions/ZetaDistributionPeak" }, "type": "array" } }, "type": "object" }, "ZetaDistributionPeak": { "additionalProperties": false, "description": "A single peak in a zeta potential distribution.", "properties": { "mean": { "$ref": "#/definitions/RawValueUnit", "description": "Mean zeta potential of the peak." }, "area": { "$ref": "#/definitions/RawValueUnit", "description": "Area (relative contribution) of the peak." } }, "type": "object" } } }
- Validators:
- Model LaserDiffraction[source]#
Bases:
IdsElementAdds the Laser Diffraction result block.
Show JSON schema
{ "description": "Adds the Laser Diffraction result block.", "type": "object", "properties": { "laser_diffraction": { "$ref": "#/definitions/LaserDiffractionResult", "description": "Laser Diffraction results." } }, "additionalProperties": false, "definitions": { "AdditionalStatistic": { "additionalProperties": false, "description": "An additional Dxx percentile beyond the standard D10/D50/D90.", "properties": { "name": { "description": "Name of the percentile, e.g. 'D[v,0.25]'.", "type": [ "string", "null" ] }, "value": { "description": "Numeric value of the percentile.", "type": [ "number", "null" ] }, "unit": { "description": "Unit of the value, e.g. 'Micrometer'.", "type": [ "string", "null" ] } }, "type": "object" }, "LaserDiffractionResult": { "additionalProperties": false, "description": "Laser Diffraction specific results.", "properties": { "d10": { "$ref": "#/definitions/RawValueUnit", "description": "10th percentile size: 10% of the volume distribution lies below this size." }, "d50": { "$ref": "#/definitions/RawValueUnit", "description": "50th percentile (median) size." }, "d90": { "$ref": "#/definitions/RawValueUnit", "description": "90th percentile size: 90% of the volume distribution lies below this size." }, "span": { "$ref": "#/definitions/RawValueUnit", "description": "Distribution width, (d90 - d10) / d50." }, "volume_weighted_mean": { "$ref": "#/definitions/RawValueUnit", "description": "D[4,3] - volume-weighted mean diameter." }, "surface_weighted_mean": { "$ref": "#/definitions/RawValueUnit", "description": "D[3,2] - surface-weighted mean diameter (Sauter mean)." }, "obscuration": { "$ref": "#/definitions/RawValueUnit", "description": "Obscuration (fraction of light attenuated) during the measurement." }, "concentration": { "$ref": "#/definitions/RawValueUnit", "description": "Sample concentration in the measurement zone." }, "weighted_residual": { "$ref": "#/definitions/RawValueUnit", "description": "Weighted residual of the model fit to the diffraction pattern; a goodness-of-fit indicator." }, "uniformity": { "$ref": "#/definitions/RawValueUnit", "description": "Uniformity of the size distribution." }, "specific_surface_area": { "$ref": "#/definitions/RawValueUnit", "description": "Specific surface area computed from the volume distribution." }, "additional_statistics": { "description": "Additional Dxx percentiles beyond D10/D50/D90.", "items": { "$ref": "#/definitions/AdditionalStatistic" }, "type": "array" } }, "type": "object" }, "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" } } }
- Validators:
- field laser_diffraction: LaserDiffractionResult#
Laser Diffraction results.
- Model StaticLightScattering[source]#
Bases:
IdsElementAdds the Static Light Scattering result block.
Show JSON schema
{ "description": "Adds the Static Light Scattering result block.", "type": "object", "properties": { "static_light_scattering": { "$ref": "#/definitions/SLSResult", "description": "Static Light Scattering results." } }, "additionalProperties": false, "definitions": { "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" }, "SLSResult": { "additionalProperties": false, "description": "Static Light Scattering (SLS) results (DynaPro only, simultaneous with DLS).", "properties": { "molar_mass": { "$ref": "#/definitions/RawValueUnit", "description": "Molar mass from the static scattering intensity." }, "particle_concentration": { "$ref": "#/definitions/RawValueUnit", "description": "Particle concentration used in the SLS calculation." }, "error": { "description": "Error/warning message for the SLS calculation, when present.", "type": [ "string", "null" ] } }, "type": "object" } } }
- Validators:
- class ResultAnalysisPass(value)[source]#
-
Zetasizer-specific analysis pass. The Zetasizer reports two
Resultentries per measurement, one for each pass. DynaPro and Mastersizer set this to null.
- Model SLSResult[source]#
Bases:
IdsElementStatic Light Scattering (SLS) results (DynaPro only, simultaneous with DLS).
Show JSON schema
{ "description": "Static Light Scattering (SLS) results (DynaPro only, simultaneous with DLS).", "type": "object", "properties": { "molar_mass": { "$ref": "#/definitions/RawValueUnit", "description": "Molar mass from the static scattering intensity." }, "particle_concentration": { "$ref": "#/definitions/RawValueUnit", "description": "Particle concentration used in the SLS calculation." }, "error": { "description": "Error/warning message for the SLS calculation, when present.", "type": [ "string", "null" ] } }, "additionalProperties": false, "definitions": { "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" } } }
- Validators:
- field molar_mass: RawValueUnit#
Molar mass from the static scattering intensity.
- field particle_concentration: RawValueUnit#
Particle concentration used in the SLS calculation.
- Model SizeDistribution[source]#
Bases:
IdsElementA size distribution result for a given weighting, summarized by its percentile statistics and constituent peaks.
Show JSON schema
{ "description": "A size distribution result for a given weighting, summarized by its\npercentile statistics and constituent peaks.", "type": "object", "properties": { "weighting": { "description": "Statistical weighting of the distribution.", "example_values": [ "intensity", "volume", "mass", "number" ], "type": [ "string", "null" ] }, "source": { "description": "Analysis/source that produced the distribution, e.g. 'cumulants' or 'distribution analysis'.", "type": [ "string", "null" ] }, "d10": { "$ref": "#/definitions/RawValueUnit", "description": "10th percentile size: 10% of the distribution lies below this size." }, "d50": { "$ref": "#/definitions/RawValueUnit", "description": "50th percentile (median) size." }, "d90": { "$ref": "#/definitions/RawValueUnit", "description": "90th percentile size: 90% of the distribution lies below this size." }, "span": { "$ref": "#/definitions/RawValueUnit", "description": "Distribution width, (d90 - d10) / d50." }, "peaks": { "description": "Individual peaks that make up the distribution.", "items": { "$ref": "#/definitions/SizeDistributionPeak" }, "type": "array" } }, "additionalProperties": false, "definitions": { "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" }, "SizeDistributionPeak": { "additionalProperties": false, "description": "A single peak within a size distribution.", "properties": { "mean": { "$ref": "#/definitions/RawValueUnit", "description": "Mean size of the peak." }, "mode": { "$ref": "#/definitions/RawValueUnit", "description": "Modal (most frequent) size of the peak." }, "standard_deviation": { "$ref": "#/definitions/RawValueUnit", "description": "Standard deviation (width) of the peak." }, "area": { "$ref": "#/definitions/RawValueUnit", "description": "Area under the peak." }, "radius": { "$ref": "#/definitions/RawValueUnit", "description": "Radius corresponding to the peak." }, "polydispersity": { "$ref": "#/definitions/RawValueUnit", "description": "Polydispersity of the peak." }, "molecular_weight": { "$ref": "#/definitions/RawValueUnit", "description": "Molecular weight estimated for the peak." }, "diffusion_coefficient": { "$ref": "#/definitions/RawValueUnit", "description": "Diffusion coefficient corresponding to the peak." }, "percent_intensity": { "$ref": "#/definitions/RawValueUnit", "description": "Contribution of the peak to the intensity-weighted distribution, as a percentage." }, "percent_mass": { "$ref": "#/definitions/RawValueUnit", "description": "Contribution of the peak to the mass/volume-weighted distribution, as a percentage." }, "percent_number": { "$ref": "#/definitions/RawValueUnit", "description": "Contribution of the peak to the number-weighted distribution, as a percentage." } }, "type": "object" } } }
- Validators:
- field d10: RawValueUnit#
10th percentile size: 10% of the distribution lies below this size.
- field d50: RawValueUnit#
50th percentile (median) size.
- field d90: RawValueUnit#
90th percentile size: 90% of the distribution lies below this size.
- field peaks: List[SizeDistributionPeak]#
Individual peaks that make up the distribution.
- field source: str | None#
Analysis/source that produced the distribution, e.g. ‘cumulants’ or ‘distribution analysis’.
- field span: RawValueUnit#
Distribution width, (d90 - d10) / d50.
- Model SizeDistributionPeak[source]#
Bases:
IdsElementA single peak within a size distribution.
Show JSON schema
{ "description": "A single peak within a size distribution.", "type": "object", "properties": { "mean": { "$ref": "#/definitions/RawValueUnit", "description": "Mean size of the peak." }, "mode": { "$ref": "#/definitions/RawValueUnit", "description": "Modal (most frequent) size of the peak." }, "standard_deviation": { "$ref": "#/definitions/RawValueUnit", "description": "Standard deviation (width) of the peak." }, "area": { "$ref": "#/definitions/RawValueUnit", "description": "Area under the peak." }, "radius": { "$ref": "#/definitions/RawValueUnit", "description": "Radius corresponding to the peak." }, "polydispersity": { "$ref": "#/definitions/RawValueUnit", "description": "Polydispersity of the peak." }, "molecular_weight": { "$ref": "#/definitions/RawValueUnit", "description": "Molecular weight estimated for the peak." }, "diffusion_coefficient": { "$ref": "#/definitions/RawValueUnit", "description": "Diffusion coefficient corresponding to the peak." }, "percent_intensity": { "$ref": "#/definitions/RawValueUnit", "description": "Contribution of the peak to the intensity-weighted distribution, as a percentage." }, "percent_mass": { "$ref": "#/definitions/RawValueUnit", "description": "Contribution of the peak to the mass/volume-weighted distribution, as a percentage." }, "percent_number": { "$ref": "#/definitions/RawValueUnit", "description": "Contribution of the peak to the number-weighted distribution, as a percentage." } }, "additionalProperties": false, "definitions": { "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" } } }
- Validators:
- field area: RawValueUnit#
Area under the peak.
- field diffusion_coefficient: RawValueUnit#
Diffusion coefficient corresponding to the peak.
- field mean: RawValueUnit#
Mean size of the peak.
- field mode: RawValueUnit#
Modal (most frequent) size of the peak.
- field molecular_weight: RawValueUnit#
Molecular weight estimated for the peak.
- field percent_intensity: RawValueUnit#
Contribution of the peak to the intensity-weighted distribution, as a percentage.
- field percent_mass: RawValueUnit#
Contribution of the peak to the mass/volume-weighted distribution, as a percentage.
- field percent_number: RawValueUnit#
Contribution of the peak to the number-weighted distribution, as a percentage.
- field polydispersity: RawValueUnit#
Polydispersity of the peak.
- field radius: RawValueUnit#
Radius corresponding to the peak.
- field standard_deviation: RawValueUnit#
Standard deviation (width) of the peak.
- class SizeDistributionWeighting(value)[source]#
-
Statistical weighting of a size distribution. The same physical distribution can be expressed weighted by scattered intensity, by particle volume/mass, or by particle number; the three differ substantially for polydisperse samples, so the weighting must be preserved to interpret the distribution correctly.
- Model SizeLimits[source]#
Bases:
IdsElementConfigured lower and upper size limits for DLS analysis.
Show JSON schema
{ "description": "Configured lower and upper size limits for DLS analysis.", "type": "object", "properties": { "low": { "$ref": "#/definitions/RawValueUnit", "description": "Lower size limit for the analysis." }, "high": { "$ref": "#/definitions/RawValueUnit", "description": "Upper size limit for the analysis." } }, "additionalProperties": false, "definitions": { "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" } } }
- Validators:
- field high: RawValueUnit#
Upper size limit for the analysis.
- field low: RawValueUnit#
Lower size limit for the analysis.
- Model SizeRange[source]#
Bases:
IdsElementConfigured lower and upper size range for laser diffraction analysis.
Show JSON schema
{ "description": "Configured lower and upper size range for laser diffraction analysis.", "type": "object", "properties": { "low": { "$ref": "#/definitions/RawValueUnit", "description": "Lower bound of the analysis size range." }, "high": { "$ref": "#/definitions/RawValueUnit", "description": "Upper bound of the analysis size range." } }, "additionalProperties": false, "definitions": { "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" } } }
- Validators:
- field high: RawValueUnit#
Upper bound of the analysis size range.
- field low: RawValueUnit#
Lower bound of the analysis size range.
- Model Solvent[source]#
Bases:
IdsElementDispersant / solvent medium the particles are suspended in. Its refractive index and viscosity are required inputs to the Stokes-Einstein relation used to convert a measured diffusion coefficient into a hydrodynamic size, and its dielectric constant is required for ELS/zeta potential calculations.
Show JSON schema
{ "description": "Dispersant / solvent medium the particles are suspended in. Its\nrefractive index and viscosity are required inputs to the Stokes-Einstein\nrelation used to convert a measured diffusion coefficient into a\nhydrodynamic size, and its dielectric constant is required for ELS/zeta\npotential calculations.", "type": "object", "properties": { "id": { "description": "Vendor identifier for the dispersant in the instrument's material database.", "type": [ "string", "null" ] }, "name": { "description": "Name of the dispersant, e.g. 'Water'.", "type": [ "string", "null" ] }, "refractive_index": { "$ref": "#/definitions/RawValueUnit", "description": "Refractive index of the dispersant at the measurement wavelength." }, "viscosity": { "$ref": "#/definitions/RawValueUnit", "description": "Dynamic viscosity of the dispersant at the measurement temperature." }, "dielectric_constant": { "$ref": "#/definitions/RawValueUnit", "description": "Dielectric constant (relative permittivity) of the dispersant, used for ELS/zeta calculations." }, "abundance": { "$ref": "#/definitions/RawValueUnit", "description": "Relative abundance/fraction of this dispersant, when the medium is a mixture." } }, "additionalProperties": false, "definitions": { "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" } } }
- Validators:
- field abundance: RawValueUnit#
Relative abundance/fraction of this dispersant, when the medium is a mixture.
- field dielectric_constant: RawValueUnit#
Dielectric constant (relative permittivity) of the dispersant, used for ELS/zeta calculations.
- field id_: str | None (alias 'id')#
Vendor identifier for the dispersant in the instrument’s material database.
- field refractive_index: RawValueUnit#
Refractive index of the dispersant at the measurement wavelength.
- field viscosity: RawValueUnit#
Dynamic viscosity of the dispersant at the measurement temperature.
- Model Temperature[source]#
Bases:
IdsElementTarget (set-point) and actual (measured) temperature for a measurement.
Show JSON schema
{ "description": "Target (set-point) and actual (measured) temperature for a measurement.", "type": "object", "properties": { "target": { "$ref": "#/definitions/RawValueUnit", "description": "Target/set-point temperature configured for the measurement." }, "actual": { "$ref": "#/definitions/RawValueUnit", "description": "Actual temperature measured during the measurement." } }, "additionalProperties": false, "definitions": { "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" } } }
- Validators:
- field actual: RawValueUnit#
Actual temperature measured during the measurement.
- field target: RawValueUnit#
Target/set-point temperature configured for the measurement.
- Model ZAverage[source]#
Bases:
IdsElementIntensity-weighted harmonic mean hydrodynamic size from the cumulants fit. The Zetasizer reports diameter natively; DynaPro reports radius natively.
Show JSON schema
{ "description": "Intensity-weighted harmonic mean hydrodynamic size from the cumulants\nfit. The Zetasizer reports diameter natively; DynaPro reports radius\nnatively.", "type": "object", "properties": { "diameter": { "$ref": "#/definitions/RawValueUnit", "description": "Z-average hydrodynamic diameter." }, "radius": { "$ref": "#/definitions/RawValueUnit", "description": "Z-average hydrodynamic radius." } }, "additionalProperties": false, "definitions": { "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" } } }
- Validators:
- field diameter: RawValueUnit#
Z-average hydrodynamic diameter.
- field radius: RawValueUnit#
Z-average hydrodynamic radius.
- Model ZetaDistribution[source]#
Bases:
IdsElementZeta potential distribution, expressed as a set of peaks.
Show JSON schema
{ "description": "Zeta potential distribution, expressed as a set of peaks.", "type": "object", "properties": { "peaks": { "description": "Peaks that make up the zeta potential distribution.", "items": { "$ref": "#/definitions/ZetaDistributionPeak" }, "type": "array" } }, "additionalProperties": false, "definitions": { "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" }, "ZetaDistributionPeak": { "additionalProperties": false, "description": "A single peak in a zeta potential distribution.", "properties": { "mean": { "$ref": "#/definitions/RawValueUnit", "description": "Mean zeta potential of the peak." }, "area": { "$ref": "#/definitions/RawValueUnit", "description": "Area (relative contribution) of the peak." } }, "type": "object" } } }
- Validators:
- field peaks: List[ZetaDistributionPeak]#
Peaks that make up the zeta potential distribution.
- Model ZetaDistributionPeak[source]#
Bases:
IdsElementA single peak in a zeta potential distribution.
Show JSON schema
{ "description": "A single peak in a zeta potential distribution.", "type": "object", "properties": { "mean": { "$ref": "#/definitions/RawValueUnit", "description": "Mean zeta potential of the peak." }, "area": { "$ref": "#/definitions/RawValueUnit", "description": "Area (relative contribution) of the peak." } }, "additionalProperties": false, "definitions": { "RawValueUnit": { "additionalProperties": false, "description": "A value with a unit, including the raw representation of the value from the primary data.", "properties": { "value": { "description": "A numerical value.", "type": [ "number", "null" ] }, "unit": { "description": "Unit for the numerical value.", "type": [ "string", "null" ] }, "raw_value": { "description": "The raw, untransformed value from the primary data.", "type": [ "string", "null" ] } }, "required": [ "value", "unit", "raw_value" ], "type": "object" } } }
- Validators:
- field area: RawValueUnit#
Area (relative contribution) of the peak.
- field mean: RawValueUnit#
Mean zeta potential of the peak.