piblin-jax

User Guide

  • Installation
    • Requirements
    • Basic Installation
    • GPU Support (Linux + CUDA 12+ Only)
      • Recommended Installation (Makefile)
      • Manual GPU Installation
      • Verify GPU Installation
      • Troubleshooting GPU Installation
    • Development Installation
      • Install Pre-commit Hooks
    • Verification
    • Optional Dependencies
    • Docker Installation
    • Next Steps
  • Quick Start Guide
    • Installation Reminder
    • Your First piblin-jax Program
      • Loading Data
      • Applying Transformations
      • Building a Pipeline
      • Visualization
      • Complete Example
    • Working with Collections
      • Measurements
      • Measurement Sets
    • Bayesian Parameter Estimation
      • Basic Fitting
      • Making Predictions
      • Available Models
    • piblin Compatibility
    • Performance Tips
      • JAX Backend
      • GPU Acceleration
      • Batch Processing
    • Next Steps
    • Getting Help
  • Core Concepts
    • Architecture Overview
      • Layered Architecture
      • Module Organization
      • Data Flow
    • Key Design Principles
    • Data Structures
      • Datasets
      • Collections
      • Metadata System
    • Transforms
      • Transform Types
      • Transform Pipeline
    • Backend Abstraction
    • Bayesian Inference
      • Model Structure
      • Built-in Models
      • Uncertainty Propagation
    • piblin Compatibility
      • Compatibility Layer
    • Performance Optimization
      • JAX Integration
      • Lazy Evaluation
      • Batching
    • Type System
    • Best Practices
    • Example: Complete Workflow
    • Next Steps
  • Uncertainty Quantification
    • Overview
    • Why Bayesian Methods?
      • Traditional vs Bayesian Fitting
      • Probabilistic Interpretation
    • Bayesian Workflow
      • Standard Analysis Pipeline
    • Built-in Models
      • Power-Law Model
      • Arrhenius Model
      • Cross Model
      • Carreau-Yasuda Model
    • MCMC Sampling
      • How MCMC Works
      • Sampling Parameters
      • Convergence Diagnostics
    • Posterior Analysis
      • Summary Statistics
      • Accessing Samples
      • Credible Intervals
      • Parameter Correlations
    • Model Comparison
      • Information Criteria
      • Bayes Factors
    • Uncertainty Propagation
      • Dataset Integration
      • Transform Propagation
      • Monte Carlo Propagation
    • Best Practices
      • Model Selection
      • Prior Selection
      • Computational Efficiency
      • Common Issues
    • Advanced Topics
      • Custom Models
      • Hierarchical Models
      • Model Averaging
    • References
    • Next Steps
  • Performance Guide
    • Overview
    • Quick Start
      • Check Your Backend
      • Basic Performance Tips
    • JAX Backend
      • JIT Compilation
      • Vectorization
    • GPU Acceleration
      • Installation
      • Verification
      • Automatic GPU Usage
      • When to Use GPU
      • Memory Management
    • Performance Optimization
      • Transform Optimization
      • Pipeline Optimization
      • Batch Processing
    • Profiling
      • Time Measurements
      • JAX Profiling
      • Memory Profiling
      • Bottleneck Analysis
    • Common Performance Patterns
      • Pattern 1: Precompute and Reuse
      • Pattern 2: In-Place Operations
      • Pattern 3: Lazy Evaluation
      • Pattern 4: Array Reuse
    • Benchmarks
      • Typical Performance
      • Real-World Examples
    • Optimization Checklist
      • Before Optimizing
      • During Optimization
      • After Optimization
    • Performance Anti-Patterns
    • Troubleshooting
      • Slow Performance
      • Memory Issues
      • GPU Not Used
      • Compilation Warnings
    • Further Reading
    • Hardware Recommendations
      • For Best Performance
      • Cost-Benefit Analysis
  • Migration from piblin
    • Quick Migration
    • API Compatibility
    • Performance Improvements
    • Testing Your Migration

