Plotting (1-2*x)*log((1-x)/x)
40 views (last 30 days)
Show older comments
Hello!. I am very new to matlab and wanna know how can I plot
y=(1-2*x)*log((1-x)/x) function?
I tried to write it like that but it did not work as i expected.. It plots something else..
thanks..
and also why i cannot plot (1/x)? thanks.
2 Comments
Answers (2)
Giorgos Papakonstantinou
on 8 Mar 2015
Edited: Giorgos Papakonstantinou
on 8 Mar 2015
The problem occurs inside the log parenthesis. The syntax that you have used tells Matlab to solve the equation:
x = B/A
If you want to do element-wise arithmetic operations (division, power, etc.) then you have to use . before each operation. Look for more information here.
In your case you have to modify your equation:
y=(1-2.*x).*log((1-x)./x)
Here the log function computes the natural logarithm.
or
y=(1-2.*x).*log10((1-x)./x)
Here the log10 function computes the logarithm when the base is 10
For example if:
x=0:0.02:1;
y=(1-2*x).*log((1-x)./x) ;
plot(x,y)
the result is:

See Also
Categories
Find more on Line Plots in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!