many thanks steve On Fri, Nov 27, 2015 at 9:20 AM, peter dalgaard <pdalgd at gmail.com> wrote:> Something like this? > > f <- function(x) x^3-2*x > curve(f(x), from=0, to=4) > abline(h=0) > n <- 16 > dx <- 4/n > right <- (1:n)*dx > left <- right - dx > mid <- right - dx/2 > fm <- f(mid) > points(mid, fm) > rect(left,0,right,fm) > > sum(fm*dx) > > 1/4 * 4^4 - 4^2 > > > -pd > > > On 27 Nov 2015, at 13:52 , Steven Stoline <sstoline at gmail.com> wrote: > > > Dear All: > > > > I am trying to explain to my students how to calculate the definite > > integral using the Riemann sum. Can someone help me to graph the area > under > > the curve of the function, showing the curve as well as the rectangles > > between 0 and 4.. > > > > *f(x) = x^3 - 2*x * > > > > over the interval [0 , 4] > > > > > > > > with many thanks > > steve > > > > -- > > Steven M. Stoline > > 1123 Forest Avenue > > Portland, ME 04112 > > sstoline at gmail.com > > > > [[alternative HTML version deleted]] > > > > ______________________________________________ > > R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see > > https://stat.ethz.ch/mailman/listinfo/r-help > > PLEASE do read the posting guide > http://www.R-project.org/posting-guide.html > > and provide commented, minimal, self-contained, reproducible code. > > -- > Peter Dalgaard, Professor, > Center for Statistics, Copenhagen Business School > Solbjerg Plads 3, 2000 Frederiksberg, Denmark > Phone: (+45)38153501 > Office: A 4.23 > Email: pd.mes at cbs.dk Priv: PDalgd at gmail.com > > > > > > > > > >-- Steven M. Stoline 1123 Forest Avenue Portland, ME 04112 sstoline at gmail.com [[alternative HTML version deleted]]
Dear Peter: in my previous email I forgot to reply to the list too I used your code for more than one examples, and it works nicely. But when I tried to use for the the function: f(x) = x^2, it looks like I am missing something, but I could not figured it out. This what I used: f <- function(x) x^2 curve(f(x), from=-4, to=4, lwd=2, col="blue") abline(h=0) n <- 16 dx <- 8/n right <- (1:n)*dx left <- right - dx mid <- right - dx/2 fm <- f(mid) rect(left,0,right,fm, density = 20, border = "red") points(mid, fm, col = "red", cex = 1.25, pch=19) sum(fm*dx) 1/3 * (64+64) with many thanks steve On Fri, Nov 27, 2015 at 3:36 PM, Steven Stoline <sstoline at gmail.com> wrote:> many thanks > > steve > > On Fri, Nov 27, 2015 at 9:20 AM, peter dalgaard <pdalgd at gmail.com> wrote: > >> Something like this? >> >> f <- function(x) x^3-2*x >> curve(f(x), from=0, to=4) >> abline(h=0) >> n <- 16 >> dx <- 4/n >> right <- (1:n)*dx >> left <- right - dx >> mid <- right - dx/2 >> fm <- f(mid) >> points(mid, fm) >> rect(left,0,right,fm) >> >> sum(fm*dx) >> >> 1/4 * 4^4 - 4^2 >> >> >> -pd >> >> >> On 27 Nov 2015, at 13:52 , Steven Stoline <sstoline at gmail.com> wrote: >> >> > Dear All: >> > >> > I am trying to explain to my students how to calculate the definite >> > integral using the Riemann sum. Can someone help me to graph the area >> under >> > the curve of the function, showing the curve as well as the rectangles >> > between 0 and 4.. >> > >> > *f(x) = x^3 - 2*x * >> > >> > over the interval [0 , 4] >> > >> > >> > >> > with many thanks >> > steve >> > >> > -- >> > Steven M. Stoline >> > 1123 Forest Avenue >> > Portland, ME 04112 >> > sstoline at gmail.com >> > >> > [[alternative HTML version deleted]] >> > >> > ______________________________________________ >> > R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see >> > https://stat.ethz.ch/mailman/listinfo/r-help >> > PLEASE do read the posting guide >> http://www.R-project.org/posting-guide.html >> > and provide commented, minimal, self-contained, reproducible code. >> >> -- >> Peter Dalgaard, Professor, >> Center for Statistics, Copenhagen Business School >> Solbjerg Plads 3, 2000 Frederiksberg, Denmark >> Phone: (+45)38153501 >> Office: A 4.23 >> Email: pd.mes at cbs.dk Priv: PDalgd at gmail.com >> >> >> >> >> >> >> >> >> >> > > > -- > Steven M. Stoline > 1123 Forest Avenue > Portland, ME 04112 > sstoline at gmail.com >-- Steven M. Stoline 1123 Forest Avenue Portland, ME 04112 sstoline at gmail.com [[alternative HTML version deleted]]
Your right <- (1:n)*dx mean that your leftmost rectangle's left edge
is at 0, but you want it to be at -4. You should turn this into a function
so you don't have to remember how the variables in your code depend
on one another. E.g.,
showIntegral <- function (f, xmin, xmax, n = 16)
{
curve(f(x), from = xmin, to = xmax, lwd = 2, col = "blue")
abline(h = 0)
dx <- (xmax - xmin)/n
right <- xmin + (1:n) * dx
left <- right - dx
mid <- right - dx/2
fm <- f(mid)
rect(left, 0, right, fm, density = 20, border = "red")
points(mid, fm, col = "red", cex = 1.25, pch = 19)
sum(fm * dx)
}> showIntegral(f=function(x)x^2, xmin=-4, xmax=4, n=16)
[1] 42.5> showIntegral(f=function(x)x^2, xmin=-4, xmax=4, n=256)
[1] 42.66602> showIntegral(f=function(x)x^2, xmin=-4, xmax=4, n=1024)
[1] 42.66663
> 2*4^3/3
[1] 42.66667> showIntegral
Bill Dunlap
TIBCO Software
wdunlap tibco.com
On Fri, Nov 27, 2015 at 9:50 PM, Steven Stoline <sstoline at gmail.com>
wrote:> Dear Peter: in my previous email I forgot to reply to the list too
>
> I used your code for more than one examples, and it works nicely. But when
> I tried to use for the the function: f(x) = x^2, it looks like I am missing
> something, but I could not figured it out.
>
> This what I used:
>
>
>
> f <- function(x) x^2
>
> curve(f(x), from=-4, to=4, lwd=2, col="blue")
> abline(h=0)
> n <- 16
> dx <- 8/n
> right <- (1:n)*dx
> left <- right - dx
> mid <- right - dx/2
> fm <- f(mid)
> rect(left,0,right,fm, density = 20, border = "red")
> points(mid, fm, col = "red", cex = 1.25, pch=19)
> sum(fm*dx)
>
>
>
> 1/3 * (64+64)
>
>
>
> with many thanks
> steve
>
> On Fri, Nov 27, 2015 at 3:36 PM, Steven Stoline <sstoline at
gmail.com> wrote:
>
>> many thanks
>>
>> steve
>>
>> On Fri, Nov 27, 2015 at 9:20 AM, peter dalgaard <pdalgd at
gmail.com> wrote:
>>
>>> Something like this?
>>>
>>> f <- function(x) x^3-2*x
>>> curve(f(x), from=0, to=4)
>>> abline(h=0)
>>> n <- 16
>>> dx <- 4/n
>>> right <- (1:n)*dx
>>> left <- right - dx
>>> mid <- right - dx/2
>>> fm <- f(mid)
>>> points(mid, fm)
>>> rect(left,0,right,fm)
>>>
>>> sum(fm*dx)
>>>
>>> 1/4 * 4^4 - 4^2
>>>
>>>
>>> -pd
>>>
>>>
>>> On 27 Nov 2015, at 13:52 , Steven Stoline <sstoline at
gmail.com> wrote:
>>>
>>> > Dear All:
>>> >
>>> > I am trying to explain to my students how to calculate the
definite
>>> > integral using the Riemann sum. Can someone help me to graph
the area
>>> under
>>> > the curve of the function, showing the curve as well as the
rectangles
>>> > between 0 and 4..
>>> >
>>> > *f(x) = x^3 - 2*x *
>>> >
>>> > over the interval [0 , 4]
>>> >
>>> >
>>> >
>>> > with many thanks
>>> > steve
>>> >
>>> > --
>>> > Steven M. Stoline
>>> > 1123 Forest Avenue
>>> > Portland, ME 04112
>>> > sstoline at gmail.com
>>> >
>>> > [[alternative HTML version deleted]]
>>> >
>>> > ______________________________________________
>>> > R-help at r-project.org mailing list -- To UNSUBSCRIBE and
more, see
>>> > https://stat.ethz.ch/mailman/listinfo/r-help
>>> > PLEASE do read the posting guide
>>> http://www.R-project.org/posting-guide.html
>>> > and provide commented, minimal, self-contained, reproducible
code.
>>>
>>> --
>>> Peter Dalgaard, Professor,
>>> Center for Statistics, Copenhagen Business School
>>> Solbjerg Plads 3, 2000 Frederiksberg, Denmark
>>> Phone: (+45)38153501
>>> Office: A 4.23
>>> Email: pd.mes at cbs.dk Priv: PDalgd at gmail.com
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>
>>
>> --
>> Steven M. Stoline
>> 1123 Forest Avenue
>> Portland, ME 04112
>> sstoline at gmail.com
>>
>
>
>
> --
> Steven M. Stoline
> 1123 Forest Avenue
> Portland, ME 04112
> sstoline at gmail.com
>
> [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help at r-project.org mailing list -- To UNSUBSCRIBE and more, see
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide
http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.