Tutorials

  • Tutorials
    • Basic Workflow Tutorial
      • Overview
      • Step 1: Loading Data
        • Creating Sample Data
        • Loading from File
      • Step 2: Initial Visualization
      • Step 3: Data Smoothing
      • Step 4: Interpolation
      • Step 5: Building a Pipeline
      • Step 6: Region of Interest
      • Step 7: Numerical Derivatives
      • Step 8: Statistical Analysis
      • Step 9: Publication-Quality Plot
      • Step 10: Working with Multiple Samples
      • Summary
      • Next Steps
      • Complete Code
    • Uncertainty Quantification Tutorial
      • Why Uncertainty Quantification?
      • Basic Example: Power-Law Model
        • Generate Synthetic Data
        • Fit Bayesian Model
        • Examine Results
        • Extract Specific Parameters
        • Visualize Results
        • Make Predictions
      • Working with Datasets
      • Propagating Uncertainty Through Transforms
      • Advanced Example: Arrhenius Model
        • Generate Temperature-Dependent Data
        • Fit Arrhenius Model
        • Interpreting Results
      • Model Comparison
      • Tips and Best Practices
      • Next Steps
      • References
    • Custom Transforms Tutorial
      • Transform Hierarchy
      • Basic Custom Transform
        • Create a Simple Scaling Transform
        • Use the Transform
      • JIT-Compiled Transforms
      • Advanced Transform with Parameters
        • Moving Average Filter
      • Transform Pipelines
        • Combine Multiple Transforms
        • Conditional Pipeline
      • Multi-Level Transforms
        • Measurement-Level Transform
      • Uncertainty-Aware Transforms
        • Propagate Uncertainty
      • Best Practices
      • Real-World Example: Baseline Correction
        • Complete Transform Implementation
      • Next Steps
      • Tips
    • Rheological Models Tutorial
      • Overview of Rheological Models
      • Power-Law Model
        • Mathematical Form
        • Parameter Interpretation
        • NLSQ Fitting Example
        • Bayesian Fitting Example
        • Practical Example: Polymer Solution
      • Arrhenius Model
        • Mathematical Form
        • Physical Interpretation
        • Temperature Sensitivity
        • Practical Application: Cooking Oil
      • Cross Model
        • Mathematical Form
        • When to Use Cross Model
        • Fitting Example
        • Extract Physical Parameters
      • Carreau-Yasuda Model
        • Mathematical Form
        • Advantages
        • Fitting Example
      • Model Selection Guide
        • Decision Tree
        • Comparing Multiple Models
      • Practical Tips
        • Data Quality Requirements
        • Common Pitfalls
      • Next Steps
      • References
    • Advanced Pipeline Composition
      • Prerequisites
      • Overview
      • Conditional Pipelines
        • Apply Different Transforms Based on Data
        • Branching Logic with Factory Pattern
      • Parallel Pipeline Patterns
        • Split-Process-Merge Pattern
        • Multi-Stage Pipelines
      • Dynamic Pipeline Configuration
        • Adjust Parameters Based on Intermediate Results
        • Data-Driven Transform Selection
      • Pipeline Reusability Patterns
        • Building Pipeline Libraries
        • Composable Pipeline Builders
      • Error Handling in Pipelines
        • Robust Pipeline Execution
        • Validation and Debugging
      • Best Practices
      • Complete Example
      • Next Steps
    • GPU Acceleration Best Practices
      • Prerequisites
      • Installation for GPU Support
      • Overview
      • Checking GPU Availability
      • Understanding Performance Characteristics
        • CPU vs GPU Trade-offs
      • JIT Compilation
        • Basic JIT Usage
        • When to Use JIT
      • Batch Processing for GPU Efficiency
        • Processing Multiple Datasets
        • Vectorization with vmap
      • Memory Management
        • GPU Memory Constraints
        • Monitoring Memory Usage
      • Optimizing Transform Pipelines
        • Pipeline-Level Optimization
        • Custom GPU-Optimized Transforms
      • Performance Benchmarking
        • Measuring GPU Speedup
      • MCMC/Bayesian Acceleration
      • Common Issues and Solutions
        • Issue: GPU Not Detected
        • Issue: Out of Memory Errors
        • Issue: Slow First Execution
      • Best Practices Summary
      • Performance Comparison Table
      • Next Steps
    • Getting Started
    • Advanced Topics
  • Basic Workflow Tutorial
    • Overview
    • Step 1: Loading Data
      • Creating Sample Data
      • Loading from File
    • Step 2: Initial Visualization
    • Step 3: Data Smoothing
    • Step 4: Interpolation
    • Step 5: Building a Pipeline
    • Step 6: Region of Interest
    • Step 7: Numerical Derivatives
    • Step 8: Statistical Analysis
    • Step 9: Publication-Quality Plot
    • Step 10: Working with Multiple Samples
    • Summary
    • Next Steps
    • Complete Code
  • Uncertainty Quantification Tutorial
    • Why Uncertainty Quantification?
    • Basic Example: Power-Law Model
      • Generate Synthetic Data
      • Fit Bayesian Model
      • Examine Results
      • Extract Specific Parameters
      • Visualize Results
      • Make Predictions
    • Working with Datasets
    • Propagating Uncertainty Through Transforms
    • Advanced Example: Arrhenius Model
      • Generate Temperature-Dependent Data
      • Fit Arrhenius Model
      • Interpreting Results
    • Model Comparison
    • Tips and Best Practices
    • Next Steps
    • References
  • Custom Transforms Tutorial
    • Transform Hierarchy
    • Basic Custom Transform
      • Create a Simple Scaling Transform
      • Use the Transform
    • JIT-Compiled Transforms
    • Advanced Transform with Parameters
      • Moving Average Filter
    • Transform Pipelines
      • Combine Multiple Transforms
      • Conditional Pipeline
    • Multi-Level Transforms
      • Measurement-Level Transform
    • Uncertainty-Aware Transforms
      • Propagate Uncertainty
    • Best Practices
    • Real-World Example: Baseline Correction
      • Complete Transform Implementation
    • Next Steps
    • Tips
  • Rheological Models Tutorial
    • Overview of Rheological Models
    • Power-Law Model
      • Mathematical Form
      • Parameter Interpretation
      • NLSQ Fitting Example
      • Bayesian Fitting Example
      • Practical Example: Polymer Solution
    • Arrhenius Model
      • Mathematical Form
      • Physical Interpretation
      • Temperature Sensitivity
      • Practical Application: Cooking Oil
    • Cross Model
      • Mathematical Form
      • When to Use Cross Model
      • Fitting Example
      • Extract Physical Parameters
    • Carreau-Yasuda Model
      • Mathematical Form
      • Advantages
      • Fitting Example
    • Model Selection Guide
      • Decision Tree
      • Comparing Multiple Models
    • Practical Tips
      • Data Quality Requirements
      • Common Pitfalls
    • Next Steps
    • References

