GithubHelp home page GithubHelp logo

kramos966 / dirichlet_sources Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 155 KB

Set of programs used to compute the focal irradiances and degrees of coherence of partially coherent dirichlet sources.

License: GNU General Public License v3.0

Makefile 0.86% Fortran 57.39% Python 38.71% Cython 3.04%

dirichlet_sources's Introduction

dirichlet_sources

Set of programs used to compute the focal irradiances and degrees of coherence of partially coherent dirichlet sources. The code is divided into two folders, following two different methods. The main one, fft_method computes the focal polarization matrices using a dedicated fortran program, plotting the final results through python and matplotlib. The second one, used mainly to compute the degree of coherence at the focal plane of a highly focusing optical system, pygsl_dht, consists mostly of python code wrapping the GNU Scientific Library.

fft_method

To compile the program used to compute the compute the polarization matrices at different planes near the focal plane of a highly focusing optical system is done via the following command

make dirichlet

which, upong completion, creates an executable called dirichletinside the prg folder. After that, to compute the field between two planes separated by a distance 2z centered around z = 0, we just need to type

./dirichlet [N_lateral] [N_modes] [z] [l_focal] [NA]

where - N_lateral: lateral number of sampling points - N_modes: lateral number of sampling points - n_z: number of z planes to compute - z: maximum distance from focus - l_focal: Half size of the focal region window - NA: Numerical aperture - mode: Polarization mode, radial or azimuthal (optional, defaults radial)

pygsl_dht

First, we need to build the wrapping library using the script setup.py. After that, the degree of coherence at z = 0 can be computed and controlled using the script focal_degree_coherence.py.

dirichlet_sources's People

Contributors

kramos966 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.