Main Content


Amplify and transmit 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 waveform, specified as a complex-valued matrix.

The size of the first dimension of the input matrix can vary to simulate a changing signal length. A size change can occur, for example, in the case of a pulse waveform with variable pulse repetition frequency.

Data Types: double


expand all

Transmitted signal, output as a complex-value matrix. Y is the amplified input waveform where the amplification is based on the characteristics of the transmitter, such as the peak power and the gain.

Data Types: double

Transmitter on-off status, output as a 0 or 1. A 1 indicates that the transmitter is on, and a 0 indicates that the transmitter is off.


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

Data Types: double

Phase noise, output as a scalar.


To enable this port, select the Enable pulse phase noise output check box.

Data Types: double


expand all

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

Transmitter gain, specified as a real scalar. Units are in dB.

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

Select this check box to output the transmitter-in-use status for each output sample from the output port TR.

Select this check box to preserve coherence among transmitted pulses.

  • When you select this box, the transmitter does not introduce random phase to the output pulse.

  • When you deselect this box, the transmitter adds random phase noise to each transmitted pulse. The random phase noise is introduced by multiplying the pulse value by e where ϕ is a uniformly-distributed random variable on the interval [0,2π].

Select this check box to create an output port, Ph, with the output sample 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.


To enable this check box appears only when Preserve coherence among pulses is cleared.

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