WP10 – Deliverable 10.3: Functional image inversion … · produce simulated signal spectra close...

11
WP10 – Deliverable 10.3: Functional image inversion and visualization software designed to work with data from the EISCAT_3D system (month 22) V. Belyey and C. La Hoz 31 December 2012 Introduction. The problem of radar image inversion is multi-parametric, in most cases underdetermined (Thompson et al, 2001, Taylor et al, 2003), thus strongly dependent on the quality of input data. One of the best mathematically defined methods for image inversion is Maximum Entropy Method (MEM) (Thompson et al, 2001, Taylor et al, 2003, Hysell and Chau, 2006). The software described in this Deliverable is based on the software prototype developed in Work Package 10 of the Design Study project implementing the MEM. Java programming language was selected to develop the software based on many advantages as compared to other languages. Java is platform independent (runnable on any platform: Unix, Linux, Windows, etc. that have Java Virtual Machine JVM installed), is fast enough (even compared to C++), is an open-source language, it provides many useful classes to develop graphics user interface (GUI), etc. At the same time the software is not designed to process large data sets, it rather is focused on radar image inversion, implying processing relatively short time periods when the data indicate considerable degree of coherence in the data acquired from different receiving antennas. The software described in this report was developed as a command file driven executable jar (Java archive) file containing all source code files that allows easy upgrade and/or modifications. An important functional implemented in the software is possibility to simulate incoherent scatter (IS) raw data for multiple receiving antennas (interferometry) and test entire program up to inverting the image based on the simulated data. Functional diagram (figure 1) shows functional organization of the software (below referred to as program). The four principal units of the program are designed to: (1) acquire raw data (complex values of voltages) for each of N input channels; (2) integrate the raw data and supply the results for image inversion; (3) invert 3-dimensional radar image corresponding to the integrated input data; (4) display the inverted radar image along with the input data. More detailed description of the units is below. Figure 1. Functional diagram of the image inversion and visualization software package. Raw data input unit is designed to read raw data form a disk, providing time synchronization and phase correction to compensate possible instrumental time and phase offsets in data channels. Visualization unit Raw data input unit channel 1 channel 2 ... channel N Integration unit Power profiles Lag profile matrices Power and cross-spectra Visibility (coherence) Image inversion unit

Transcript of WP10 – Deliverable 10.3: Functional image inversion … · produce simulated signal spectra close...

Page 1: WP10 – Deliverable 10.3: Functional image inversion … · produce simulated signal spectra close to real-world ones, see figure 3. The power spectrum of incoherent scatter signal

WP10 – Deliverable 10.3: Functional image inversion and visualization software designed to work with data from the EISCAT_3D system (month 22)

V. Belyey and C. La Hoz 31 December 2012

Introduction. The problem of radar image inversion is multi-parametric, in most cases underdetermined (Thompson et al, 2001, Taylor et al, 2003), thus strongly dependent on the quality of input data. One of the best mathematically defined methods for image inversion is Maximum Entropy Method (MEM) (Thompson et al, 2001, Taylor et al, 2003, Hysell and Chau, 2006). The software described in this Deliverable is based on the software prototype developed in Work Package 10 of the Design Study project implementing the MEM. Java programming language was selected to develop the software based on many advantages as compared to other languages. Java is platform independent (runnable on any platform: Unix, Linux, Windows, etc. that have Java Virtual Machine JVM installed), is fast enough (even compared to C++), is an open-source language, it provides many useful classes to develop graphics user interface (GUI), etc. At the same time the software is not designed to process large data sets, it rather is focused on radar image inversion, implying processing relatively short time periods when the data indicate considerable degree of coherence in the data acquired from different receiving antennas. The software described in this report was developed as a command file driven executable jar (Java archive) file containing all source code files that allows easy upgrade and/or modifications. An important functional implemented in the software is possibility to simulate incoherent scatter (IS) raw data for multiple receiving antennas (interferometry) and test entire program up to inverting the image based on the simulated data. Functional diagram (figure 1) shows functional organization of the software (below referred to as program). The four principal units of the program are designed to: (1) acquire raw data (complex values of voltages) for each of N input channels; (2) integrate the raw data and supply the results for image inversion; (3) invert 3-dimensional radar image corresponding to the integrated input data; (4) display the inverted radar image along with the input data. More detailed description of the units is below.

