I'm posting a summary of the work I've done on the Lagrangian analysis of the Mariner suspension design and a state space model of the actuator control loop. The whole feedback mechanism can be understood with reference to the block diagram in attachment 1.
The dynamics of the suspension are contained within the Plant block. To obtain these, I derived the system Lagrangian, solved the Euler-Lagrange equations for each generalised coordinate and solved the set of simultaneous equations to get the transfer functions from each input parameter to each generalised coordinate. From these, I can obtain the transfer functions from each input to each observable output. In this case, I inserted horizontal ground motion at the pivot point (top of suspension) and a generic horizontal force applied to at the intermediate mass. These two drives become the two inputs to the Plant block. The two observables are xi - the position of the intermediate mass, which is sensed and fed to the actuator servo, and xt - the test mass position that we are most interested in. I obtained the transfer functions from each input to each output using a symbolic solver in Python and then constructed a MIMO state space representation of these transfer functions in MATLAB. For this initial investigation, I've modelled the suspension in the Lagrangian as a lossless point-mass double pendulum with two degrees of freedom - the angle to the horizontal of the first mass and the angle to the horizontal of the second mass. The transfer functions are very similar to the more advanced treatment with elastic restoring forces and moments of inertia and the system can always be expanded in a later analysis.
For the sensor block I assumed a very simple model given by
where G_s is the conversion factor from the physical distance in metres to the electronic signal (in, for example, volts or ADC counts) and n_s is the added sensor noise. A more general sensor model can easily be added at a later date to account for, say, a diminishing sensor response over different frequency ranges.
The actuator block converts the measured displacement of the intermediate mass into an actuation force, with some added actuator noise. The servo transfer function can be tuned to whatever filter we find works best but for now I've made two quite basic suggestions: a simple servo that actuates on the velocity of the intermediate mass, given by
and an 'improved' servo, which includes a roll-off after the resonances, given by
where p is the pole frequency at which we want the roll-off to occur. Attachment 2 shows the two servo transfer functions for comparison.
The state space models can then be connected to close the loop and create a single state space model for the transfer functions of the ground and each noise source to the horizontal test mass displacement. Attachment 3 contains the transfer functions from xg to xt and shows the effect of closing the loop with the two servo choices compared to the transfer function through just the Plant alone. We can see that the closed loop system does damp away the resonances as we want for both servo choices. The basic servo, howerver, loses us a factor of 1/f^2 in suppression at high frequencies, as it approximates the effect of viscous damping. The improved servo gives us the damping but also recovers the original suppression at high frequencies due to the roll-off. I can now provide the ground and noise spectra and propagate them through to work out the fluctuations of the test mass position.
As a kickoff of the mariner sus cryostat design, I made a tentative crackle chamber model in SW.
Stephen pointed out that the mass for each part is ~100kg and will likely be ~150kg with the flanges. We believe this is with in the capacity of the yellow Skyhook crane as long as we can find its wheeled base.
I was thinking about how fast we can cool the test mass. No matter how we improve the emissivity of the test mass and the cryostat, there is a theoretical limitation. I wanted to calculate it as a reference to know how good the cooling is in an experiment.
We have a Si test mass of 300K in a blackbody cryostat with a 0K shield. How fast can we cool the test mass?
Then assume the specific heat is linear as
The actual Cp follows a nonlinear function (cf Debye model), but this is not a too bad assumption down to ~100K.
Then the differential equation can be analytically solved:
where the characteristic time of t0 is
Here T_0 is the initial temperature, cp0 is the slope of the specific heat (Cp(T_0) = c_p0 T_0). epsilon is the emissivity of the test mass, sigma is Stefan Boltzmann constant, A is the radiating surface area, and m is the mass of the test mass.
Up to the characteristic time, the cooling is slow. Then the temperature falls sqrt(t) after that.
As the surface-volume ratio m/A becomes bigger for a larger mass, in general, the cooling of the bigger mass requires more time.
For the QIL 4" mass, Mariner 150mm mass, and the Voyager 450mm mass, t0 is 3.8hr, 5.6hr, and 33.7hr respectively.
This is the fundamental limit for radiation cooling. Thus, we have to use conductive cooling if we want to accelerate the cooling further more than this curve.
Here is a set of curves describing the single-pass downconversion efficiency in the 20 mm long PPKTP crystals for the DOPO. I used the "non-depleted pump approximation" and assumed a plane-wave (although the intensity matches the peak intensity from a gaussian beam). Note that these assumptions will in general tend to overestimate the conversion efficiency.
The parameters use an effective nonlinear coefficient "d_eff" of 4.5 pm/V, and assume we have reached the perfect (quasi) phase matching condition where delta_k = 0 (e.g. we are at the correct crystal operating temperature). The wavelengths are 1064.1 nm for the pump, and 2128.2 nm for degenerate signal and idler. The conversion efficiency here is for the signal photon (which is indistinguishable from the idler, so am I off by a factor of 2?)...
Attachment 1 shows the single pass conversion efficiency "eta" as a function of the pump power. This is done for a set of 5 minimum waists, but the current DOPO waist is ~ 35 um, right in the middle of the explored range. What we see from this overestimates is an almost linear-in-pump power increase of order a few %. I have included vertical lines denoting the damage threshold points, assuming 500 kW / cm ^2 for 1064.1 nm (similar to our free-space EOMs). As the waist increases, the conversion efficiency tends to increase more slowly with power, but enables a higher damage threshold, as expected.
At any rate, the single-pass downconversion efficiency is (over)estimated to be < 5 % for our current DOPO waist right before the damage threshold of ~ 10 Watts, so I don't think we will be able to use the amplified pump (~ 20-40 W) unless we modify the cavity design to allow for larger waist modes.
The important figure (after today's group meeting) would be a single pass downconversion efficiency of ~ 0.5 % / Watt of pump power at our current waist of 35 um (i.e. the slope of the curves below)
WIP - Stephen to check on new suspension dimensions and fit into 40m chamber
WIP - check layout of 60 cm suspension in chamber at 40m, will report here
WIP - also communicate the
The ETM wedge of 0.5deg will allow us to separate the AR reflections. We will be OK with the ITM wedge of 0.5deg too. 0.36 deg for ITM is also OK, but not for the ETM.
- Attachment 1 shows the deflection of the 2128mn and 1418nm beams by the test mass wedge. Here, the wedge angle of 1deg was assumed as a reference. For the other wedge angle, simply multiply the new number (in deg) to the indicated values for the displacement and angle.
- Attachment 2 shows the simplified layout of the test masses for the calculation of the wedge angle. Here the ITM and ETM are supposed to be placed at the center of the in-vacuum tables. Considering the presence of the cryo baffles, we need to isolate the pick-off beam on the BS table. There we can place a black glass (or similar) beam dump to kill the AR reflection. For the ETM trans, the propagation length will be too short for in-vacuum dumping of the AR reflection. We will need to place a beam baffle on the transmon table.
- I've assumed the cavity parameter of L=38m and RoC(ETM)=57m (This yields the Rayleigh range zR=27m). The waist radii (i.e. beam radii at the ITM) for the 2128nm and 1418nm beams are 4.3mm and 3.5mm, while the beam radii at the ETM are 7.4mm and 6.0mm, respectively,
- Attachment 3: Our requirement is that the AR reflection of the ALS (1418nm) beam can be dumped without clipping the main beam.
If we assume the wedge angle of 0.5deg, the opening of the main and AR beams will be (2.462+4.462)*0.5 = 3.46 deg. Assuming the distance from the ETM to the in-air trans baffle is 45" (=1.14m), the separation of the beams will become 69mm. The attached figure shows how big the separation is compared with the beam sizes. I declare that the separation is quite comfortable. As the main and AR beams are distributed on both sides of the optic (i.e. left and right), I suppose that the beams are not clipped by the optical window of the chamber. But this should be checked.
Note that the 6w size for the 2128nm beam is 44mm. Therefore, the first lens for the beam shrinkage needs to be 3" in dia, and even 3" 45deg BS/mirrors are to be used after some amount of beam shrinkage.
- Attachment 4 (Lower): If we assume the same ITM wedge angle of 0.5deg as the ETM, both the POX/POY and the AR beams will have a separation of ~100mm. This is about the maximum acceptable separation to place the POX/POY optics without taking too much space on the BS chamber.
- Attachment 4 (Upper): Just as a trial, the minimum ITM wedge angle of 0.36deg was checked, this gives us the PO beam ~3" separated from the main beam. This is still comfortable to deal with these multiple beams from the ITM/
The HR coating specifications are:
Just took the finesse of a single arm:
and propagated transmissivities as uncorrelated variables to estimate the maximum relative finesse. Different tolerance combinations give the same finesse tolerance, so multiple solutions are possible. I simply chose to distribute the relative tolerance in T for the test masses homogeneously to simultaneously maximize the individual tolerances and minimize the joint tolerance.
A code snippet with the numerical analysis may be found here.
Tue Jun 8 11:52:44 2021 Update
The arm cavity finesse at 2128 nm will be mostly limited by the T = 2000 ppm of the ITM, so the finesse changes mostly due to this specification. Assuming that the vendor will be able to do the two ETM optics in one run (x and y), we really don't care so much about the mean value achieved in this run as much as the relative one. Therefore, the 200 ppm tolerance (10% level) is allowed at the absolute level, but a 20 ppm tolerance (1% level) is still preferred at the relative level; is this achievable?. Furthermore, for the AUX wavelength, we mostly care about achieving critical coupling but there is no requirement between the arms. Here a 20 ppm tolerance at the absolute level should be ok, but a 2 ppm tolerance between runs is highly desirable (although it seems crazier); is this achievable?
Here are the final slides with all the results on the Arm Cavity Design, please review.
For RoC of 56.2 +/- 1% things are working well. Tolerance of 0.5% will be better however, 1% is still working; as long as we do not want any peaks ~50kHz away.
For length, 38+0.5% = 38.19 (with RoC 56.2) not ideal, peak is close (48.8kHz) but maybe ok? @Rana thoughts? and 38-0.5% = 37.81 (with RoC 56.2) works well.
To summarise the design:
RoC = 56.2 +/- 1%
L = 38 +/- 0.5%
def add_cavmodel(kat, T=0.001, Loss=5e-6, theta=60, L_rt = 2*12.240, R_c = 20, f1 = 11e6, gamma1 = 0, f2 = 55e6, gamma2 = 0):
T: Transmission of mirror (ITM)
Loss: Loss of mirror ETM
L_rt: Round trip length of cavity
R_c: Radius of curvature of ETM
"from pykat import finesse\n",
"from pykat.commands import *\n",
import numpy as np
import scipy.constants as scc
import matplotlib as mpl, matplotlib.pyplot as plt
from matplotlib import cm
Putting together Koji's design work with Stephen's CAD, we consider the size of a test chamber for the Mariner suspension.
Koji's design uses a 6" x 6" Si optic, with an overall height of about 21.5".
Stephen's offsets suggest a true shield footprint of 14" x 14" with an overall height of 24".
With generous clearances on all sides, a test chamber with a rectangular footprint internally of about 38" x 32" with an internal height of 34" would be suitable. This scale seems similar to the Thomas Vacuum Chamber in Downs, and suggests feasibility. It will be interesting to kick off conversations with a fabricator to get a sense for this.
This exercise generated a few questions worth considering; feel welcome to add to this list!
Rana’s code: R_c = 57.3
-->New code with optimization: sweeping through a range of R_c, using a cost function that puts value on peak height, distance of the peaks from the zero order, and mode number. This cost function can be edited further to adapt to more aims (Slides attached). Currently (code attached) gives --> R_c = 58.4 with very slightly different peaks and energy distribution in the modes
1) Range of R_c is 57 to 60, for some reason lower values of R_c in the range are giving error --> debug this
2) Find how sensitive the model is for 1% change in R_c value
3) Make sure the side bands are not resonating
"# Mariner: Higher Order Mode Analysis of Arm Cavities for Phase-I trial\n",
"This notebook contains a study of mode-matching for optical Fabry-Perot cavities using Finesse\n",
MCT HgCdTe requirements: https://docs.google.com/spreadsheets/d/1lajp17yusbkacHEMSobChKepiqKYesHWIJ6L7fgr-yY/edit?usp=sharing
Since I have been running the ETM/ITM coatings optimization many times, I decided to "benchmark" (really just visualize) the optimizer trajectories under different strategies offered by the scipy.optimize implementation of differential evolution. This was done by adding a callback function to keep track the convergence=val at every iteration. From the scipy.optimize.differential_evolution docs, this "val represents the fractional value of the population convergence".
Attachment 1 shows a modest collection of ~16 convergence trajectories for ETM and ITM as a function of the iteration number (limited by maxiter=2000) with the same targets, weights, number of walkers (=25), and other optimization parameters. The vertical axis plots the inverse val (so tending to small numbers represent convergence).
tl;dr: Put simply, the strategies using "binary" crossover schemes work better (i.e. faster) than "exponential" ones. Will keep choosing "best1bin" for this problem.
Yeah, the magnitudes are the inverse weighted scalar costs (so they lie on the appropriate relative scale) and indeed larger enclosed areas point to better optima. I would be careful though, because the lines connecting the scalar costs depend on the order of the vector elements (for the plot)... so I guess if I take the cost vector and shuffle the order I would get a different irregular polygon, but maybe the area is preserved regardless of the order in which the scalars are displayed...
Cool starfish 🌟 . What is the interpretation of the area enclosed by the vertices? Is that the (reciprocal) cost? So the better solution maximizes the area enclosed?
- Following what seemed like a good, intuitive suggestion from Anchal, I implemented a parameter called Ncopies, which takes a stack of m-bilayers and copies it a few times. The idea here was to have stacks where m is the least common multiple of the wavelength fractional relation e.g. m(2/3) = 6 so as to regain some of the coherent scattering in a stack. Unfortunately, this didn't work as planned for m=6, 3, and 2.
- While the target transmissivities are reached with comparably fewer layers using this method, the sensitivity and the surface E field are affected and become suboptimal. The good thing is we can do the old way just by setting Ncopies = 0 in the optimization parameters yaml file.
- An example of such a coating is in Attachment 1.
- I decided to just add the 'varL' scalar cost to the optimizer. Now we minimize for the variance in the coating stack thicknesses. As a target I started with 40% but will play with this now.
I guess you have tried it already - but does enforcing the stacks to be repeating bilayer pairs of the same thickness fail miserably? When doing this for the PR3 optic @1064nm, I found that the performance of a coating in which the layers are repeating bilayers (so only 2 thicknesses + the cap and end are allowed to vary) was not that much worse than the one in which all 38 thicknesses were allowed to vary arbitrarily. Although you are aiming for T=50ppm at the second wavelength (which isn't the harmonic) which is different from the PR3 reqs. This kind of repetitive structure with fewer arbitrary thicknesses may be easier to manufacture (and the optimizer may also converge faster since the dimensionality of the space to be searched is smaller).
New optima are being found using the same basic code with some modifications, which I summarize below;
Still working to translate all these changes to ITM, but here are samples for some optimum.
6" vs 4" optic size comparison using CAD - worth hopping into the 3D geometry using the link below, but also posting a couple of images below.
1) We can adjust all parameters relating to the suspension frame except the beam height. Is there enough clearance under the optic for the internal shield?
--> Using the representation of the MOS structure as-is, there is about 1" of clearance between the bottom panel of the first/internal shield under the 6" case, compared with 2" of clearance in the 4" case. This is not very scary, and suggests that we could use a 6" optic size.
2) Any other concerns at this point?
--> Not really, there are degrees of freedom to absorb other issues that arise from the simple 4" --> 6" parameter shift
EASM posted at https://caltech.app.box.com/folder/132918404089
Have been using the 40m Coatings repo code by Gautam (with some modifications to make dichroic designs under Ta2O5_Voyager), as well as the parameters compiled in the Mariner wiki for Silica-tantala thin films. Here are some of the top picks.
For ETM, the target transmissivities are 5.0 ppm @ 2128.2 nm and 50.0 ppm @ 1418.8 nm. After different combinations of differential evolution walkers, numbers of layers, thickness bounds, a couple of different optimization strategies, the optimum design has consistently converged with 19 - 26 layer pairs (total of 38 - 52 layers). The picks are based on the sensitivities, E_field at the boundary, and a qualitatively uniform stack (discarded "insane-looking" solutions). The top picks in Attachment 1 may be a good starting point for a manufacturer. In order of appearance, they are:
For ITM, the target transmissivities are 2000 ppm @ 2128.2 nm and 50.0 ppm @ 1418.8 nm (critically coupled cavity for AUX). The lower trans for 2128.2 nm made this easier faster to converge, although the number of thin film layers was equally centered about ~ 50 layers. Haven't explored as much in the parameter space, but the top picks in Attachment 2 are decent for approaching manufacturer. In order of appearance, they are:
Attached is a cartoon partial view into the heat load experienced by the Mariner assembly.
The omnigraffle file with more explicit arrow labelling in the 'layers' tab is available here. The dashed red lines along to top represent vacuum chamber radiation incident on all sides of the OS/IS, not just from the top. Off picture to the right is the BS, left is the beam tube/ETM chamber -- hence the lower absored laser power (solid line) absorbtion (PR power + no HR coating absorption).
Missing or wrong
Ongoing points of updates/content (list to be maintained and added)
Mariner Chat Channel
Mariner Git Repository
Mariner 40m Timeline [2020-2021] Google Spreadsheet
The first entry of the Mariner elog post