コード例 #1
0
ファイル: DEV_radar_scan_lib.py プロジェクト: zzwei1/SORTSpp
def n_beampark_plot_mov():
    az_points = np.arange(0., 360., 60.).tolist()
    el_points = np.linspace(80., 90., num=len(az_points)).tolist()
    scan = rslib.n_const_pointing_model(az=az_points,
                                        el=el_points,
                                        lat=69.,
                                        lon=19.,
                                        alt=150.,
                                        dwell_time=0.1)

    plot_radar_scan_movie(scan, earth=True, rotate=False)
    plt.show()
コード例 #2
0
#initialize the radar setup
e3d = rl.eiscat_3d()

e3d.set_FOV(max_on_axis=25.0,horizon_elevation=30.0)
e3d.set_SNR_limits(min_total_SNRdb=10.0,min_pair_SNRdb=0.0)
e3d.set_TX_bandwith(bw = 1.0e6)
e3d.set_beam('TX', alib.e3d_array_beam_stage1(opt='dense') )
e3d.set_beam('RX', alib.e3d_array_beam() )

#initialize the observing mode
e3d_scan = rslib.ns_fence_rng_model(min_el = 30.0, angle_step = 2.0, dwell_time = 0.2)

#3 by 3 grid at 300km 
az_points = n.arange(0,360,45).tolist() + [0.0];
el_points = [90.0-n.arctan(50.0/300.0)*180.0/n.pi, 90.0-n.arctan(n.sqrt(2)*50.0/300.0)*180.0/n.pi]*4+[90.0];
e3d_ionosphere = rslib.n_const_pointing_model(az_points,el_points,len(az_points), dwell_time = 7.5)

e3d_scan.set_radar_location(e3d)
e3d.set_scan(SST=e3d_scan,secondary_list=[e3d_ionosphere])

#load the input population
pop = p.filtered_master_catalog_factor(e3d,treshhold=1e-2,seed=12345,filter_name='e3d_full_beam')
pop._objs = pop._objs[:2000,:]

sim = s.simulation( \
    radar = e3d,\
    population = pop,\
    sim_root = sim_root,\
    simulation_name = s.auto_sim_name('piggyback_test')
    )
コード例 #3
0
#initialize the radar setup
e3d = rl.eiscat_3d()
e3d._max_on_axis = 25.0
e3d._min_SNRdb = 5.0

#initialize the observing mode
#lets say you measure ionospheric parameters in a 3-by-3 grid at 300km altitide separated by 50km directions, integration time 0.4s
#we piggyback a analysis on this, how good at discovery is it?
az_points = n.arange(0, 360, 45).tolist() + [0.0]
el_points = [
    90.0 - n.arctan(50.0 / 300.0) * 180.0 / n.pi,
    90.0 - n.arctan(n.sqrt(2) * 50.0 / 300.0) * 180.0 / n.pi
] * 4 + [90.0]
e3d_scan = rslib.n_const_pointing_model(az_points,
                                        el_points,
                                        len(az_points),
                                        dwell_time=0.4)

e3d_scan.set_radar_location(e3d)
e3d._tx[0].scan = e3d_scan

#load the input population
pop = p.master_catalog()
pop._objs = pop._objs[pop._objs[:, 3] > 45.0, :]
pop._objs = pop._objs[pop._objs[:, 8] > 1e-2, :]
pop._objs = pop._objs[pop._objs[:, 2] < 1, :]

sim = s.simulation( \
 radar = e3d,\
 population = pop,\
 sim_root = sim_root,\
コード例 #4
0
ファイル: E3D_scanning_sim.py プロジェクト: zzwei1/SORTSpp
        '64.48487395668005', '62.93289943117691', '61.33878768753357',
        '59.69647098103616', '57.99766296011879', '56.23923388331565',
        '54.40755219009088', '52.44010673902446', '50.4247836215483',
        '48.29222295539205', '46.01278403125778', '43.55617730018973',
        '40.8717857555977', '37.886094818016815', '34.478961143266076', '30.0'
    ]
    els = [float(el) for el in els]
    azs = [-180.0] * (len(els) - 1) + [0.0] * len(els)
    els = els[1:][::-1] + els

    dwell_time = sat_traverse_time / float(len(azs))

    scan = rslib.n_const_pointing_model(
        az=azs,
        el=els,
        lat=radar._tx[0].lat,
        lon=radar._tx[0].lon,
        alt=radar._tx[0].alt,
        dwell_time=dwell_time,
    )

    sim.radar.set_scan(scan)

    sim.observation_parameters(
        duty_cycle=0.25,
        SST_fraction=1.0,
        tracking_fraction=0.25,
        SST_time_slice=dwell_time,
    )

    sim.run_observation(SIM_TIME)
コード例 #5
0
#Project 1: Create a funky spiral scan!

import numpy as np
import matplotlib.pyplot as plt

#SORTS++
import radar_scans
import radar_scan_library

#step sizes
d_az = 3.0
d_el = 0.1
az = [0.0]
el = [90.0]
while el[-1] > 50.0:
    az += [np.mod(az[-1] + d_az, 360.0)]
    el += [el[-1] - d_el]

SC = radar_scan_library.n_const_pointing_model(az,
                                               el,
                                               69,
                                               31,
                                               150,
                                               dwell_time=0.1)

#Now we dont want to plt
#radar_scans.plot_radar_scan(SC, earth=True)
#plt.show()