Figure 1. Functional diagram of the image inversion and visualization software package.

Raw data input unit is designed to read raw data form a disk, providing time synchronization and phase correction to compensate possible instrumental time and phase offsets in data channels.

Visualization unitRaw data input unit

channel 1

channel 2

...

channel N

Integration unit

Power profilesLag profile matrices

Power and cross-spectra

Visibility(coherence)

Image inversion unit

Page 2: WP10 – Deliverable 10.3: Functional image inversion … · produce simulated signal spectra close to real-world ones, see figure 3. The power spectrum of incoherent scatter signal

The raw input data read from each data channel are displayed in main window (figure 2). The raw data for each profile (complex voltage as a function of range recorded during one inter-pulse period, IPP) are plotted in separate tab panel. By default the data are shown as real and imaginary parts (the blue and red lines in figure 2, respectively) of the complex signal. Other plotting modes (absolute value, real part, imaginary part, phase angle between imaginary and real parts) can be selected by clicking corresponding button on top (control) panel. The top panel also contains two buttons controlling the raw data flow. Clicking on the left-hand button allows to pause (if the program is running) or to resume data reading (if the program is paused). The right-hand button stops all processing of the data. The background color of the control panel indicates current state of the program: running (green), paused (yellow), or stopped (red).

The tab panel “CMD” contains the text command file controlling all functionality of the program.

All the parameters determining the functionality of the raw data input unit are given in corresponding sections of the command file (see example below). The sections “options:EISCAT/EASI” determine the parameters necessary to properly read the raw data recorded by EISCAT or EASI (ESR Aperture Synthesis Interferometer) data collection systems.

{section:options:EISCAT} data path = "/Users/vasyl/testData/EISCAT/LT4FL@32m/20120327_10/" IPP = 1e-2 [S] reverse frequency axis = true # can also be defined in channel setup {setup:EISCAT:channel:0} name = "32m" antenna coordinates = 0., 0., 0. [m] operating frequency = 499.35 [MHz] sampling interval = 20. [microS]

synchronization times = 80, 440, 1270 [uS] # time relative to SYNC bit ON: TX start, TX end, RX start raw data = true data address vector: signal = 84400, 412, 1, 422 # offset, length (n Samples), Sample Increment, IPP increment {section:options:EASI} data path = "/Users/vasyl/testData/LT4/2012-03-27/"# NEIALs time offset = 0 # IPPs

IPP number (of) = 0 sampling interval = 20.0 [uS] {setup:EASI:channel:0} name = "C" Phase Offset = 0 [DEG] # Default = 0 (no phase correction) antenna coordinates = 84.19, -28.2, 0e0 [m] operating frequency = 499.35 [MHz]

synchronization times = 80, 440, 1270 [uS]

PrintHelpWindowFile

CMD S0 S1 S2 S3 S4 S5 S6 S7

re/im(S7): -2.82523e+07 -> 2.82523e+07

200 400 600 800 1000 1200Range, km-3

0-2

5-2

0-1

5-1

0 -

5 0

5 1

0 1

5 2

0 2

5S7

, 10*

*6phasere+imimreabsOFF X||

0%0%RTR=2.1e+04; 2012-12-24T09:24:01.784000 UT

Figure 2. Example of raw data profile displayed in main window as real and imaginary parts of complex signal (blue and red lines, respectively).

Page 3: WP10 – Deliverable 10.3: Functional image inversion … · produce simulated signal spectra close to real-world ones, see figure 3. The power spectrum of incoherent scatter signal

The parameters in sections “setup:EISCAT/EASI:channel:” provide details (if unavailable in data files) to read requested data profiles and to perform time and phase corrections, if necessary. The relative antenna coordinates, defined in the sections, are used for image inversion in the image inversion unit. Names of the parameters are self explanatory, for more details see section “Command file” below. Simulating incoherent scatter signals. An important functional feature of the raw data input unit is its ability to generate raw incoherent scatter data to simulate the processes in the ionosphere that can be applicable for radar image inversion (for instance, highly inhomogeneous distribution of electron density in an aurora across the radar beam). Low level (receiver voltage) simulations are implemented and used for testing all the components of the imaging software.

The transmitted signal is given as TX!!T , t( ) = AT

!!T( ) "! t( ) "! #$ t( ) "exp i!t( )

Here ! x( ) =0, x < 01, x ! 0

"#$

%$, !!T =

!R"!DT!

R"!DT

is a unit vector indicating the direction to a point !R

from the TX site (transmission direction), !DT is the transmitter coordinates (usually

!DT = 0,0, 0{ } ),

and AT!!T( ) is the transmitting antenna pattern. The signal received by the j -th receiving antenna is

RXj

!Dj, t( ) = d

!R 1

R2 !!R"!Dj

2 !TX!#T , t "

R+!R"!Dj

C

$

%

&&

'

(

))! Ir!R, t "

!R"!Dj

C

$

%

&&

'

(

))* !Aj

!# j( ) !exp "i ! k

!R"!Dj

+,

-.

Here Ir!R, t( ) is refraction index, j = 0, 1, ..., N !1 is the receiving antenna index ( N is the

number of receiving antennas), !Dj is the antenna coordinates,

!! j =

!R"!Dj!

R"!Dj

is the unit direction

vector to the point !R from the j -th receiving antenna, and Aj

!! j( ) is the j –th receiving antenna

pattern. Assuming R >> Dj (range much greater than any baseline), thus the TX pulse spatial length

LTX =C ! "2

<< R , the signal received by the j -th antenna becomes:

RXj

!Dj, t( ) =

AT!!T( ) "Aj

!! j( )

R4"exp i!t # 2kR0( ) dr Ir R0 + r, t #

!R0 +!r

C

$

%

&&

'

(

))"exp #i " k " r + i "

!k "!Dj

*+

,-

R0

R+LTX

.

The integration volume in this expression is defined as the intersection of the transmitting and the j -th receiving antenna patterns. The volume is divided into reasonably small sub-volumes (a few tens or hundreds meters across the beam, depending on the range R , and with range increment corresponding to given sampling interval) so that the integration volume comprises at least several thousands of the sub-volumes, and the scattered signal is numerically integrated over the volume.

The incoherent scatter signal properties are determined by the refraction index Ir!R, t( ) . The index is

simulated by multiplying Fourier transform of a long series of complex Gaussian white noise samples by computed incoherent scatter power spectrum SIS ! e( ) (see below), and performing inverse Fourier transform of the resulting complex spectrum. The simulation algorithm was tested and proved to produce simulated signal spectra close to real-world ones, see figure 3.

Page 4: WP10 – Deliverable 10.3: Functional image inversion … · produce simulated signal spectra close to real-world ones, see figure 3. The power spectrum of incoherent scatter signal

The power spectrum of incoherent scatter signal is computed as

SIS ! e( ) = !e

!k,! e( ) /D

!k,!( )

2exp !! e

2( ) ,

where !e

!k,! e( ) = kDe

2

k21+! eZ ! e( )!" #$ is electrostatic susceptibility for electrons, Z !( ) is plasma

dispersion function, D!k,!( ) =1+ ! i

!k,! e( )+ !e

!k,! e( ) is electrostatic plasma dielectric function,

! i

!k," e( ) = kDi

2

k21+

#2kvi

Z " i( )

1+ i ! $ in2kvi

Z " i( )

"

#

$$$$

%

&

''''

is electrostatic susceptibility for ions, the normalized

frequency for electrons is ! e ="2kve

, !k is wave vector, ve is electron/ion thermal velocity, and ! is

angular frequency. A fragment of command file determining simulation parameters is shown below.

PrintComputeFile

N=1000; Te=1.00000 [kK]; Te/Ti=3.00000; Mi=2.00000; Fo=500.000 [MHz]

-25 -20 -15 -10 -5 0 5 10 15 20Frequency, kHz

0 1

0 2

0 3

0 4

0 5

0 6

0 7

0 8

0 9

010

011

012

0IS

pow

er s

pect

rum

, 10*

*-3

PrintComputeFile

N=30; Te=1.00000 [kK]; Te/Ti=3.00000; Mi=2.00000; Fo=500.000 [MHz]

-25 -20 -15 -10 -5 0 5 10 15 20Frequency, kHz

0 2

0 4

0 6

0 8

010

012

014

0IS

pow

er s

pect

rum

, 10*

*-3

Figure 3. Examples of simulated incoherent scatter signal spectra. Theoretical spectrum (red lines) computed for electron temperature , electron to ion temperature ration , ion mass (hydrogen), operating frequency is 500 MHz (corresponding to EISCAT Svalbard Radar, ESR). Simulated signal spectra (blue lines) are shown after averaging 30 (left-hand panel) and 1000 (right-hand panel) times.

Page 5: WP10 – Deliverable 10.3: Functional image inversion … · produce simulated signal spectra close to real-world ones, see figure 3. The power spectrum of incoherent scatter signal

Integration unit is designed to accept the raw data profiles, Pjr2C, t j

!

"#

$

%& , supplied by the raw data input

unit, integrate the raw data, providing the integrated data to the visualization and image inversion units. The unit estimates the following statistical functions (F x{ } denotes Fourier transform and angle

brackets mean statistical average over integration period). o RTI (Range-Time-Intensity) or power profiles. The RTI is computed as

RTI j r,T( ) = Pj r, t( )2 .

o FTI (Frequency-Time-Intensity). It represents power spectra of entire raw profiles

(unresolved in range): FTI j f ,T( ) = F Pjr2C, t

!

"#

$

%&

'()

*+,

2

.

o LPM (Lag Profile Matrix) as function of range, if requested: LPMi, j r,!( ) = Pi r, t j( ) !Pj" r # 2C! , t j( ) .

o CS (Cross Spectra) for each pair of raw data channels (base lines) as function of range. Particular cases of the CS are power spectra for each channel. CS can be computed either as

average product of complex spectra: CSi, j r, f( ) = F Pi r, t j( ) !Pj" r #! , t j( ){ } or as

Fourier transform of LPM: CS r, f( ) = F LPM r,!( ){ } .

o Coherence as function of range: COHi, j r, f( ) =CSi, j r, f( )

CSi,i2 r, f( ) !CSj, j2 r, f( )

.

All the function estimates are displayed in corresponding windows (see examples in figures 4 and 5) providing visual control of the quality of integration.

{section:options:SIMULATION} operatingFrequency = 500e6 [Hz]# lambda = 1.66667 [m] IPP=0.01 [S] sampling Interval = 2e-5 [S] number of samples = 384 synchronization times = 450, 810, 1270 [uS] # time relative to SYNC bit ON: TX start, TX end, RX start SNR = 3.0 nNoiseSamples = 80 # Density “blobs” to simulate aurora or NEIALs # Each blob is defined by 7 parameters: Amplitude (relative to local electron # density), x0[m], y0[m], z0[m], sigmaX[m], sigmaY[m], sigmaZ[m] # 1 blob: blobParameterVector = 5e1, 0e0, 0e0, 900e3, 600., 300., 300e3 # 2 blobs: # blobParameterVector = 15., 0., 0., 300e3, 600., 300., 50e3, 15., 5e3, 5e3, 900e3, 300., 600., 50e3 Data Length = 1.0 [S] ####### CHANNELS: ####### {setup:receivePoint:0} Name = "ESR 32m" antennaCoordinates= 0, 0, 0 [m] # COMMENT transmitter = true transmitT0 = 25 [uS] # SYNC -> TX delay transmitT1 = 385 [uS] # SYNC -> end of TX delay {setup:receivePoint:1} Name = "ESR 42m" antennaCoordinates= 0e0, 10e0, 0e0 [m] # 6y*l transmitter = false

Page 6: WP10 – Deliverable 10.3: Functional image inversion … · produce simulated signal spectra close to real-world ones, see figure 3. The power spectrum of incoherent scatter signal

Image inversion unit is designed to recover the 3-dimensional radar image corresponding to the visibility (coherence) data for every Doppler frequency component. It means the image (brightness) is a function of 5 variables: time, range, Doppler frequency, and a unit vector (defined by two independent directional cosines) determining the direction inside the radar beam the brightness is computed for. The optimal algorithm implementing the MEM method for image inversion is described in (Hysell and Chau, 2006). The image inversion unit is most time demanding part of the program (it takes up to a few tens of seconds to compute one brightness value). Visualization unit. The unit displays the resulting radar image (brightness) as well as the integrated data used to compute the image in two forms.

o In separate windows showing power profiles, power spectra, log profile matrix (if requested), cross spectra, coherence (visibility function), and image. Each window can be individually resized for user’s convenience.

o In common window containing “correlation matrix” for N raw data channels (upper left part of the window), power profiles (N left bottom panels), and the image at N +1 different view angles (right-hand panel column). The correlation matrix contains N 2 panel matrix displaying absolute values of complex cross-spectra (panels at line i and column j , i ! j , and, in the left bottom part of the matrix i > j , either phase of the corresponding cross

spectra CSj,i r, f( ) , or absolute value of the coherence COH j,i r, f( ) , as defined by the command file parameter “movie type”.

PrintWindow

PS(B0) PS(A0) PS(42m)PS(32m)

10:24:26 10:24:27 10:24:28Time, UT 27/03/2012

-30

-25

-20

-15

-10

-5

0 5

10

15

20

Freq

uenc

y, k

Hz

0.3

0.5

0.8

1.0

1.3

1.5

1.8

2.0

2.3

2.5

2.8

3.0

PS(3

2m)

PS(32m): 1.88e-11 -> 3.07

PrintWindow

PP(B0) PP(A0) PP(42m)PP(32m)

10:24:26 10:24:27 10:24:28 10:24:26 10:24:27 10:24:27 10:24:27 10:24:28 10:24:28 10:24:28Time, UT 27/03/2012

20

03

00

40

05

00

60

07

00

80

09

00

10

00

11

00

12

00

13

00

Ran

ge,

km

10

02

00

30

04

00

50

06

00

70

08

00

90

01

00

01

10

0PP

(32

m)

PP(32m): 10.5 -> 1.19e+03

Figure 4. Examples of RTI (left-hand panel) and FTI (right-hand panel) windows.

Page 7: WP10 – Deliverable 10.3: Functional image inversion … · produce simulated signal spectra close to real-world ones, see figure 3. The power spectrum of incoherent scatter signal

PrintWindow

COH:0:1(B0:A0, 0.20 s) COH:0:2(B0:32m, 0.20 s) COH:0:3(B0:42m, 0.20 s)COH:1:2(A0:32m, 0.20 s) COH:1:3(A0:42m, 0.20 s) COH:2:3(32m:42m, 0.20 s)

-25 -20 -15 -10 -5 0 5 10 15 20Frequency, kHz

200

300

400

500

600

700

800

900

1000

1100

1200

Rang

e, k

m

010

020

030

040

050

060

070

080

090

010

00CO

H:2

:3(3

2m:4

2m, 0

.20

s), 1

0**-

3

COH:2:3(32m:42m, 0.20 s): 0.00 -> 1.00

PrintWindow

CS:1:2(A0:32m, 0.20 s) CS:1:3(A0:42m, 0.20 s) CS:2:2(32m, 0.20 s)

CS:0:2(B0:32m, 0.20 s) CS:0:3(B0:42m, 0.20 s) CS:1:1(A0, 0.20 s)

CS:0:0(B0, 0.20 s) CS:0:1(B0:A0, 0.20 s)

CS:3:3(42m, 0.20 s)CS:2:3(32m:42m, 0.20 s)

-25 -20 -15 -10 -5 0 5 10 15 20Frequency, kHz

200

300

400

500

600

700

800

900

1000

1100

1200

Rang

e, k

m

10

20

30

40

50

60

70

80

CS:2

:3(3

2m:4

2m, 0

.20

s)

CS:2:3(32m:42m, 0.20 s): 2.49e-66 -> 89.3

Figure 5. Examples of CS (Cross Spectrum, left-hand panel) and Coherence (right-hand panel) windows.

-10

-8

-6

-4

-2

0 2

4 6

8Fr

eque

ncy,

kH

z

13:00:00.02 UT: 0.00 -> 103

Figure 6. Example of brightness distribution as a 3D color image. The frequency axis in the right-hand part shows correspondence between Doppler frequency components and the color the frequency is encoded by.

Page 8: WP10 – Deliverable 10.3: Functional image inversion … · produce simulated signal spectra close to real-world ones, see figure 3. The power spectrum of incoherent scatter signal

The problem of displaying a 5-dimensional image on a 2D surface is solved as follows. Time development of the image is shown as separate frames of a computer animation. The frequency dependence of the image is encoded as color of the image part, negative Doppler frequency components are shown in red, near-zero frequency is green, and positive Doppler components are shown in blue (see the frequency color axis in the right-hand part of the image example in figure 6). Each plot panel in either window can display its data in different modes. User can select desirable plot mode by clicking right mouse button on a panel that brings up a popup menu. The items in the popup menu allow showing the data as absolute value (in logarithmic or linear scale) or phase of a complex function, selecting view angle of a 3-dimensional picture (brightness), as well as printing the panel and saving the data in text format or the picture in PPM (Portable Pixel Map) format. The common window contains the results for each consecutive integration period and, if requested, is saved to output directory (see the Installation and usage section below) as a numbered sequence of frames, which can be converted to animation file (for example, to mpeg media file by using ppm2mpeg program available on Linux computers). Command file. The program is designed as a command file driven Java application. It means functionality of all the units is controlled by a set of processing parameters listed in a simple text file easy to read and to edit. This also enables simple but effective logging by copying the command file into the output directory containing all results of processing. Two template command files, to process real world data and to simulate incoherent scatter data, are supplied in the runnable jar file (see the Installation and usage section below). Command file contains several sections with section name in curly brackets {} dividing the file into separate logical parts each controlling certain part of the program. Parameters defined in command file represent a text line (one parameter per line). A parameter is defined as a text line consisting of the parameter’s name parts, sign of equality “=”, the parameter’s value, and, optionally, the unit of the parameter in square brackets: parameter name part1 part2 = 30.1 [m] When the line is analyzed by the program blank spaces are ignored, name parts are case-insensitive, parameter’s value type (text, boolean, numeric) corresponds to the right-hand part of the equality, and the parameter’s unit (if present) is read from the square brackets. Unrecognized parameter value or unit will cause error. All symbols following sign “#” are ignored that allows adding comments to command file. Most of the parameters have default values so that can be omitted. A template command file is given below, with the parameters explained by following comment line(s). {section:options:EASI} # Section defining parameters for EASI raw data

Data path = "/Users/vasyl/testData/LT4/2012-03-27/” # Mandatory parameter. # Absolute path to the directory containing the data to process Time offset = 0 # IPPs # Instrumental time offset relative to other type of raw data. # Can be given for each separate channel.

Inter Pulse Period = 20 [mS] # Can be used to change the value of IPP read from raw data file.

IPP number (of) = 0 # A vector with elements: [0] - IPP number [1] - out of nIPPs. # If [0] = 0 || 1 and [1] not given, then nIPPs is assumed 2 Sampling interval = 20.0 [uS] # Sampling interval (inverse of sampling frequency) the raw data was taken at. {setup:EASI:channel:0} # Section defining parameters of one particular raw data channel Name = "C" Phase Offset = 0 [DEG] # Instrumental phase offset. Default = 0 (no phase correction) Antenna coordinates = 84.19, -28.2, 0e0 [m] Operating frequency = 499.35 [MHz]

Synchronization times = 80, 440, 1270 [uS] # Time relative to SYNC bit ON: TX start, TX end, RX start

Page 9: WP10 – Deliverable 10.3: Functional image inversion … · produce simulated signal spectra close to real-world ones, see figure 3. The power spectrum of incoherent scatter signal

{setup:EASI:channel:1} # See channel:0 Name = "B" Phase Offset = 0 [DEG] # Default = 0 (no phase correction) Antenna coordinates = 103.94, 0.79, 0e0 [m] Operating frequency = 499.35 [MHz]

Synchronization times = 80, 440, 970 [uS] {section:options:EISCAT} Data path = "/Users/vasyl/testData/EISCAT/LT4FL@32m/20120327_10/" # Section defining parameters for EISCAT raw data IPP = 1e-2 [S] Reverse frequency axis = true # Whether to revert frequency axis in the raw data. # Depends on IF (intermediate frequency) conversion sequence. True for ESR data. # Can also be defined in a channel setup section {setup:EISCAT:channel:0} Name = "32m" Antenna coordinates = 0e0, 0e0, 0e0 [m] Operating frequency = 499.35 [MHz] Sampling interval = 2e1 [u]

Synchronization times = 80, 440, 1270 [uS] raw data = true

data address vector: signal = 84400, 412, 1, 422 # Offset, length (n Samples), sample increment, IPP increment # Mandatory parameter. {processTimeInterval} # Section defining the time interval to process.

"2012-03-27T10:24:26 -> 2012-03-27T10:24:29" # A parameter of type String. If second part (end time) is absent # then process until the end of available data {options:IMAGING} # Section defining parameters for image inversion/visualization

Field of View (FOV) = 2.0, 3.0 [DEG] # Vector deltaX, deltaY. If deltaY not given - assumed equal to deltaX.

grid size = 31, 31 # Vector nX, nY. Default 5 x 5. # Defines number of directions inside the FOV the image is computed at. Power channel number = 1 # Default is 0 # What channel power spectrum to use for image intensity normalization. Make movie = true # Whether to save numbered frame files (for converting to animation file). frequency limit = -10.0, 10.0 [kHz] # The frequency interval to process for image inversion

range limits = 500.0, 700.0 [km] # The range interval to process for image inversion {options:PROCESSING} # Section defining parameters of integration. spectral window = "Hann" # Spectral window type for weighting spectral components. Default is "None" movie type = "phase" # Default = "coherence" # What data to show in the left-bottom part of Coherence Matrix movie size full screen = true # default = false

data clear period = 1 [S] # Integrator display windows to clear every ...[S]. Default is 100*(Integration Time) range increment = 0.5 # The part of pulse length used to compute LPM or CS. Default is 1.0 double correlation length = true # Defines the lag span to compute LPM: # +/-halfPulseLength (false) or +/-pulseLength (true) integration mode = 8 # 0-none; 1-power profiles; 2-power spectra; 4-cross-spectra; 8-coherence; 16-image Integration Time = 0.2 [S] Compute LPM = false # Whether to compute CS via LPM. Subtract background noise = false # Default is false Subtract background noise from LPM = true # Default is false # Whether to subtract noise level estimated from LPM near-zero lags. Installation and usage. The program is compiled and distributed as a runnable jar (Java Archive) file. The MEM image inversion algorithm (Hysell and Chau, 2006) is implemented as a native function for

Page 10: WP10 – Deliverable 10.3: Functional image inversion … · produce simulated signal spectra close to real-world ones, see figure 3. The power spectrum of incoherent scatter signal

64-bit Linux and MacOS platforms. Before running the program, user needs to unpack necessary shared library (libMEM2dJCmac.dylib for MacOS or libMEM2dJClinux64.so for Linux) and copy it to one of default library directories used by Java virtual machine. Below two examples are given for MacOS and Linux, respectively.

The jar file contains source Java code that makes it … Similar ”jar xf” command can be used to unpack any source class or directory in case modifications are desirable. To obtain table of contents for the RTVB.jar archive command ”jar tf” is used. An example is shown below.

To extract and use a template command file the following commands are used.

To run the program a user enters the following command.

The command-line arguments have the following meaning. –C pathToCommandFile indicates absolute path to the command file to be loaded for data processing; –C pathToOutputDirectory determines absolute path to the output directory that the results of processing will be saved to (a copy of the command file will be copied and a sub-directory named “movieCS” created in the directory) ; –v (“verbose”, optional) causes additional information printed to the command terminal window. In case options –C and/or –O are not given, the program will request the user to select the paths via file select dialog. First, the program will scan the data path(s) for raw data files and will pause displaying the command file loaded at start. To start processing the user either presses “Space” key on keyboard or clicks “|>” (Run/Pause) button on the top control panel. After every integration portion is finished, a dialog will appear where the user can choose whether to pause after every integration or process data continuously. The GUI window with the command file will appear when processing all available data is finished. Conclusions. The functional image inversion and visualization software package is developed as a runnable jar (Java archive) file containing the source code. This allows to modify and upgrade the software. Possible upgrade of the software can consist in adding the capabilities to view partial image frames during/after data processing, to decode raw data in case of complex transmission codes, to improve GUI functionality, etc.

jar xf RTVB.jar Resources/libMEM2dJCmac.dylib sudo cp –pv libMEM2dJCmac.dylib /usr/lib/java/

jar xf RTVB.jar Resources/libMEM2dJClinux64.so sudo cp –pv libMEM2dJClinux64.so /usr/lib64/

jar tf RTVB.jar META-INF/ META-INF/MANIFEST.MF argFileRTVB.txt Interferometry/ Interferometry/IFillCoherenceData.class Interferometry/TAntenna.class … ../../../Apps/RTVB/src/RTVB.java ../../../Apps/RTVB/src/OptParser.java ../../../Apps/RTVB/src/RTVBhelpGenerator.java …

jar xf RTVB.jar Resources/Template.data.cmd.txt jar xf RTVB.jar Resources/Template.simulation.cmd.txt

java -jar RTVB.jar –C /Users/data/aCommandFile.cmd.txt –O /Users/processing/ -v

Page 11: WP10 – Deliverable 10.3: Functional image inversion … · produce simulated signal spectra close to real-world ones, see figure 3. The power spectrum of incoherent scatter signal

References. Thompson, A.R., J.M. Moran, G.W. Swenson, Jr. Interferometry and Synthesis in Radio Astronomy. Second Edition. Chichester: Wiley, 2001.

Taylor, G.B., C.L. Carilli, and R.A. Perley. Synthesis imaging in radio astronomy II : a collection of lectures from the Sixth NRAO/NMIMT Synthesis Imaging Summer School held at Socorro, New Mexico, U.S.A., 17-23 June, 1998. San Francisco : Astronomical Society of the Pacific, 2003.

Hysell, D.L. and J.L. Chau. Optimal aperture synthesis radar imaging. Radio Sci., Vol. 41, RS2003, doi 10.1029/2005RS003383, 2006.