ApskScalarRadioMedium

Package: inet.physicallayer.wireless.apsk.packetlevel

ApskScalarRadioMedium

compound module

This radio medium model provides a hypothetical radio that simply uses one of the well-known modulations without utilizing other techiques such as forward error correction, interleaving, spreading, etc. It must be used in conjunction with the ApskScalarRadio model.

See also: ApskScalarRadio, ScalarAnalogModel, ApskScalarTransmitter, ApskScalarReceiver.

propagation : like IPropagation

ConstantSpeedPropagation: This propagation model computes the propagation time to be proportional to the traveled distance,...

IPropagation: The propagation model describes how a radio signal propagates through space over time.

Source:
propagation: <default("ConstantSpeedPropagation")> like IPropagation {
    parameters:
        @display("p=100,100");
} analogModel : like IAnalogModel

IAnalogModel: The analog model describes how the analog representation of the transmissions is turned into the...

Source:
analogModel: <default(signalAnalogRepresentation == "unitDisk" ? "UnitDiskAnalogModel" : signalAnalogRepresentation == "scalar" ? "ScalarAnalogModel" : signalAnalogRepresentation == "dimensional" ? "DimensionalAnalogModel" : "")> like IAnalogModel {
    parameters:
        @display("p=100,200");
} backgroundNoise : like IBackgroundNoise

IBackgroundNoise: The background noise model describes the thermal noise, the cosmic background noise, and other...

Source:
backgroundNoise: <default(signalAnalogRepresentation == "scalar" ? "IsotropicScalarBackgroundNoise" : signalAnalogRepresentation == "dimensional" ? "IsotropicDimensionalBackgroundNoise" : "")> like IBackgroundNoise if typename != "" {
    parameters:
        @display("p=100,300");
} pathLoss : like IPathLoss

IPathLoss: The path loss model describes the reduction of power as the signal propagates through space.

Source:
pathLoss: <default("FreeSpacePathLoss")> like IPathLoss {
    parameters:
        @display("p=300,100");
} obstacleLoss : like IObstacleLoss

IObstacleLoss: The obstacle loss model describes the reduction of power as the signal passes through physical...

Source:
obstacleLoss: <default("")> like IObstacleLoss if typename != "" {
    parameters:
        @display("p=300,200");
} mediumLimitCache : like IMediumLimitCache

Source:
mediumLimitCache: <default("MediumLimitCache")> like IMediumLimitCache {
    parameters:
        @display("p=500,100");
} communicationCache : like ICommunicationCache

VectorCommunicationCache: This communication cache model stores radio, transmission and reception related intermediate...

Source:
communicationCache: <default("VectorCommunicationCache")> like ICommunicationCache {
    parameters:
        @display("p=500,300");
} neighborCache : like INeighborCache

INeighborCache: The neighbor cache model computes the affected set of receivers on the medium for a given...

Source:
neighborCache: <default("")> like INeighborCache if typename != "" {
    parameters:
        @display("p=500,200");
}

Inheritance diagram

The following diagram shows inheritance relationships for this type. Unresolved types are missing from the diagram.

Extends

Name Type Description
RadioMedium compound module

The medium model describes the shared physical medium where communication takes place. It keeps track of radios, noise sources, ongoing transmissions, background noise, and other ongoing noises. The medium computes when, where and how transmissions and noises arrive at receivers. It also efficiently provides the set of interfering transmissions and noises for the receivers.

Parameters

Name Type Default value Description
physicalEnvironmentModule string "physicalEnvironment"

module path of the physical environment model

signalAnalogRepresentation string "scalar"
rangeFilter string ""

filter parameters that control when signals are sent to receiver radios

radioModeFilter bool false

when enabled the radio medium doesn't send signals to a radio if it's neither in receiver nor in transceiver mode

listeningFilter bool false

when enabled the radio medium doesn't send signals to a radio if it listens on the channel in incompatible mode (e.g. different carrier frequency and bandwidth, different modulation)

macAddressFilter bool false

when enabled the radio medium doesn't send signals to a radio if it the destination mac address differs

recordTransmissionLog bool false

logging parameters

recordReceptionLog bool false

when enabled the medium writes one line per reception into the communication log file

