コード例 #1
0
    # model = Model(stokes=stokes)
    # model.add_components(*new_dfm_model)
    # model.add_components(ccmodel)

    if stokes == "I":
        use_V = True
    else:
        use_V = False
    noise = uvdata_template.noise(use_V=use_V)

    params = list()

    for i in range(n_mc):
        uvdata_template.substitute([ccmodel])
        uvdata_template.uvdata = uvdata_template.uvdata * corrections
        uvdata_template.noise_add(noise)
        uvdata_template.save(os.path.join(data_dir, "artificial.uvf"),
                             rewrite=True,
                             downscale_by_freq=True)

        # Self-calibrate
        selfcal_difmap(
            fname="artificial.uvf",
            outfname="artificial.uvf",
            path=data_dir,
            path_to_script="/home/ilya/github/ve/difmap/auto_selfcal",
            outpath=data_dir,
            show_difmap_output=True)

        modelfit_difmap("artificial.uvf",
                        "{}.mod".format(epoch),
コード例 #2
0
ファイル: bias_modelling_bayes.py プロジェクト: akutkin/SACA
    freq: mojave_uv_fits_fname(source, freq, epoch)
    for freq in ('x', 'j', 'u')
}
for freq, uv_fits_fname in uv_fits_fnames.items():
    uv_fits_path = os.path.join(data_dir, uv_fits_fname)
    cg1 = CGComponent(2.0, 0., 0., 0.2)
    cg2 = CGComponent(1.0, 0., 0.3, 0.3)
    cg3 = CGComponent(0.5, 0., 1.5, 0.4)
    mdl = Model(stokes='I')
    mdl.add_components(cg1, cg2, cg3)
    uvdata = UVData(uv_fits_path)
    noise = uvdata.noise()
    for i in range(1, 101):
        uvdata = UVData(uv_fits_path)
        uvdata.substitute([mdl])
        uvdata.noise_add(noise)
        art_fits_fname = 'art_{}_{}.fits'.format(freq, i)
        art_fits_path = os.path.join(data_dir, art_fits_fname)
        uvdata.save(art_fits_path)

        # Here we should MCMC posterior
        modelfit_difmap(art_fits_fname,
                        'initial.mdl',
                        'out_{}_{}.mdl'.format(freq, i),
                        niter=100,
                        path=data_dir,
                        mdl_path=data_dir,
                        out_path=data_dir)

    params = list()
    for i in range(1, 101):
コード例 #3
0
# DOESNT WORK - ERRORS STILL SMALL
import os
from mojave import mojave_uv_fits_fname
from uv_data import UVData
from bootstrap import bootstrap_uvfits_with_difmap_model

data_dir = '/home/ilya/silke'
epoch = '2017_01_28'
original_model_fname = '2017_01_28us'
original_model_path = os.path.join(data_dir, original_model_fname)
uv_fits_fname = mojave_uv_fits_fname('0851+202', 'u', epoch)
uv_fits_path = os.path.join(data_dir, uv_fits_fname)
uvdata = UVData(uv_fits_path)
uvdata.noise_add({baseline: [0.137] for baseline in uvdata.baselines})
new_fits_path = os.path.join(data_dir, 'added_noise.fits')
uvdata.save(new_fits_path)
bootstrap_uvfits_with_difmap_model(new_fits_path,
                                   original_model_path,
                                   boot_dir=os.path.join(data_dir, 'boot'))