Commit 992c4720 authored by Daniel Brown's avatar Daniel Brown

Adding in code to enable beamsplitters to do radius of curvature fsig...

Adding in code to enable beamsplitters to do radius of curvature fsig modulations. Still a work in progress. I also have made the functions get_node_q_to and get_node_q_from as a convenience function for more visibly getting the q in a particular direction at a node, relative to some component.
parent 912a04c6
......@@ -1226,6 +1226,20 @@ void fill_bs_signal_rhs(signal_t *signal, ifo_matrix_vars_t* M_car, ifo_matrix_v
{node4, node3}
There is a TODO item here. ddb
This modulation calculation assumes that a reflected beam stays in the same reflected basis.
This basis is then modulated from the change in focal power. However, if there is a mismatch
from one node to another and we modulate the focal power, we need an additional mode basis
change from the modulated directly reflected basis to the final basis. This is a bit annoying
as we don't store this anywhere as a separate K matrix. Maybe we can or just recompute it here.
Either way, for now just warn if it's happening so I can see in future what could be a wrong
1+2+4+8 bitflag, see set_k_beamsplitter -> set_coupling_info call
if((bs->mismatching & (1+2+4+8)) && !node1->gnd_node) warn("Mismatching at a beamsplitter with Rc fsig not tested yet");
for(ii=0; ii<4; ii++){
node_t *node_from = nodes[ii][0];
node_t *node_to = nodes[ii][1];
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment