diff --git a/README.md b/README.md index 0e5181f..5d46b58 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,30 @@ # Gaussianoptics -Python library for the simulation of gaussian beams according to ray optics. \ No newline at end of file +Python library for the simulation of gaussian beams according to ray optics. + +You can build an optical bench with the following elements (see test.py for an example): +- 'path', refractive index , position[mm], (relative: 'r', absolute: 'a' (position is the end position), filling: 'f') +- 'thinlens', f [mm] , position[mm], (relative: 'r', absolute: 'a') +- 'thicklens', [ n1 = refractive index outside of the lens, + n2 = refractive index of the lens itself (inside the lens), + R1 = Radius of curvature of First surface, + R2 = Radius of curvature of Second surface, + t = center thickness of lens] , position[mm], (relative: 'r', absolute: 'a') +- 'flatmirror', 0 , position[mm], (relative: 'r', absolute: 'a') +- 'curvedmirror', [R [mm], + angle [°], + plane (0=tangential, 1=sagittal)], position[mm], (relative: 'r', absolute: 'a') +- 'flatrefraction', [ n1 = initial refractive index, + n2 = final refractive index] , position[mm], (relative: 'r', absolute: 'a') +- 'curvedrefraction', [ n1 = initial refractive index, + n2 = final refractive index, + R = radius of curvature R > 0 for convex (centre of + curvature after interface)], position[mm], (relative: 'r', absolute: 'a') + + +example: opticalbench = ['path',1,0.050,'a''thinlens',0.05,0.100,'r''path',[1,0,0,0,0],0,'f''thinlens',[0.15,0,0,0,0],0.200,'r'] + +TODOs: +- check if 'path' is first and last element +- find 'empty space' +- normalize curve by refractive index other than 1 \ No newline at end of file