This video is taken from the INT 100 course on Ansys Innovation Courses.
In Block Mode, the simulation progresses element by element.
Typically, each element calculates only one block, meaning the element only runs once.
This makes block mode particularly well suited for unidirectional simulations.
It is possible to have bidirectional simulations with Block Mode, in which case multiple iterations
As discussed in the previous unit, the time-domain output signal generated by an element can
be calculated as the time-convolution of the input signal with the element's impulse
In sample mode, the signal is processed sample by sample using numerical convolution methods
in the time domain.
In block mode, a block of samples is provided to the element, and a more efficient calculation
is implemented that leverages Fourier transform methods.
According to convolution theorem, when you take the Fourier transform of a time-domain
convolution between two functions, you get the product of the Fourier transforms of the
The inverse Fourier transform of the product, gives the time domain convolution.
In Block Mode, the basic idea is that when a block of discrete samples reaches an element,
the waveform is converted into the frequency domain using a Fast Fourier Transform.
A product with the element's frequency domain response then gives the output waveform in
Finally, an inverse Fast Fourier Transform is used to calculate the time domain output
Recall that S-parameters are defined in the frequency domain, which means the frequency
domain response is readily available.
Block Mode does not require digital filter calculations.
This method is generalized for bidirectional propagation of multiple modes, and multiple
blocks, and for nonlinear elements.
Block mode is best suited for modeling unidirectional propagation in photonic circuits.
Note that unidirectional elements have triangle arrows at the ports to indicate the direction
of data flow.
It is also possible to perform bidirectional simulations or simulation with feedback in
Multiple iterations are required in these cases to capture interference effects.
This is an advanced topic that is beyond the scope of this course.