Radio frequencies (just a quick look)

We aren't modelling radio telescopes in detail in this trail section, so the following analysis is just enough to be able to complete our basic overview of the EM spectral regions. The target snippet is:

Click on the image to view it full size

The `RegionEM` has ranges stated in wavelengths in nm, which was convenient enough for visible light, but not ideal for radio frequencies. The value properties `fMin` to `fMax` use the ValueType `frequency[gigahertz]` and Unit `gigahertz` already available in the ISO-80000 ModelLibrary, and readonly values have been assigned within redefined `fMin` to `fMax` within `RegionRadio`.

It would be nice to be able to use either wavelength ranges `lMin` to `lMax` or frequency ranges `fMin` to `fMax`, but if we do that we need to make sure that if both value sets are populated they agree. Constraints for the relationship between frequency (f) and wavelength (λ) can be elicited from the following:

Where the speed of light c is held by a common block of `Constants`:

This gives us basic UML-style Constraints on block `RegionEM`, which must be satisfied by any valid instances:

``````
{lMax = constants.c / fMin}
{lMin = constants.c / fMax}
``````

Consistent values for `lMin` and `lMax` have been assigned in readonly redefinitions in block `RegionRadio` using an online resource frequency converter resource, with the SysML Trace relationship used to indicate where the values come from.

However, we can also use SysML Parametrics to calculate them. For example, given `fMin` and `fMax` we can calculate `lMax` and `lMin`. But because this is Parsing Analysis tutorial, we don't want to overwrite values that have been stated as elicited from snippets, so instead some value holders `/calc_lMin` and `/calc_lMax` are used, which we can use to compare with the stated values as shown next .

Notes
Snippets (quotes/extracts)