The power funciton in math function block does not correctly work.

I choosed the signed power. If the power is even, the output always keeps positive. It works well if the power is not even. I wonder what happens when the power is even. Is it a bug?
The input u this example is a sine wave signal and v is 2, 3, 6, respectively. Please look the scope in the figure, when the power is even, it keeps positive. It is strange. I don't know if this exmaple works correctly on other machines.

 Akzeptierte Antwort

Ameer Hamza
Ameer Hamza am 12 Sep. 2020

1 Stimme

There seems to be a bug in the implementation of Signed Power functionality in the case of integer powers. You may consider filing a bug report: https://www.mathworks.com/support/bugreports/report_bug. Meanwhile, you can create your own block using power and sign blocks

Weitere Antworten (1)

BOB MATHEW SYJI
BOB MATHEW SYJI am 12 Sep. 2020

0 Stimmen

When “signed power” is checked, it first calculates the power of absolute value of input and then multiplies it with sign of the input. You can find more on: https://www.mathworks.com/help/simulink/slref/mathfunction.html

1 Kommentar

kj g
kj g am 12 Sep. 2020
Bearbeitet: kj g am 12 Sep. 2020
Surely I know this, sign(u)*|u|^v. The input u this example is a sine wave signal and v is 2, 3, 6, respectively. Please look the scope in the figure, when the power is even, it keeps positive. It is strange. I don't know if this exmaple works correctly on other machines.

Melden Sie sich an, um zu kommentieren.

Produkte

Version

R2020a

Gefragt:

am 12 Sep. 2020

Beantwortet:

am 12 Sep. 2020

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by