API Reference

  • API Reference
    • Data Structures
      • Overview
      • Quick Examples
        • Creating a 1D Dataset
        • Working with Metadata
        • Building Collections
      • See Also
      • API Reference
        • Module Contents
      • Datasets
        • Base Dataset
        • Zero-Dimensional Dataset
        • One-Dimensional Dataset
        • Two-Dimensional Dataset
        • Three-Dimensional Dataset
        • Composite Dataset
        • Distribution Dataset
        • Histogram Dataset
      • Collections
        • Measurement
        • MeasurementSet
        • ConsistentMeasurementSet
        • TabularMeasurementSet
        • TidyMeasurementSet
        • Experiment
        • ExperimentSet
      • Utilities
        • Metadata
        • Region of Interest (ROI)
    • Transformations
      • Overview
      • Quick Examples
        • Basic Transform Pipeline
        • Lazy Evaluation for Performance
        • Custom Lambda Transforms
      • See Also
      • API Reference
        • Module Contents
      • Base Transform Classes
        • DatasetTransform
        • ExperimentSetTransform
        • ExperimentTransform
        • MeasurementSetTransform
        • MeasurementTransform
        • Transform
        • jit_transform()
      • Pipeline
        • LazyPipeline
        • LazyResult
        • Pipeline
      • Region-Based Transforms
        • RegionMultiplyTransform
        • RegionTransform
      • Lambda and Dynamic Transforms
        • AutoBaselineTransform
        • AutoScaleTransform
        • DynamicTransform
        • LambdaTransform
      • Dataset Transforms
        • Overview
        • Smoothing Transforms
        • Interpolation Transforms
        • Normalization Transforms
        • Baseline Correction Transforms
        • Calculus Transforms
      • Measurement Transforms
        • Overview
        • Filtering Transforms
    • Bayesian Models
      • Overview
      • Quick Examples
        • Fitting a Power Law Model
        • Making Predictions with Uncertainty
        • Custom Priors and Advanced Usage
      • See Also
      • API Reference
        • Module Contents
      • Base Classes
      • Rheological Models
        • Power Law Model
        • Cross Model
        • Carreau-Yasuda Model
      • Thermal Models
        • Arrhenius Model
    • Curve Fitting
      • Overview
      • Quick Examples
        • Basic Curve Fitting
        • Automatic Initial Parameter Estimation
        • Working with Bounds and Constraints
      • See Also
      • API Reference
        • Module Contents
      • Non-Linear Least Squares
        • estimate_initial_parameters()
        • fit_curve()
    • Data I/O
      • Overview
      • Quick Examples
        • Reading a Single File
        • Reading Multiple Files
        • Reading Entire Directories
        • Registering Custom Readers
      • See Also
      • API Reference
        • Module Contents
      • Readers
        • Base Reader Interface
        • CSV Reader
        • TXT Reader
      • Hierarchy Building
        • build_hierarchy()
        • group_by_conditions()
        • identify_varying_conditions()
      • Writers
    • Backend Abstraction
      • Overview
      • Quick Examples
        • Basic Backend Detection
        • Using the Unified Array Interface
        • Device Information and Management
        • Array Conversion Utilities
      • See Also
      • API Reference
        • Module Contents
      • Operations
        • astype()
        • concatenate()
        • copy()
        • device_get()
        • device_put()
        • ensure_array()
        • grad()
        • jit()
        • reshape()
        • stack()
        • vmap()
    • Core Modules
  • Data Structures
    • Overview
    • Quick Examples
      • Creating a 1D Dataset
      • Working with Metadata
      • Building Collections
    • See Also
    • API Reference
      • Module Contents
    • Datasets
      • Base Dataset
      • Zero-Dimensional Dataset
      • One-Dimensional Dataset
      • Two-Dimensional Dataset
      • Three-Dimensional Dataset
      • Composite Dataset
      • Distribution Dataset
      • Histogram Dataset
    • Collections
      • Measurement
      • MeasurementSet
      • ConsistentMeasurementSet
      • TabularMeasurementSet
      • TidyMeasurementSet
      • Experiment
      • ExperimentSet
    • Utilities
      • Metadata
      • Region of Interest (ROI)
  • Transformations
    • Overview
    • Quick Examples
      • Basic Transform Pipeline
      • Lazy Evaluation for Performance
      • Custom Lambda Transforms
    • See Also
    • API Reference
      • Module Contents
        • AutoBaselineTransform
        • AutoScaleTransform
        • DatasetTransform
        • DynamicTransform
        • ExperimentSetTransform
        • ExperimentTransform
        • LambdaTransform
        • LazyPipeline
        • LazyResult
        • MeasurementSetTransform
        • MeasurementTransform
        • Pipeline
        • RegionMultiplyTransform
        • RegionTransform
        • Transform
        • jit_transform()
    • Base Transform Classes
      • DatasetTransform
        • DatasetTransform.apply_to()
      • ExperimentSetTransform
        • ExperimentSetTransform.apply_to()
      • ExperimentTransform
        • ExperimentTransform.apply_to()
      • MeasurementSetTransform
        • MeasurementSetTransform.apply_to()
      • MeasurementTransform
        • MeasurementTransform.apply_to()
      • Transform
        • Transform.__init__()
        • Transform.apply_to()
        • Transform.__call__()
      • jit_transform()
    • Pipeline
      • LazyPipeline
        • LazyPipeline.__init__()
        • LazyPipeline.apply_to()
        • LazyPipeline.invalidate_cache()
      • LazyResult
        • LazyResult.__init__()
        • LazyResult.__getattr__()
        • LazyResult.__setattr__()
        • LazyResult.__repr__()
      • Pipeline
        • Pipeline.__init__()
        • Pipeline.apply_to()
        • Pipeline.__getitem__()
        • Pipeline.__setitem__()
        • Pipeline.__delitem__()
        • Pipeline.__len__()
        • Pipeline.insert()
        • Pipeline.append()
        • Pipeline.__repr__()
        • Pipeline.__str__()
    • Region-Based Transforms
      • RegionMultiplyTransform
        • RegionMultiplyTransform.__init__()
      • RegionTransform
        • RegionTransform.__init__()
    • Lambda and Dynamic Transforms
      • AutoBaselineTransform
        • AutoBaselineTransform.__init__()
      • AutoScaleTransform
        • AutoScaleTransform.__init__()
      • DynamicTransform
        • DynamicTransform.__init__()
      • LambdaTransform
        • LambdaTransform.__init__()
    • Dataset Transforms
      • Overview
        • AsymmetricLeastSquaresBaseline
        • CumulativeIntegral
        • DefiniteIntegral
        • Derivative
        • GaussianSmooth
        • Interpolate1D
        • MaxNormalize
        • MinMaxNormalize
        • MovingAverageSmooth
        • PolynomialBaseline
        • RobustNormalize
        • ZScoreNormalize
      • Smoothing Transforms
      • Interpolation Transforms
      • Normalization Transforms
      • Baseline Correction Transforms
      • Calculus Transforms
    • Measurement Transforms
      • Overview
        • FilterDatasets
        • FilterMeasurements
        • MergeReplicates
        • SplitByRegion
      • Filtering Transforms
  • Bayesian Models
    • Overview
    • Quick Examples
      • Fitting a Power Law Model
      • Making Predictions with Uncertainty
      • Custom Priors and Advanced Usage
    • See Also
    • API Reference
      • Module Contents
    • Base Classes
    • Rheological Models
      • Power Law Model
      • Cross Model
      • Carreau-Yasuda Model
    • Thermal Models
      • Arrhenius Model
  • Curve Fitting
    • Overview
    • Quick Examples
      • Basic Curve Fitting
      • Automatic Initial Parameter Estimation
      • Working with Bounds and Constraints
    • See Also
    • API Reference
      • Module Contents
        • estimate_initial_parameters()
        • fit_curve()
    • Non-Linear Least Squares
      • estimate_initial_parameters()
      • fit_curve()
  • Data I/O
    • Overview
    • Quick Examples
      • Reading a Single File
      • Reading Multiple Files
      • Reading Entire Directories
      • Registering Custom Readers
    • See Also
    • API Reference
      • Module Contents
        • Main Functions
        • build_hierarchy()
        • detect_reader()
        • read_directories()
        • read_directory()
        • read_file()
        • read_files()
        • register_reader()
    • Readers
      • Base Reader Interface
        • GenericCSVReader
        • GenericTXTReader
        • detect_reader()
        • read_file()
        • register_reader()
      • CSV Reader
        • GenericCSVReader
      • TXT Reader
        • GenericTXTReader
    • Hierarchy Building
      • build_hierarchy()
      • group_by_conditions()
      • identify_varying_conditions()
    • Writers
  • Backend Abstraction
    • Overview
    • Quick Examples
      • Basic Backend Detection
      • Using the Unified Array Interface
      • Device Information and Management
      • Array Conversion Utilities
    • See Also
    • API Reference
      • Module Contents
        • from_numpy()
        • from_numpy_pytree()
        • get_backend()
        • get_device_info()
        • is_jax_available()
        • to_numpy()
        • to_numpy_pytree()
    • Operations
      • astype()
      • concatenate()
      • copy()
      • device_get()
      • device_put()
      • ensure_array()
      • grad()
      • jit()
      • reshape()
      • stack()
      • vmap()

