Rewrite a symbolic function in terms of a defined function

How can I rewrite a symbolic expression or function in terms of another defined function? Specifically, I want to rewrite df in terms of f:
syms z
f=1/(1+exp(-z))
df=diff(f)
The result should be
f(1-f)

댓글 수: 1

I know function subexpr, which automatically selects the common subexpression (I can not define my subexpression), and it uses exp(z).
subexpr(df)
sigma =
exp(-z)
ans =
sigma/(sigma + 1)^2
, and rewrite, which uses predefined functions like sin or exp
, and has, which only says if that subexpr exist in the function!
has(df,f)
ans=
1
also the following does not work:
syms a
subs(df,1/(1+exp(-z)),a)
ans =
a^2*exp(-z)

댓글을 달려면 로그인하십시오.

답변 (1개)

madhan ravi
madhan ravi 2018년 11월 3일
편집: madhan ravi 2018년 11월 3일
syms z
f=1/(1+exp(-z))
df=diff(f)
isolate(df==1,f)

댓글 수: 4

see isolate() it maybe the one you are looking for
madhan ravi
madhan ravi 2018년 11월 3일
편집: madhan ravi 2018년 11월 3일
if something is not clear let know with an example to get a clear picture
It does not what I want. There is no equation in my case! Maybe, I can write an equation to do this for me indirectly, but it does not give f(1-f) directly.
As far as I know ,I don't think there is a command to do that

댓글을 달려면 로그인하십시오.

카테고리

도움말 센터File Exchange에서 Symbolic Math Toolbox에 대해 자세히 알아보기

제품

릴리스

R2018b

질문:

2018년 11월 3일

댓글:

2018년 11월 3일

Community Treasure Hunt

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

Start Hunting!

Translated by