- UID
- 4723
- 帖子
- 752
- 精华
- 5
- 积分
- 1778
|
trunc(x) 的基本性质
一.trunc(x)与x-trunc(x)的性质
trunc(x)叫截尾函数,其含义是把x的小数部分去掉,整数部分为其值。很显然
x-trunc(x)就是x的小数部分。因此利用截尾函数我们总是可以把数x分解为写成整数
部分加小数部分的形式:x=trunc(x)+[x-trunc(x)].由此可以看到trunc(x)和x-trunc(x)是我
们首页要认识的一对函数。利用几何画板我们可以容易的画出它们的图像:
由图1可以看到trunc函数是阶梯函数,跳跃度是1.每一小线段都是左实右空的线段。也就是说当x属于区间[n,n+1)时,trunc(x)=n)。
在几何画板中画出round(x)的图形,会发现只要把round的图形向右平移0.5个单位,就
得到了trunc的图形。故有round(x-0.5)=trunc(x),基于这样的原因四舍五入函数round就不必
研究了,只要沿trunc函数就可以了。对于round函数要特别注意:round(-0.5)=0,round(-1.5)=-1
而不是想象中的为-1,-2!其余情况和正常理解的四舍五入吻合。这么设计估计是为了保证
round(x-0.5)=trunc(x)成立的原因。所以本质上四舍五入函数与截尾函数是同一个函数,唯一的差别是它们的图形位置不同吧了。
接着绘制x-trunc(x)的图像:
从图2可以看出,每条小线段都是左实右空的,并且在R上非周期函数,但是x>0时周期是1,x<0时周期是 -1.看看阴影小正方形就知道了每条小线段的特征了。
小结:
1.trunc(x)-----跳跃函数,跳跃度为1。
2.x-trunc(x)----x>0时,是周期为1的函数。
3.在0~1正方形内,trunc(x)的图形为其底边线段,x-trunc(x)为其对角线。
trunc(nx)与nx-trunc(nx)性质
现在我们来构建两个函数,设n为自然数,记f(x)=trunc(nx) , g(x)=nx-trunc(nx).
由熟悉的数学知识知道,把trunc(x)的横坐标压缩1/n ,纵坐标不变就得到了函数
f(x)=trunc(nx)的图像。x-trunc(x)与g(x)=nx-trunc(nx) 的关系也是类似的。
小结:
1.f(x)=trunc(nx)---跳跃度为1,在区间[i-1/n,i/n)上为一长度为1/n的水平线段,也可以
说成当定义域是,[0,1/n) [1/n,2/n) ......,[n-1/n,1)等等时,其值域是区间{0,1,2,...,n-1}
2.g(x)=nx-trunc(nx)----在x>0时是周期为 1/n 的函数,其值域是[0,1),或者
当定义域是,[0,1/n) [1/n,2/n) ......,[n-1/n,1)等等时,值域是[0,1)。
接下来在x轴上从0到1绘制一线段,并在上面取一动点m,度量出点m的横坐标xm
,计算出f(xm),g(xm),这两个值一个具有跳跃度1,一个具有周期 1/n. 利用这个特性我们
描点a(f(xm),g(xm)),b(g(xm),f(xm)),现在构造m驱动点a,b的轨迹,这时我们惊奇的发现
得到了两组平行与坐标轴的线段。每条线段的长都等于1 .
把0~3的小正方形划分为9个全等的小正方形,我们发现这两组线段把0~1小正方形围了起来。这两组分别平行与x轴和y轴的线段的周期是1.
问题:能不能把竖直的小线段全部压到0~1正方形内部呢?
我们从参数方程的角度来看待点a:
x=trunc(n*xm),y=n*xm-trunc(n*xm).这个参数方程的图形就是竖直的线段组。第一个函数是跳跃函数,从区间[i-1,i)到区间[i+1/n,i+2/n),跳跃1,值域是整数集合.第二个函数是周期函数(x>0时),周期为1/n,值域是[0,1).n*xm的变化范围是[0,n).当xm属于[0,1/n)时,
n*xm属于[0,1),x=0,y属于[0,1),当xm属于[1/n,2/n)时,n*xm属于[1,2),x=1,y属于[1,2),
如此重复而已。因此x=0时,y=0.几,x=1时,y=1.几,当x=2时,y=2.几等等。
trunc(n*x)/n 与 [n*x-trunc(n*x)]/n
把函数f(x)=trunc(nx),g(x)=nx-trunc(nx)分别处以n得到函数
q(x)=trunc(nx)/n 与r(x)=x-trunc(nx)/n.这两个函数有什么性质呢?由数学的变换
知识知道:
把trunc(x)的图像,先沿x轴压缩横坐标1/n,其次在把纵坐标压缩1/n即得q(x)的图像。
由于trunc是跳跃度为1的跳跃函数,在[0,1)上的值是0,在[1,2)上的值是1,在[2,3)上的值是2等等。当把它的横坐标压缩1/n 时,trunc(x)就变成了trunc(nx),此时,
当x属于[0,1/n),trunc(nx) =0,当x属于 [1/n,2/n)时,trunc(nx)=1,当x属于[2/n,3/n)时,
trunc(nx)=2如此等等。在接下来把trunc(nx)沿y轴压缩1/n,就得到了q(x)=trunc(nx)/n
的图像,此时,
当x属于[0,1/n),trunc(nx)/n =0,当x属于 [1/n,2/n)时,trunc(nx)/n=1/n,当x属于[2/n,3/n)时,trunc(nx)=2/n,如此等等.下面画出q(x)的图像:
同样,我们把x-trunc(x)的首先沿x轴压缩1/n,得到nx-trunc(nx) 的图形,再把它沿y轴压缩1/n, 就得到了r(x)=x-trunc(nx)/n的图形。我们知道x-trunc(x)是周期为1,值域为[0,1)的函数,因此r(x)=x-trunc(nx)/n是周期为1/n,值域为[0,1/n)的函数。也就是数当x跑遍
区间[i-1/n,i/n)时,其值就正好跑遍区间[0,1/n)一次。
四.再次画图
现在我们建立一个参数方程:x=trunc(n*xm)/n ,y=xm-trunc(n*xm)/n, xm属于[0,1),我们先来分析一下图形会是什么样子,再用几何画板画图验证我们的分析。第一个函数
是跳跃函数,第二个函数是周期函数。当xm属于[i-1/n,i/n)(i=1,2......)时,x=(i-1)/n,y跑遍区间[0,1)一次。因此这个参数方程描述的轨迹是n条竖直线段,这些线段经过x轴上的点,横坐标依次为0,1/n,2/n......(n-1)/n,每条小线段都垂直于x轴,长度为1/n.
图形如下:
显然,如果交换x,y描点,将得到的是垂直于y轴的图形。那么我们能不能得到长为1的小线段呢?可以。你只要把y=xm-trunc(n*xm)/n的纵坐标伸长n倍就可以了。
即用x=trunc(n*xm)/n, y=n*xm-trunc(n*xm)描绘轨迹就可以了。
网格的构建就这么简单。
如果我们在同一坐标系里绘制参数曲线:
x=trunc(n*xm)/n ,y=xm-trunc(n*xm)/n,与y=trunc(n*xm)/n ,x=xm-trunc(n*xm)/n,
你会发现将出现一个小小的正方形。这个小小的正方形可以在几何画板中迭代出网格化的空间曲线。空间画球就可以用这种方法迭代完成。这里就不着讨论了。在这里我们关心的是trunc函数的基本性质。
五.结束语
对trunc(x)函数的认识,关键是抓两点:一是从变换的角度去研究它们,二是注意和它配对的函数x-trunc(x)的性质,注意这两个函数一个是跳跃函数,一个是周期函数,并擅于从图形上理解它们的性质。
附:关于网格的构建请下载文章阅读:下载地此 |
-
-
t4.png
(7.43 KB)
-
-
TRUNC.zip (151.37 KB)
|