What do this expression mean '/\\\\r\n2' in symbolic integration?

조회 수: 3 (최근 30일)
Hirak
Hirak 2019년 1월 10일
댓글: Hirak 2019년 1월 10일
I did a symbolic integration for the limit of variables defined as (f(eta,w),eta, etamin, etamax,w, wmin,wmax) and obtained the result.
result(eta,w)=int(int(- 25*abs(sin(eta))*((25*abs(cos(w))*sign(cos(eta))^2*sign(cos(w))*sin(eta) + 50*abs(cos(eta))*dirac(cos(eta))*abs(cos(w))*sign(cos(w))*sin(eta))*(25*abs(cos(eta))*sign(cos(eta))*sign(sin(w))^2*cos(w) + 50*abs(cos(eta))*sign(cos(eta))*abs(sin(w))*dirac(sin(w))*cos(w)) + (25*sign(cos(eta))^2*abs(sin(w))*sign(sin(w))*sin(eta) + 50*abs(cos(eta))*dirac(cos(eta))*abs(sin(w))*sign(sin(w))*sin(eta))*(25*abs(cos(eta))*sign(cos(eta))*sign(cos(w))^2*sin(w) + 50*abs(cos(eta))*abs(cos(w))*sign(cos(eta))*dirac(cos(w))*sin(w))) - 25*abs(cos(eta))*abs(cos(w))*(25*sign(sin(eta))^2*cos(eta) + 50*abs(sin(eta))*dirac(sin(eta))*cos(eta))*(25*abs(cos(eta))*sign(cos(eta))*sign(sin(w))^2*cos(w) + 50*abs(cos(eta))*sign(cos(eta))*abs(sin(w))*dirac(sin(w))*cos(w)) - 25*abs(cos(eta))*abs(sin(w))*(25*sign(sin(eta))^2*cos(eta) + 50*abs(sin(eta))*dirac(sin(eta))*cos(eta))*(25*abs(cos(eta))*sign(cos(eta))*sign(cos(w))^2*sin(w) + 50*abs(cos(eta))*abs(cos(w))*sign(cos(eta))*dirac(cos(w))*sin(w)), w, -pi/2, pi/\\\r\n2), eta, -pi, pi)
When I run this function in a for loop Matlab itself cant recognize the portion in limit
.... w, -pi/2, pi/\\\r\n2), eta, -pi, pi)
What's going on? How to make it correct?

채택된 답변

Walter Roberson
Walter Roberson 2019년 1월 10일
It means that you are using R2015a (and possibly R2015b, I would need to check again), and that you are using MS Windows.
There was a glitch in the formatting of output around that time. Each \r stands for a carriage return, each \n stands for a linefeed, and each \\ means "continued on next line" . So it happens to get to that point in the output, realizes that the line has gotten pretty long, so it emits "to be continued" carriage-return new-line .
These do not affect the calculations: the calculations are being done with internal expressions that are in binary form. This only affects display of expressions.
You cannot directly get it to remove the extra characters from a symbolic expression because they are not really there.
However, if you char() a symbolic expression for display purposes, you can remove each \\\r\n sequence with strrep() or with
regexprep(S, '\\\\\(\\[rn])+', '')
This replacement is designed to be portable to Mac and Linux as well.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Assumptions에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by