Divide one input by another
The Divide block outputs the result of dividing its first input by its second. The inputs can be scalars, a scalar and a nonscalar, or two nonscalars that have the same dimensions. The Divide block is functionally a Product block that has two block parameter values preset:
Number of Inputs: */
Setting non-default values for either of those parameters can change a Divide block to be functionally equivalent to a Product block or a Product of Elements block. See the documentation of those two blocks for more information.
If any of the Divide block inputs contains a NaN or inf value, or if the block generates NaN or inf during execution, you might see different results when you compare the block simulation results with the generated code. This difference is due to the nonfinite NaN or inf values. In such cases, inspect your model configuration and eliminate the conditions that produce NaN or inf.
The Simulink® Coder™ build process provides efficient code for matrix inverse and division operations. The following summary describes the benefits and when each benefit is available:
(2-by-2 to 5-by-5)
(6-by-6 to 20-by-20)
(larger than 20-by-20)
|Faster code execution time, compared to R2011a and earlier releases||Yes||No||Yes|
|Reduced ROM and RAM usage, compared to R2011a and earlier releases||Yes, for real values||Yes, for real values||Yes, for real values|
|Reuse of variables||Yes||Yes||Yes|
|Dead code elimination||Yes||Yes||Yes|
|Consistency with MATLAB® Coder results||Yes||Yes||Yes|
For blocks that have three or more inputs of different dimensions, the code might include an extra buffer to store temporary variables for intermediate results.
The Divide block has the same parameters and dialog box as the Product block. If all you need is to divide two inputs to create an output, you can use the Divide block with default parameter values. If you need additional capabilities, see the Product block documentation, which also describes the capabilities of the Divide block's Signal Attributes Pane.