Main Content


Amplify and transmit a signal

  • Transmitter block

Phased Array System Toolbox / Transmitters and Receivers


The Transmitter block amplifies and transmits waveform pulses. The transmitter can either maintain coherence between pulses or insert phase noise.



expand all

Input signal, specified as a complex-valued vector.

Data Types: double


expand all

Transmitted signal, returned as a complex-valued vector. The transmitted signal is the amplified input signal Input 1 where the amplification is based on the characteristics of the transmitter, such as the peak power and the gain.

Data Types: double

Transmitter status, output as a logical vector where true indicates the transmitter is on for the corresponding sample time, and false indicates the transmitter is off.


To enable this port, select the Enable transmitter status output check box.

Data Types: double

Added phase noise, output as a vector. Random phase noise added to each transmitted sample. PHNOISE is a vector which has the same dimension as Y. Each element in PHNOISE contains the random phase between 0 and 2*pi, added to the corresponding sample in Y by the transmitter.


To enable this port, select the Enable pulse phase noise output check box and deselect the Preserve coherence among pulses check box.

Data Types: double


expand all

Transmitted peak power, specified as a positive scalar. Units are in Watts.

Transmit gain, specified as a scalar. Units are in dB.

Transmit loss factor, specified as a nonnegative scalar. Units are in dB.

Select this check box to send the transmitter-in-use status for each output sample from the output port TR. From the output port, a 1 indicates that the transmitter is on, and a 0 indicates that the transmitter is off.

Select this check box to preserve coherence among transmitted pulses. When you select this box, the transmitter does not introduce any random phases to the output pulses. When you clear this box, the transmitter adds a random phase noise to each transmitted pulse. The random phase noise is introduced by multiplying the pulse value by ewhere ϕ is a uniform random variable on the interval [0,2π].

Select this check box to create an output port, Ph, with the output sample’s random phase noise introduced if Preserve coherence among pulses is cleared. The output port can be directed to a receiver to simulate coherent-on-receive systems.


This check box appears only when Preserve coherence among pulses is deselected.

Block simulation, specified as Interpreted Execution or Code Generation. If you want your block to use the MATLAB® interpreter, choose Interpreted Execution. If you want your block to run as compiled code, choose Code Generation. Compiled code requires time to compile but usually runs faster.

Interpreted execution is useful when you are developing and tuning a model. The block runs the underlying System object™ in MATLAB. You can change and execute your model quickly. When you are satisfied with your results, you can then run the block using Code Generation. Long simulations run faster with generated code than in interpreted execution. You can run repeated executions without recompiling, but if you change any block parameters, then the block automatically recompiles before execution.

This table shows how the Simulate using parameter affects the overall simulation behavior.

When the Simulink® model is in Accelerator mode, the block mode specified using Simulate using overrides the simulation mode.

Acceleration Modes

Block SimulationSimulation Behavior
NormalAcceleratorRapid Accelerator
Interpreted ExecutionThe block executes using the MATLAB interpreter.The block executes using the MATLAB interpreter.Creates a standalone executable from the model.
Code GenerationThe block is compiled.All blocks in the model are compiled.

For more information, see Choosing a Simulation Mode (Simulink).

Programmatic Use

Block Parameter:SimulateUsing
Values:Interpreted Execution, Code Generation
Default:Interpreted Execution

Version History

Introduced in R2014b