TIREM (Terrain Integrated Rough Earth Model) is a SignalPropagationModel which can compute propagation loss as a result of irregular terrain, water, and other non-line-of-sight effects.
Use of TIREM requires an additional DLL which can be requested from AGI support.
The functionality described in this topic requires a license for the TIREM Library.
STK Components includes two implementations of TIREM with different system requirements.
TiremPropagationModel implements the most recent available version of TIREM using a native library. Because of this dependency, this implementation only supports 64-bit Windows and Linux platforms.
When the propagation model computes results, the required native libraries (either .dll or .so files depending on the platform) will be extracted into the temporary directory, then loaded from there into the process automatically.
Alternatively, if this auto-extraction is not suitable for your application, you can instead call SetNativeLibraryPath and provide a local directory where the required libraries should be loaded from. This must be done once before any other use of the propagation model.
On Windows, the native libraries depend on the Microsoft Visual C++ Redistributable for Visual Studio 2017. On Linux, the libraries depend on GLIBC, libstdc++, and libgcc. These dependencies must be installed on the system in order to use this implementation.
TiremPropagationModel3_18 implements version 3.18 of TIREM using a fully managed implementation, like the rest of STK Components. As a result, it can be used like any other propagation model without any additional native or system-level dependencies.
TIREM contains its own versions of signal free-space path loss and atmospheric attenuation. STK Components also has versions of these loss models. For example, FreeSpacePathLossModel is added by default when using WirelessLinkExtension or CommunicationSystem.
The TIREM model applies propagation loss to signals as they are propagated. However, the TIREM calculation also produces additional results which can be retrieved from the signal.
TiremPropagationData is added to each signal, which can be retrieved using SignalGetDataByType. This data object represents the common subset of result information from the above implementations. Each implementation defines a subclass of TiremPropagationData containing additional implementation-specific results.