コード例 #1
0
def write_dispersion(element_name, is_element, measured_hor_disp, measured_ver_disp, measured_norm_disp, input_model, propagated_models, save_path, dispersion_summary_file):
    file_disp_x, file_norm_disp_x, file_disp_y = _get_dispersion_tfs_files(element_name, is_element, save_path)

    model_propagation = propagated_models.propagation
    model_back_propagation = propagated_models.back_propagation
    model_cor = propagated_models.corrected
    model_back_cor = propagated_models.corrected_back_propagation

    if not is_element:
        bpms_list_x = intersect([model_propagation, model_back_propagation, model_cor, model_back_cor, measured_hor_disp])
        bpms_list_y = intersect([model_propagation, model_back_propagation, model_cor, model_back_cor, measured_ver_disp])
    else:
        bpms_list = intersect([model_propagation, model_back_propagation, model_cor, model_back_cor, input_model])
        bpms_list_x = bpms_list_y = bpms_list

    summary_data_x = _write_dispersion_for_plane(file_disp_x, "X", element_name, bpms_list_x, measured_hor_disp,
                                                 input_model,
                                                 model_cor, model_propagation, model_back_propagation, model_back_cor, is_element)

    summary_data_nx = _write_normalized_hor_dispersion(file_norm_disp_x, element_name, bpms_list_x, measured_norm_disp,
                                                       input_model,
                                                       model_cor, model_propagation, model_back_propagation, model_back_cor, is_element)

    summary_data_y = _write_dispersion_for_plane(file_disp_y, "Y", element_name, bpms_list_y, measured_ver_disp,
                                                 input_model,
                                                 model_cor, model_propagation, model_back_propagation, model_back_cor, is_element)

    if is_element:
        _write_summary_data(dispersion_summary_file, summary_data_x, summary_data_nx, summary_data_y)
コード例 #2
0
def write_chromatic(element_name, is_element, measured_chromatic_wx,
                    measured_chromatic_wy, input_model, propagated_models,
                    save_path, chrom_summary_file):
    file_chromatic_wx, file_chromatic_wy = _get_chromatic_w_files(
        save_path, element_name, is_element)

    model_propagation = propagated_models.propagation
    model_back_propagation = propagated_models.back_propagation
    model_cor = propagated_models.corrected
    model_back_cor = propagated_models.corrected_back_propagation

    if not is_element:
        bpms_list = intersect([
            model_cor, model_propagation, model_back_propagation,
            model_back_cor, input_model, measured_chromatic_wx,
            measured_chromatic_wy
        ])
    else:
        bpms_list = intersect([
            model_cor, model_propagation, model_back_propagation,
            model_back_cor, input_model
        ])

    summary_data_x = _write_chromatic_w_for_plane(
        file_chromatic_wx, "X", element_name, bpms_list, measured_chromatic_wx,
        input_model, model_propagation, model_cor, model_back_propagation,
        model_back_cor, save_path, is_element)
    summary_data_y = _write_chromatic_w_for_plane(
        file_chromatic_wy, "Y", element_name, bpms_list, measured_chromatic_wy,
        input_model, model_propagation, model_cor, model_back_propagation,
        model_back_cor, save_path, is_element)
    if is_element:
        _write_summary_data(chrom_summary_file, summary_data_x, summary_data_y)
コード例 #3
0
def write_dispersion(element_name, is_element, measured_hor_disp, measured_ver_disp, measured_norm_disp, input_model, propagated_models, save_path, dispersion_summary_file):
    file_disp_x, file_norm_disp_x, file_disp_y = _get_dispersion_tfs_files(element_name, is_element, save_path)

    model_propagation = propagated_models.propagation
    model_back_propagation = propagated_models.back_propagation
    model_cor = propagated_models.corrected
    model_back_cor = propagated_models.corrected_back_propagation

    if not is_element:
        bpms_list = intersect([model_propagation, model_back_propagation, model_cor, model_back_cor, measured_hor_disp, measured_ver_disp])
    else:
        bpms_list = intersect([model_propagation, model_back_propagation, model_cor, model_back_cor, input_model])

    summary_data_x = _write_dispersion_for_plane(file_disp_x, "X", element_name, bpms_list, measured_hor_disp,
                                                 input_model,
                                                 model_cor, model_propagation, model_back_propagation, model_back_cor, is_element)

    summary_data_nx = _write_normalized_hor_dispersion(file_norm_disp_x, element_name, bpms_list, measured_norm_disp,
                                                       input_model,
                                                       model_cor, model_propagation, model_back_propagation, model_back_cor, is_element)

    summary_data_y = _write_dispersion_for_plane(file_disp_y, "Y", element_name, bpms_list, measured_ver_disp,
                                                 input_model,
                                                 model_cor, model_propagation, model_back_propagation, model_back_cor, is_element)

    if is_element:
        _write_summary_data(dispersion_summary_file, summary_data_x, summary_data_nx, summary_data_y)
コード例 #4
0
def write_phase(element_name, measured_hor_phase, measured_ver_phase,
                measured_hor_beta, measured_ver_beta, propagated_models,
                save_path):

    file_phase_x, file_phase_y = _get_phase_tfs_files(element_name, save_path)

    model_propagation = propagated_models.propagation
    model_back_propagation = propagated_models.back_propagation
    model_cor = propagated_models.corrected
    model_back_cor = propagated_models.corrected_back_propagation

    bpms_list_x = intersect([
        model_propagation, model_cor, model_back_propagation, model_back_cor,
        measured_hor_phase
    ])
    bpms_list_y = intersect([
        model_propagation, model_cor, model_back_propagation, model_back_cor,
        measured_ver_phase
    ])

    _write_phase_for_plane(file_phase_x, element_name, "X", bpms_list_x,
                           measured_hor_phase, measured_hor_beta,
                           model_propagation, model_cor,
                           model_back_propagation, model_back_cor)

    _write_phase_for_plane(file_phase_y, element_name, "Y", bpms_list_y,
                           measured_ver_phase, measured_ver_beta,
                           model_propagation, model_cor,
                           model_back_propagation, model_back_cor)
