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 Comment

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)

Sign in to comment.

Answers (1)

syms z
f=1/(1+exp(-z))
df=diff(f)
isolate(df==1,f)

4 Comments

see isolate() it maybe the one you are looking for
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

Sign in to comment.

Categories

Products

Release

R2018b

Asked:

on 3 Nov 2018

Commented:

on 3 Nov 2018

Community Treasure Hunt

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

Start Hunting!