Development

  • Contributing to piblin-jax
    • Development Setup
    • Code Style
    • Running Tests
    • Type Checking
    • Building Documentation
    • Adding New Features
      • Adding a New Transform
      • Adding a New Bayesian Model
    • Pull Request Process
      • Pull Request Checklist
    • Reporting Issues
    • Questions and Support
    • License
  • Changelog
    • [Unreleased]
      • Added
    • [0.1.0] - 2025-10-18
      • Added
piblin-jax
  • Python Module Index

Python Module Index

p
 
p
- piblin_jax
    piblin_jax.backend
    piblin_jax.backend.operations
    piblin_jax.data
    piblin_jax.dataio
    piblin_jax.dataio.hierarchy
    piblin_jax.dataio.readers
    piblin_jax.dataio.readers.csv
    piblin_jax.dataio.readers.txt
    piblin_jax.dataio.writers
    piblin_jax.fitting
    piblin_jax.fitting.nlsq
    piblin_jax.transform
    piblin_jax.transform.base
    piblin_jax.transform.dataset
    piblin_jax.transform.lambda_transform
    piblin_jax.transform.measurement
    piblin_jax.transform.pipeline
    piblin_jax.transform.region

© Copyright 2025, piblin-jax developers.

Built with Sphinx using a theme provided by Read the Docs.