def star_model(tel_array, I_time, star_mag, ang_diam, wavelength, star_id): star_err = IItools.track_error(sig0=tel_array.err_sig, m0=tel_array.err_mag, m=star_mag, T_0=tel_array.err_t1, T=I_time.to("s").value) hour_angle_rad = Angle( tel_array.star_dict[star_id]["IntSideTimes"]).to('rad').value dec_angle_rad = tel_array.star_dict[star_id]["DEC"].to('rad').value lat = tel_array.telLat.to('rad').value tel_tracks = [ IItools.uv_tracks(lat=lat, dec=dec_angle_rad, hours=hour_angle_rad, Bn=Bns, Be=Bew, Bu=Bud) for Bns, Bew, Bud in zip( tel_array.Bnss, tel_array.Bews, tel_array.Buds) ] airy_disk, airy_func = IImodels.airy_disk2D(shape=(tel_array.xlen, tel_array.ylen), xpos=tel_array.xlen, ypos=tel_array.ylen, angdiam=ang_diam, wavelength=wavelength) return star_err, hour_angle_rad, dec_angle_rad, lat, tel_tracks, airy_disk, airy_func
[tel_array.add_baseline(Bew=base[0], Bns=base[1], Bud=base[2]) for base in baselines] ang_diam = (.5 * u.mas).to('rad').value dec_angle_rad = (5.6 * u.hourangle).to('rad').value lat = tel_array.telLat.to('rad').value hour_angle_rad = [-1.06417879, -0.93292069, -0.80166259, -0.67040449, -0.53914639, -0.40788829, -0.27663019, -0.14537209, -0.01411399, 0.11714411, 0.24840222, 0.37966032, 0.51091842, 0.64217652, 0.77343462, 0.90469272, 1.03595082] tel_tracks = [IItools.uv_tracks(lat=lat, dec=dec_angle_rad, hours=hour_angle_rad, Bn=Bns, Be=Bew, Bu=Bud) for Bns, Bew, Bud in zip(tel_array.Bnss, tel_array.Bews, tel_array.Buds)] airy_disk, airy_func = IImodels.airy_disk2D(shape=(tel_array.xlen, tel_array.ylen), xpos=tel_array.xlen, ypos=tel_array.ylen, angdiam=ang_diam, wavelength=IIparam['wavelength']) binary_model = IImodels.binary_visibility2D(shape=(tel_array.xlen, tel_array.ylen), flux_ratio=.5, separation=5*u.mas, wavelength=IIparam['wavelength']*u.m, arcsec1=ang_diam,