コード例 #5
0
def write_coupling(element_name, is_element, measured_coupling, input_model, propagated_models, save_path, coupling_summary_file):

    file_f_terms, file_C_terms = _get_coupling_tfs_files(element_name, save_path, is_element)

    model_propagation = propagated_models.propagation
    model_back_propagation = propagated_models.back_propagation
    model_cor = propagated_models.corrected
    model_back_cor = propagated_models.corrected_back_propagation

    model_propagation.Cmatrix()
    model_back_propagation.Cmatrix()
    model_cor.Cmatrix()
    model_back_cor.Cmatrix()

    if not is_element:
        bpms_list = intersect([model_cor, model_propagation, model_back_propagation, model_back_cor, measured_coupling])
    else:
        bpms_list = intersect([model_cor, model_propagation, model_back_propagation, model_back_cor, input_model])

    summary_data_f = _write_f_terms(file_f_terms, element_name, is_element, bpms_list, measured_coupling, input_model, model_propagation, model_back_propagation, model_cor, model_back_cor)

    summary_data_C = _write_C_terms(file_C_terms, element_name, is_element, bpms_list, measured_coupling, input_model, model_propagation, model_back_propagation, model_cor, model_back_cor)

    if is_element:
        _write_summary_data(coupling_summary_file, summary_data_f, summary_data_C)
コード例 #6
0
def write_coupling(element_name, is_element, measured_coupling, input_model,
                   propagated_models, save_path, coupling_summary_file):

    file_f_terms, file_C_terms = _get_coupling_tfs_files(
        element_name, save_path, is_element)

    model_propagation = propagated_models.propagation
    model_back_propagation = propagated_models.back_propagation
    model_cor = propagated_models.corrected
    model_back_cor = propagated_models.corrected_back_propagation

    model_propagation.Cmatrix()
    model_back_propagation.Cmatrix()
    model_cor.Cmatrix()
    model_back_cor.Cmatrix()

    if not is_element:
        bpms_list = intersect([
            model_cor, model_propagation, model_back_propagation,
            model_back_cor, measured_coupling
        ])
    else:
        bpms_list = intersect([
            model_cor, model_propagation, model_back_propagation,
            model_back_cor, input_model
        ])

    summary_data_f = _write_f_terms(file_f_terms, element_name, is_element,
                                    bpms_list, measured_coupling, input_model,
                                    model_propagation, model_back_propagation,
                                    model_cor, model_back_cor)

    summary_data_C = _write_C_terms(file_C_terms, element_name, is_element,
                                    bpms_list, measured_coupling, input_model,
                                    model_propagation, model_back_propagation,
                                    model_cor, model_back_cor)

    if is_element:
        _write_summary_data(coupling_summary_file, summary_data_f,
                            summary_data_C)
コード例 #7
0
def write_chromatic(element_name, is_element, measured_chromatic_wx, measured_chromatic_wy, input_model, propagated_models, save_path, chrom_summary_file):
    file_chromatic_wx, file_chromatic_wy = _get_chromatic_w_files(save_path, element_name, is_element)

    model_propagation = propagated_models.propagation
    model_back_propagation = propagated_models.back_propagation
    model_cor = propagated_models.corrected
    model_back_cor = propagated_models.corrected_back_propagation

    if not is_element:
        bpms_list = intersect([model_cor, model_propagation, model_back_propagation, model_back_cor, input_model, measured_chromatic_wx, measured_chromatic_wy])
    else:
        bpms_list = intersect([model_cor, model_propagation, model_back_propagation, model_back_cor, input_model])

    summary_data_x = _write_chromatic_w_for_plane(file_chromatic_wx, "X",
                                                  element_name, bpms_list, measured_chromatic_wx,
                                                  input_model, model_propagation, model_cor, model_back_propagation, model_back_cor,
                                                  save_path, is_element)
    summary_data_y = _write_chromatic_w_for_plane(file_chromatic_wy, "Y",
                                                  element_name, bpms_list, measured_chromatic_wy,
                                                  input_model, model_propagation, model_cor, model_back_propagation, model_back_cor,
                                                  save_path, is_element)
    if is_element:
        _write_summary_data(chrom_summary_file, summary_data_x, summary_data_y)
コード例 #8
0
def write_phase(element_name, measured_hor_phase, measured_ver_phase, measured_hor_beta, measured_ver_beta,
                    propagated_models, save_path):

    file_phase_x, file_phase_y = _get_phase_tfs_files(element_name, save_path)

    model_propagation = propagated_models.propagation
    model_back_propagation = propagated_models.back_propagation
    model_cor = propagated_models.corrected
    model_back_cor = propagated_models.corrected_back_propagation

    bpms_list = intersect([model_propagation, model_cor, model_back_propagation, model_back_cor, measured_hor_phase, measured_ver_phase])

    _write_phase_for_plane(file_phase_x, element_name, "X", bpms_list, measured_hor_phase, measured_hor_beta, model_propagation, model_cor, model_back_propagation, model_back_cor)

    _write_phase_for_plane(file_phase_y, element_name, "Y", bpms_list, measured_ver_phase, measured_ver_beta, model_propagation, model_cor, model_back_propagation, model_back_cor)