{"id":211,"date":"2020-06-03T18:22:05","date_gmt":"2020-06-03T16:22:05","guid":{"rendered":"https:\/\/logbooks.ifosim.org\/pykat\/?p=211"},"modified":"2020-06-03T18:35:08","modified_gmt":"2020-06-03T16:35:08","slug":"fabry-perot-cavity-stability-for-a-fixed-waist-at-the-input","status":"publish","type":"post","link":"https:\/\/logbooks.ifosim.org\/pykat\/blog\/fabry-perot-cavity-stability-for-a-fixed-waist-at-the-input\/","title":{"rendered":"Fabry-Perot cavity stability for a fixed waist at the input"},"content":{"rendered":"\n<p>This simple example shows how one can use Finesse to compute quantities like the stability of a Fabry-Perot cavity whilst scanning over the cavity length but keeping the waist size fixed at the input mirror. The image below shows the set-up used here.<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/logbooks.ifosim.org\/pykat\/wp-content\/uploads\/sites\/4\/2020\/06\/cavity_asymm.png\" alt=\"\" class=\"wp-image-213\" width=\"447\" height=\"317\" srcset=\"https:\/\/logbooks.ifosim.org\/pykat\/wp-content\/uploads\/sites\/4\/2020\/06\/cavity_asymm.png 483w, https:\/\/logbooks.ifosim.org\/pykat\/wp-content\/uploads\/sites\/4\/2020\/06\/cavity_asymm-300x213.png 300w\" sizes=\"auto, (max-width: 447px) 100vw, 447px\" \/><\/figure><\/div>\n\n\n\n<p>For a waist-size of 8 mm and beam wavelength of 1550 nm, we can use<\/p>\n\n\n\n<div class=\"ssl-alp-tex\" data-katex-display=\"true\">z_R = \\frac{\\pi w_0^2}{\\lambda},<\/div>\n\n\n\n<p>to compute the Rayleigh range of the beam. In this case, we get,<\/p>\n\n\n\n<div class=\"ssl-alp-tex\" data-katex-display=\"true\">z_R \\approx 130\\,\\mathrm{m}.<\/div>\n\n\n\n<pre class=\"wp-block-code\"><code>l L0 1 0 n0\ns s0 0 n0 nITM1\n\nm ITM 0.99 0.01 0 nITM1 nITM2\ns scav 1 nITM2 nETM1\nm ETM 0.99 0.01 0 nETM1 nETM2\n\n# Set initial ETM RoC to Rc2 = 1 + zr**2\nattr ETM Rcx 16901\nattr ETM Rcy 16901\n\ncav FP ITM nITM2 ETM nETM1\n# detect the stability (m-factor) of the cavity\ncp FP x stability\n\nxaxis scav L lin 0.01 2000 1000\n\n# Compute ETM RoC to keep w0 = 8mm at ITM\nfunc Rc2 = $x1 * (1 + ($zr \/ $x1)^2)\nput ETM Rcx $Rc2\nput ETM Rcy $Rc2\n\nconst zr 130\nlambda 1550n\n\nnoplot Rc2\n\npyterm pdf<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"640\" height=\"480\" src=\"https:\/\/logbooks.ifosim.org\/pykat\/wp-content\/uploads\/sites\/4\/2020\/06\/fp_asymm_stability_fixedw0.png\" alt=\"\" class=\"wp-image-217\" srcset=\"https:\/\/logbooks.ifosim.org\/pykat\/wp-content\/uploads\/sites\/4\/2020\/06\/fp_asymm_stability_fixedw0.png 640w, https:\/\/logbooks.ifosim.org\/pykat\/wp-content\/uploads\/sites\/4\/2020\/06\/fp_asymm_stability_fixedw0-300x225.png 300w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/figure>\n\n\n\n<p>As you can see from the plot produced, the cavity is near-unstable when the length of the cavity is either much less or much greater than the Rayleigh range of the beam. Note that the value of the stability here is the quantity m which is given by,<\/p>\n\n\n\n<div class=\"ssl-alp-tex\" data-katex-display=\"true\">m = \\frac{A + D}{2},<\/div>\n\n\n\n<p>where A and D are the corresponding elements of the cavity round-trip ABCD matrix. A cavity is only stable when,<\/p>\n\n\n\n<div class=\"ssl-alp-tex\" data-katex-display=\"true\">-1 \\leq m \\leq 1.<\/div>\n\n\n\n<p>The function Rc2 used in the Finesse code block above was derived as follows. The waist size for an asymmetric cavity in general can be defined as,<\/p>\n\n\n\n<div class=\"ssl-alp-tex\" data-katex-display=\"true\">w_0^2(g_1, g_2) = \\frac{L\\lambda}{\\pi} \\sqrt{\\frac{g_1g_2(1-g_1g_2)}{(g_1 + g_2 &#8211; 2g_1g_2)^2}},<\/div>\n\n\n\n<p>where L is the cavity length and,<\/p>\n\n\n\n<div class=\"ssl-alp-tex\" data-katex-display=\"true\">g_{1|2} = 1 &#8211; \\frac{L}{R_{C,1|2}}<\/div>\n\n\n\n<p>are the singular-stability factors of the two cavity mirrors. For a configuration where the waist is at the input mirror (i.e. flat input mirror) we have g1 = 1 and so w0 simplifies to<\/p>\n\n\n\n<div class=\"ssl-alp-tex\" data-katex-display=\"true\">w_0^2(g_2) = \\frac{L\\lambda}{\\pi} \\sqrt{\\frac{g_2}{1 &#8211; g_2}}.<\/div>\n\n\n\n<p>Re-arranging for Rc2 gives,<\/p>\n\n\n\n<div class=\"ssl-alp-tex\" data-katex-display=\"true\">R_{C,2} = L\\left[1 + \\left(\\frac{\\pi w_0^2}{L\\lambda}\\right)^2\\right] = L \\left[1 + \\left(\\frac{z_R}{L}\\right)^2 \\right].<\/div>\n","protected":false},"excerpt":{"rendered":"<p>This simple example shows how one can use Finesse to compute quantities like the stability of a Fabry-Perot cavity whilst scanning over the cavity length but keeping the waist size fixed at the input mirror. The image below shows the set-up used here. For a waist-size of 8 mm and beam wavelength of 1550 nm, [&hellip;]<\/p>\n","protected":false},"author":50,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"ssl_alp_hide_revisions":false,"footnotes":"","ssl_alp_hide_crossreferences_to":false},"categories":[14],"tags":[64,63],"ssl-alp-coauthor":[55],"class_list":["post-211","post","type-post","status-publish","format-standard","hentry","category-finesse-2","tag-fabry-perot","tag-stability"],"_links":{"self":[{"href":"https:\/\/logbooks.ifosim.org\/pykat\/wp-json\/wp\/v2\/posts\/211","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/logbooks.ifosim.org\/pykat\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/logbooks.ifosim.org\/pykat\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/logbooks.ifosim.org\/pykat\/wp-json\/wp\/v2\/users\/50"}],"replies":[{"embeddable":true,"href":"https:\/\/logbooks.ifosim.org\/pykat\/wp-json\/wp\/v2\/comments?post=211"}],"version-history":[{"count":4,"href":"https:\/\/logbooks.ifosim.org\/pykat\/wp-json\/wp\/v2\/posts\/211\/revisions"}],"predecessor-version":[{"id":219,"href":"https:\/\/logbooks.ifosim.org\/pykat\/wp-json\/wp\/v2\/posts\/211\/revisions\/219"}],"wp:attachment":[{"href":"https:\/\/logbooks.ifosim.org\/pykat\/wp-json\/wp\/v2\/media?parent=211"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/logbooks.ifosim.org\/pykat\/wp-json\/wp\/v2\/categories?post=211"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/logbooks.ifosim.org\/pykat\/wp-json\/wp\/v2\/tags?post=211"},{"taxonomy":"ssl-alp-coauthor","embeddable":true,"href":"https:\/\/logbooks.ifosim.org\/pykat\/wp-json\/wp\/v2\/ssl-alp-coauthor?post=211"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}