Skip to content

arizonaCameraLab/interferometricFocalPlanes

Repository files navigation

Official Repository for Interferometric Focal Planes

This repository contains the supporting code for the article Interferometric Focal Planes (under review). The code implements Monte Carlo simulations to estimate parameters in several prototype objects, including:

  • Two point sources
  • A line source
  • An edge source
  • A right-angle source

These simulations explore fixed and adaptive measurement strategies for mutual intensity measurement and compare them with the estimation results from intensity measurements. Jacobian matrices of the forward models are also calculated to determine the degrees of freedom of the system.


πŸ“Œ Code Structure

SimulationCode/
│── Corner/
β”‚ β”œβ”€β”€ CornerEstimation.m
β”‚ β”œβ”€β”€ JacobianCorner.m
β”‚ β”œβ”€β”€ MeasureCorner.m
β”‚
│── Edge/
β”‚ β”œβ”€β”€ EdgeEstimation.m
β”‚ β”œβ”€β”€ JacobianEdge.m
β”‚ β”œβ”€β”€ MeasureEdge.m
β”‚
│── Line/
β”‚ β”œβ”€β”€ Jacobian1Line.m
β”‚ β”œβ”€β”€ LineEstimation.m
β”‚ β”œβ”€β”€ MeasureLine.m
β”‚
│── twopoints/
β”‚ β”œβ”€β”€ Jacobian2P.m
β”‚ β”œβ”€β”€ Measurel2P2D.m
β”‚ β”œβ”€β”€ two_pts_estimation.m
β”‚
β”œβ”€β”€ README.md

The code is organized into different folders, each corresponding to a prototype object.

Each folder contains three MATLAB scripts:

  1. Main Program (*_Estimation.m)

    • Runs Monte Carlo simulations for parameter estimation.
    • Implements fixed and adaptive measurement strategies.
    • Uses a forward model to simulate measurements.
    • Includes visualization code to generate comparison plots.
  2. Forward Model (Measure*.m)

    • Defines the physical measurement process for the given object.
    • Used in the Monte Carlo simulations to generate synthetic data.
  3. Jacobian Calculation (Jacobian*.m)

    • Computes the Jacobian matrix of the forward model.

    • Not used in Monte Carlo simulations, but provides theoretical insights.

    • Used for visualizing degrees of freedom in parameter estimation.


πŸš€ How to Use

  1. Clone or download this repository.

  2. Open MATLAB in the SimulationCode directory.

  3. Choose a geometry and run its main script. For example, for the corner (right-angle) source:

    run Corner/CornerEstimation.m

βš™οΈ Requirements

This code is written in MATLAB R2022b and requires the following toolboxes:

  • Parallel Computing Toolbox (for parfor, used in Monte Carlo simulations)
  • Optimization Toolbox (for fminunc, used in Maximum Likelihood Estimation)

If running the code without a Parallel Computing Toolbox, replace parfor loops with for loops to ensure compatibility.

πŸ“ Citation & License

If you use this code, please cite our article Interferometric Focal Planes (once published).

License: This code is provided for research purposes only.

About

code used in the manuscript Interferometric Focal Planes

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors