Skip to contents

This function initializes the MUSIC data structure for a SeaSondeR cross-spectral object, including optional interpolation, parameter setup, and pre-computed placeholders for MUSIC analysis.

Usage

seasonder_initMUSICData(
  seasonder_cs_object,
  range_cells = NULL,
  doppler_bins = NULL,
  NULL_MUSIC = FALSE
)

Arguments

seasonder_cs_object

A SeaSondeR cross-spectral object containing metadata about the radar system.

range_cells

An optional vector specifying the range cells to include. Defaults to all range cells in the object.

doppler_bins

An optional vector specifying the Doppler bins to include. Defaults to all Doppler bins in the object.

NULL_MUSIC

Logical. If TRUE, initializes the MUSIC structure with a NULL placeholder (see seasonder_NULLSeaSondeRCS_MUSIC). Defaults to FALSE.

Value

The updated SeaSondeR cross-spectral object with initialized MUSIC-related attributes.

Details

The function performs the following steps:

  1. Ensures the SeaSondeR object has valid interpolation and parameter settings for MUSIC analysis.

  2. Initializes the MUSIC data structure. If NULL_MUSIC is FALSE, the structure is populated with range cell and Doppler bin combinations.

  3. Computes proportion of dual solutions for MUSIC using seasonder_MUSICComputePropDualSols.

  4. Initializes interpolated data for cross-spectral analysis using seasonder_MUSICInitInterpolatedData.

The final object is ready for further MUSIC analysis steps, such as computing Direction of Arrival (DOA).

See also

seasonder_NULLSeaSondeRCS_MUSIC for initializing a NULL structure. seasonder_initSeaSondeRCS_MUSIC for range and Doppler-based initialization. seasonder_MUSICInitInterpolatedData for interpolated data initialization.

Examples

# Minimal example for initializing MUSIC data (all range cells and Doppler bins)
cs_file <- system.file("css_data/CSS_TORA_24_04_04_0700.cs", package = "SeaSondeR")
apm_file <- system.file("css_data/MeasPattern.txt", package = "SeaSondeR")
apm_obj <- seasonder_readSeaSondeRAPMFile(apm_file)
#> seasonder_createSeaSondeRAPM:  APM object created successfully.
cs_obj <- seasonder_createSeaSondeRCS(cs_file, seasonder_apm_object = apm_obj)
#> new_SeaSondeRCS:  SeaSondeRCS object created successfully.
music_obj <- seasonder_initMUSICData(cs_obj)

# Example: specific range cells and Doppler bins
music_obj2 <- seasonder_initMUSICData(
  cs_obj,
  range_cells = c(1, 2),
  doppler_bins = c(1, 2, 5, 10)
)