1 страниц (4 вхождений)
Error in symbolic evealuation - Сообщения
#1 Опубликовано: 08.03.2022 15:46:17
test_Cnd.sm (7 КиБ) скачан 26 раз(а).
The strange problem happens during symbolic evaluation of the function
Cnd.
The expression ii=rows(t) was interpreted in a wrong way.
If I replace "ii" with number 2 the worksheet works fine.
The result of rows(t) is correct and equal to 2.
You can check the behavior changing the condition in "if" operator to 0 or 1.
The strange problem happens during symbolic evaluation of the function
Cnd.
The expression ii=rows(t) was interpreted in a wrong way.
If I replace "ii" with number 2 the worksheet works fine.
The result of rows(t) is correct and equal to 2.
You can check the behavior changing the condition in "if" operator to 0 or 1.
#2 Опубликовано: 08.03.2022 21:46:24
Hi. Notice that the degree of the numerator polynomial is not always equal to the degree of the denominator polynomial. Also the number of rows in rows(tt) for tt=numden(H(z)) is always going to equal two, and is not related to the degree of none of the previous polynomials.
I think what you have to do is create separate loops for numerator and denominator, and you can get the degree of the polynomials in this way:

Finally, you can create the loop in the range ii..0 instead of 0..ii and thus avoid having to use reverse(), which the SMath token processor sometimes doesn't like.
Best regards.
Alvaro.
I think what you have to do is create separate loops for numerator and denominator, and you can get the degree of the polynomials in this way:
Finally, you can create the loop in the range ii..0 instead of 0..ii and thus avoid having to use reverse(), which the SMath token processor sometimes doesn't like.
Best regards.
Alvaro.
1 пользователям понравился этот пост
sergio 09.03.2022 05:52:00
#3 Опубликовано: 09.03.2022 11:30:07
Hi Alvaro,
The worksheet is correct, the transfer function presented is from a real working project (digital PFC controller).
If the requested coefficient doesn't exist maple(coeff()) returns 0. I think it is correct behavior.
Sorry, I posted the report in a rush, so it might need more clarification.
The problem is that variable ii has correct value =2, you can check it easily.
If you manually set the loop range [0..2] - the worksheet works, but with the loop range [0..ii] - fails.
I have no reasonable explanation rather than a bug.
The worksheet is correct, the transfer function presented is from a real working project (digital PFC controller).
If the requested coefficient doesn't exist maple(coeff()) returns 0. I think it is correct behavior.
Sorry, I posted the report in a rush, so it might need more clarification.
The problem is that variable ii has correct value =2, you can check it easily.
If you manually set the loop range [0..2] - the worksheet works, but with the loop range [0..ii] - fails.
I have no reasonable explanation rather than a bug.
#4 Опубликовано: 09.03.2022 14:28:24
Wrote... The problem is that variable ii has correct value =2, you can check it easily.
If you manually set the loop range [0..2] - the worksheet works, but with the loop range [0..ii] - fails.
I have no reasonable explanation rather than a bug.
Hi. Yes, same thing here, where SMath cannot evaluate rows():
https://en.smath.com/forum/yaf_postsm69034_Modified-Nodal-Analysis.aspx#post69034
Best regards
Alvaro.
1 страниц (4 вхождений)
-
Новые сообщения
-
Нет новых сообщений