Properties

Name Value Description
class RadioMedium
display i=misc/sun

Signals

Name Type Unit
radioRemoved
signalDepartureStarted
radioAdded
signalArrivalStarted
signalAdded
signalDepartureEnded
signalRemoved
signalArrivalEnded

Scheduled messages (observed)

msgkindctrltagsmsgnamecontext
omnetpp::cMessage0removeNonInterferingTransmissions

Direct method calls (observed)

call tofunctioninfo
ApskScalarRadioMediuminet::physicallayer::RadioMedium::addTransmissionaddTransmission
ApskErrorModelinet::physicallayer::ApskErrorModel::computeBitErrorRatecomputeBitErrorRate
ApskErrorModelinet::physicallayer::ApskErrorModel::computePacketErrorRatecomputePacketErrorRate
ApskErrorModelinet::physicallayer::ApskErrorModel::computeSymbolErrorRatecomputeSymbolErrorRate
Ieee80211NistErrorModelinet::physicallayer::Ieee80211NistErrorModel::computeBitErrorRatecomputeBitErrorRate
Ieee80211NistErrorModelinet::physicallayer::Ieee80211NistErrorModel::computePacketErrorRatecomputePacketErrorRate
Ieee80211NistErrorModelinet::physicallayer::Ieee80211NistErrorModel::computeSymbolErrorRatecomputeSymbolErrorRate

Called methods (observed)

functioninfocall from
inet::physicallayer::RadioMedium::addRadioaddRadioApskScalarRadio, Ieee80211ScalarRadio
inet::physicallayer::RadioMedium::addTransmissionaddTransmissionApskScalarRadioMedium
inet::physicallayer::RadioMedium::listenOnMediumlistenOnMediumApskScalarRadio, Ieee80211ScalarRadio
inet::physicallayer::RadioMedium::receivePacketreceivePacketApskScalarRadio, Ieee80211ScalarRadio
inet::physicallayer::RadioMedium::transmitPackettransmitPacketApskScalarRadio, Ieee80211ScalarRadio

Packet operations (observed)

chunkTypepacketAction
peekAllAsBits, peekAllAsBytes, peekAt
ApskPhyHeaderinsertAtBack, peekAtFront
BitCountChunkinsertAtBack
BitsChunkPacket
ByteCountChunkinsertAtBack
BytesChunkPacket
CsmaCaMacAckHeaderinsertAtBack
CsmaCaMacDataHeaderinsertAtBack
CsmaCaMacTrailerinsertAtBack
IcmpEchoReplyinsertAtBack
IcmpEchoRequestinsertAtBack
Ipv4HeaderinsertAtBack
Ieee80211DsssPhyHeaderpeekAtFront
Ieee80211OfdmPhyHeaderpeekAtFront

Shared Tagging operations (observed)

tagTypetagAction
clearTags
ErrorRateIndaddTagIfAbsent
PacketProtocolTagaddTag, getTag
SignalBandReqfindTag
SignalBitrateReqfindTag
SignalPowerIndaddTagIfAbsent
SignalPowerReqfindTag
SignalTimeIndaddTagIfAbsent
SnirIndaddTagIfAbsent
Ieee80211ChannelIndaddTagIfAbsent
Ieee80211ChannelReqfindTag
Ieee80211ModeIndaddTagIfAbsent
Ieee80211ModeReqfindTag

Unassigned submodule parameters

Name Type Default value Description
neighborCache.refillPeriod double

Source code

//
// This radio medium model provides a hypothetical radio that simply uses one of
// the  well-known modulations without utilizing other techiques such as forward
// error correction, interleaving, spreading, etc. It must be used in
// conjunction with the ~ApskScalarRadio model.
//
// @see ~ApskScalarRadio, ~ScalarAnalogModel, ~ApskScalarTransmitter,
// ~ApskScalarReceiver.
//
module ApskScalarRadioMedium extends RadioMedium
{
    parameters:
        analogModel.typename = default("ScalarAnalogModel");
        backgroundNoise.typename = default("IsotropicScalarBackgroundNoise");
}

File: src/inet/physicallayer/wireless/apsk/packetlevel/ApskScalarRadioMedium.ned