def dd_bfs_daily(RA, dec, survey_name, survey_name2, ha_limits, frac_total=0.0185 / 2., aggressive_frac=0.011 / 2.): sun_alt_limit = -18. time_needed = 18. fractions = [0.00, aggressive_frac, frac_total] bfs = [] bfs.append( basis_functions.Not_twilight_basis_function( sun_alt_limit=sun_alt_limit)) bfs.append( basis_functions.Time_to_twilight_basis_function( time_needed=time_needed)) bfs.append( basis_functions.Hour_Angle_limit_basis_function(RA=RA, ha_limits=ha_limits)) bfs.append( basis_functions.Fraction_of_obs_basis_function( frac_total=frac_total, survey_name=survey_name2)) bfs.append( basis_functions.Look_ahead_ddf_basis_function( frac_total, aggressive_frac, sun_alt_limit=sun_alt_limit, time_needed=time_needed, RA=RA, survey_name=survey_name, ha_limits=ha_limits)) bfs.append( basis_functions.Soft_delay_basis_function(fractions=fractions, delays=[0.5, 0.5, 0.5], survey_name=survey_name)) bfs.append( basis_functions.Soft_delay_basis_function(fractions=fractions, delays=[0.5, 0.5, 0.5], survey_name=survey_name2)) return bfs
def dd_bfs(RA, dec, survey_name, ha_limits, frac_total=0.0185 / 2., aggressive_frac=0.011 / 2., delays=[0., 0.5, 1.5]): """ Convienence function to generate all the feasibility basis functions """ sun_alt_limit = -18. time_needed = 62. fractions = [0.00, aggressive_frac, frac_total] bfs = [] bfs.append( basis_functions.Not_twilight_basis_function( sun_alt_limit=sun_alt_limit)) bfs.append( basis_functions.Time_to_twilight_basis_function( time_needed=time_needed)) bfs.append( basis_functions.Hour_Angle_limit_basis_function(RA=RA, ha_limits=ha_limits)) bfs.append(basis_functions.Moon_down_basis_function()) bfs.append( basis_functions.Fraction_of_obs_basis_function( frac_total=frac_total, survey_name=survey_name)) bfs.append( basis_functions.Look_ahead_ddf_basis_function( frac_total, aggressive_frac, sun_alt_limit=sun_alt_limit, time_needed=time_needed, RA=RA, survey_name=survey_name, ha_limits=ha_limits)) bfs.append( basis_functions.Soft_delay_basis_function(fractions=fractions, delays=delays, survey_name=survey_name)) bfs.append( basis_functions.Time_to_scheduled_basis_function( time_needed=time_needed)) return bfs
def dd_bfs(RA, dec, survey_name, ha_limits, frac_total=0.007, aggressive_frac=0.005): """ Convienence function to generate all the feasibility basis functions """ sun_alt_limit = -18. time_needed = 9. fractions = [0.00, aggressive_frac, frac_total] bfs = [] bfs.append( basis_functions.Filter_loaded_basis_function( filternames=['r', 'g', 'i', 'z', 'y'])) bfs.append( basis_functions.Not_twilight_basis_function( sun_alt_limit=sun_alt_limit)) bfs.append( basis_functions.Time_to_twilight_basis_function( time_needed=time_needed)) bfs.append( basis_functions.Hour_Angle_limit_basis_function(RA=RA, ha_limits=ha_limits)) bfs.append( basis_functions.Fraction_of_obs_basis_function( frac_total=frac_total, survey_name=survey_name)) bfs.append( basis_functions.Look_ahead_ddf_basis_function( frac_total, aggressive_frac, sun_alt_limit=sun_alt_limit, time_needed=time_needed, RA=RA, survey_name=survey_name, ha_limits=ha_limits)) bfs.append( basis_functions.Soft_delay_basis_function(fractions=fractions, delays=[0., 0.04, 1.5], survey_name=survey_name)) return bfs
def dd_u_bfs(RA, dec, survey_name, ha_limits, frac_total=0.0019 / 2., aggressive_frac=0.0014 / 2.): """Convienence function to generate all the feasibility basis functions for u-band DDFs """ bfs = [] sun_alt_limit = -18. time_needed = 6. fractions = [0.00, aggressive_frac, frac_total] bfs.append(basis_functions.Filter_loaded_basis_function(filternames='u')) bfs.append( basis_functions.Not_twilight_basis_function( sun_alt_limit=sun_alt_limit)) bfs.append( basis_functions.Time_to_twilight_basis_function( time_needed=time_needed)) bfs.append( basis_functions.Hour_Angle_limit_basis_function(RA=RA, ha_limits=ha_limits)) bfs.append(basis_functions.Moon_down_basis_function()) bfs.append( basis_functions.Fraction_of_obs_basis_function( frac_total=frac_total, survey_name=survey_name)) bfs.append( basis_functions.Look_ahead_ddf_basis_function( frac_total, aggressive_frac, sun_alt_limit=sun_alt_limit, time_needed=time_needed, RA=RA, survey_name=survey_name, ha_limits=ha_limits)) bfs.append( basis_functions.Soft_delay_basis_function(fractions=fractions, delays=[0., 0.2, 0.5], survey_name=survey_name)) return bfs