1#!/bin/bash
2. @OSKAR_BINARY_DIR@/apps/test/test_utility.sh
3
4echo "Running OSKAR example beam pattern simulation"
5echo "simulated visibilities"
6echo ""
7echo "  * Example data directory = $example_data_dir"
8echo ""
9
10# Move into the example data directory
11cd "${example_data_dir}"
12
13# Set or overwrite a number of settings in the example data settings file.
14app=${oskar_app_path}/oskar_sim_beam_pattern
15ini=oskar_sim_beam_pattern.ini
16
17# Set settings for the BP test.
18set_setting $app $ini simulator/double_precision false
19set_setting $app $ini telescope/input_directory telescope.tm
20set_setting $app $ini observation/num_channels 2
21set_setting $app $ini observation/start_frequency_hz 100e6
22set_setting $app $ini observation/frequency_inc_hz 100e6
23set_setting $app $ini observation/num_time_steps 5
24set_setting $app $ini observation/start_time_utc "01-01-2000 12:00:00.000"
25set_setting $app $ini observation/length "12:00:00.000"
26
27# Beam "image" options
28group=beam_pattern
29set_setting $app $ini $group/root_path beam
30set_setting $app $ini $group/beam_image/size 256
31set_setting $app $ini $group/beam_image/fov_deg 180.0
32set_setting $app $ini $group/coordinate_frame Equatorial
33set_setting $app $ini $group/coordinate_type "Beam image"
34
35# Station selection
36set_setting $app $ini $group/all_stations false
37set_setting $app $ini $group/station_ids 0,1,2
38
39# Averaging options
40group=beam_pattern/output
41set_setting $app $ini $group/separate_time_and_channel true
42set_setting $app $ini $group/average_time_and_channel true
43# allowed values = None, Time, or Channel
44set_setting $app $ini $group/average_single_axis Time
45
46# Station outputs : Text file (voltage, amp, phase, power)
47group=beam_pattern/station_outputs/text_file
48set_setting $app $ini $group/raw_complex true
49set_setting $app $ini $group/amp true
50set_setting $app $ini $group/phase true
51set_setting $app $ini $group/auto_power true
52
53# Station outputs : FITS (amp, phase, power)
54group=beam_pattern/station_outputs/fits_image
55set_setting $app $ini $group/amp true
56set_setting $app $ini $group/phase true
57set_setting $app $ini $group/auto_power true
58
59# Telescope (Interferometer) outputs : Text file (complex, amp, phase)
60group=beam_pattern/telescope_outputs/text_file
61set_setting $app $ini $group/cross_power_raw_complex true
62set_setting $app $ini $group/cross_power_amp true
63set_setting $app $ini $group/cross_power_phase true
64
65# Telescope (Interferometer) outputs : FITS (amp, phase)
66group=beam_pattern/telescope_outputs/fits_image
67set_setting $app $ini $group/cross_power_amp true
68set_setting $app $ini $group/cross_power_phase true
69
70# Run the beam pattern simulation
71echo "Running beam pattern simulation"
72T0="$(date +%s)"
73#run_beam_pattern -q $ini
74run_beam_pattern $ini
75echo "  Finished in $(($(date +%s)-T0)) s"
76
77echo ""
78echo "-------------------------------------------------------------------------"
79beams=(./*.fits)
80echo "Run complete!"
81echo ""
82echo "This produced the following ${#beams[*]} beam pattern files:"
83echo ""
84idx=1
85for beam in ${beams[*]}; do
86    echo "  ${idx}. ${beam}"
87    idx=$((idx+1))
88done
89echo ""
90echo "Which can be found in the output directory:"
91echo ""
92echo "  ${example_data_dir}"
93echo "-------------------------------------------------------------------------"
94echo ""
95