2007年11月30日星期五

Task Manager任务管理器中一些功能的简单介绍

任务管理器中一些功能的简单介绍

表格中的内容来自:http://www.microsoft.com/technet/prodtechnol/windows2000serv/reskit/core/fneb_mon_oyjs.mspx?mfr=true

在任务管理器的查看->选择列中,可以更改进程面板中显示的性能检测项目。

进程统计项目 Description描述

Base Priority

基本优先级

进程的基本优先级决定了这些进程在CPU的处理队列中的排列顺序。基本优先级由进程本身控制,而不是操作系统指定。操作系统设置、改变进程中线程的动态优先级。可以在任务管理器中设置进程的优先级,更详细的内容参考“处理器活动分析 ”。

CPU Time

CPU时间

从进程开始运行起,所占用的CPU总时间,以秒计。

CPU Usage

CPU占用

上次跟新到本次更新的时间段内,该进程占用的CPU时间的百分比。

GDI Objects

图形设备接口对象数目

进程使用的图形设备接口(GDI)控件的数目。GDI控件是指,从针对图形输出设备的应用程序接口GDI库中调用的控件。

Handle Count

句柄数

进程的对象列表中对象句柄的数目。

I/O Other

I/O其它

进程产生的非读非写的输入输出操作的数目,包括,文件、网络和设备I/O。这种操作的一个例子是行使控制功能。不统计指向控制台的操作(控制台输入)。

I/O Other Bytes

I/O其它字节数

其它I/O操作传输的字节数。

I/O Read Bytes

I/O读取字节数

进程在输入输出操作中读入的字节数。包括文件,网络和设备I/O。指向终端的操作不在统计之列。

I/O Reads

I/O读取

进程在输入输出操作中读操作的数目。包括文件,网络和设备I/O。指向终端的操作不在统计之列。

I/O Write Bytes

I/O写入字节数

进程在输入输出操作中写出的字节数。包括文件,网络和设备I/O。指向终端的操作不在统计之列。

I/O Writes

I/O写入

进程在输入输出操作中的写出操作数。包括文件,网络和设备I/O。指向终端的操作不在统计之列。


Image Name

映像名称

进程名。

Memory Usage

内存使用

进程占用的主内存数,以千字节KB计。

Memory Usage Delta

内存使用增量

两次统计更新之间,内存占用量的变化,以KB计。

Nonpaged Pool

非页面缓冲池


该进程占用的操作系统内存数,以KB计。操作系统内存中从未分页到硬盘的部分。分页是将应用程序内存中的不常用的部分转移到其它存储媒介上,通常是转移到硬盘上。

Page Faults

页面错误

应用程序请求的数据由于不在内存而需要从硬盘上重新读入的次数。从应用程序启动开始计数。

Page Faults Delta

页面错误增量

两次更新间的页面错误增加量。

Paged Pool

页面池

该进程占用的操作系统内存数,以KB计。页面池是可以分页到硬盘的虚拟内存。页面池包括所有的用户内存和系统内存的一部分。

Peak Memory Usage

内存使用峰值

从启动开始,进程占用的物理内存峰值。

PID (Process Identifier)

进程标识

应用程序启动时分配的数字标识。

Thread Count

线程数

应用程序中运行的线程数。

USER Objects

用户对象

进程占用的用户对象数。用户对象是指窗口管理器中的对象,包括窗口、菜单、光标、图标、钩子hooks、加速器、显示器、键盘布局,以及其它内部对象。

Virtual Memory Size

虚拟内存量

为该进程分配的虚拟内存(或地址空间)量。


在任务管理器的性能面板中,通过“查看”菜单中选择“显示核心时间”,可以查看应用程序调用操作系统服务所占用的CPU时间,剩余的时间,即用户模式,是运行应用程序本身的代码所占用的时间。


下表简单地描述了性能面板中一些统计项目的内容。

Task Manager counts Description

CPU Usage

CPU使用


MEM Usage

内存使用

虚拟内存的使用量( 虚拟内存(Virtual Memory)是Windows管理所有可用内存的方式)

Total Handles

总句柄数


Total Threads

总线程数


Total Processes

总进程数


Physical Memory: Total

物理内存:总量



Physical Memory: Available

物理内存:可用量

包括清零的,释放的和待分配内存。

Physical Memory: File Cache

物理内存:文件缓存

Amount of physical memory, in kilobytes, released to the file cache on demand.

文件缓存占用的物理内存。

Commit Charge: Total

认可用量:总数


所有进程使用的虚拟内存量

Commit Charge: Limit

认可用量:限制

不扩大页面文件的情况下,可供分配的虚拟内存总量。

Commit Charge: Peak

认可用量:峰值

虚拟内存的峰值用量,如果虚拟内存增大,可能会超过认可用量的限制值。

Kernel Memory: Total

核心内存:总量

页面和非页面内存的总量

Kernel Memory: Paged

核心内存:页面

操作系统占用的页面池容量。

Kernel Memory: Nonpaged

核心内存:非页面

操作系统占用的非页面池容量。


关于内存这部分把我弄晕了,对我来说又没有什么太重要的意义,算了,有心人可以看下面牛人写的:

虚拟内存,物理内存,页面文件,还有任务管理器

[quote]发信人: Hakkk (蓝猫淘气3k问·荷兰篇), 信区: NewSoftware
标 题: 虚拟内存,物理内存,页面文件,还有任务管理器
发信站: 水木社区 (Tue Nov 20 21:56:20 2007), 站内

虚拟内存(Virtual Memory)是Windows管理所有可用内存的方式。
对于32位Windows系统,每个进程所用到的虚拟内存地址从0到2^32-1,总容量4GB,
其中2GB是与操作系统以及其他所有进程所共享,
另外2GB分派给进程独占(这就是常说的32位Windows中一个进程最多能用2G内存的由来)。

4GB虚拟地址空间(Virtual Address Space,VAS)中,2GB的进程独占VAS是进程隔离的,
换句话说,每个进程都可以从RAM或者硬盘上映射到属于自己的2GB VAS。
所以虽然32位Windows每个进程最多只能获得4GB可用虚拟内存,
但是所有进程总和可以使用总量超过4GB的虚拟内存。
可惜XP只支持4GB RAM,也就是说超出部分一定得靠页面文件补足;
而比如2003企业版通过PAE支持32GB RAM,可以减少页面文件的用量。
(但单个进程最多仍然只有4GB虚拟内存地址空间,而不是32GB)

所以,一个简单的计算示例:
三个进程最多能用掉多少VAS?
2GB(共享)+2GB(独占)×3=8GB

这4GB的虚拟地址空间,按照4KB的大小进行分页(page),
然后以页为单位映射到实际存储单元中,包括:
·物理内存(RAM)
·页面文件(Page File,在Win9x中称为交换文件Swap File,即win386.swp)
·其他文件自身(比如一些长时间未活动的进程的exe文件自身)
可见,通常人们所说的虚拟内存实际上只是指其中的页面/交换文件而已,
这是对虚拟内存的一个错误的理解。
虚拟内存≠页面文件

RAM中除了保存最近读写的文件缓存(File Cache,相当于Win9x中的Vcache)
主要用来存储正在使用的程序代码和数据,
当RAM资源紧张,或者有程序码或数据长时间未使用时,
XP通常会将非活跃程序码所在的地址页映射回程序文件(exe、dll等),
将数据所在的地址页映射到页面文件(pagefile.sys)中并拷贝数据,
然后将它们本来占用的RAM空间释放。
这个过程称为页出(Page Out)。

当系统读取某个虚拟内存地址,而该地址所在的页不在RAM中时,
将产生一个页面错误(Page Fault)中断,
告诉系统从页面文件或者程序文件中取回包含该地址的虚拟内存页,
即将内容拷回到RAM并建立新的虚拟地址映射,并将页面文件中对应部分标记为未使用,
这个过程就是页入(Page In)。
页入成功的话就是一个Valid Page Fault,否则就是Invalid Page Fault。
前者非常普遍,(可以在任务管理器的进程页监视到)
而后者是由程序或硬件错误引起,
如果发生在进程上会导致非法操作,如果是系统自身则很可能蓝屏。

内存用量可以在任务管理器的性能页中看到。
其中物理内存的总量、可用数等是指安装的RAM容量和剩余RAM容量,
而内存使用或者提交更改的总量和限制是指虚拟内存的Commit Limit和Committed Bytes,
可以理解成系统可以使用的虚拟内存总量和当前使用量,
其中总量是由RAM大小+页面文件大小决定的。

而在任务管理器的进程页中,“内存使用”和“虚拟内存大小”造成的误解很多,
而实际上,这两个值是对应性能监视器中该进程的Working Set和Private Bytes,

Working Set是指一个进程的4GB虚拟地址空间中被映射到RAM中的部分的大小,
通常是该进程的虚拟内存中的活跃部分。
表面看来这个表述和“进程占用的RAM大小”没有太大区别,
但至少有两种情况导致了例外的发生:
第一种是这部分虚拟内存如果是属于2G的系统共享虚拟内存,
那么它映射到的RAM地址可能和其他进程有重复,计算多个进程占用RAM总和就不正确,
使得所有进程的Working Set之和比实际占用RAM要大。
第二种是一个进程中可能有同一段RAM内容的多个引用,比如一个文件被loop多次,
此时虚拟空间中会有多段地址被映射到同一段RAM上,
从而造成该进程的Working Set比实际占用RAM要大。

Private Bytes是一个进程的2GB独占虚拟地址空间中用到的部分的大小,
无论这部分是在RAM中还是在页面文件中,甚至是在exe、dll等文件中。
所以,任务管理器进程页中的虚拟内存绝对不反映pagefile.sys的用量。

所以,任务管理器无论是进程页还是性能页都不能直接反映pagefile的使用情况,
诸如“关掉pagefile还能看到虚拟内存”之类的疑问,应该很清楚了。

下面是一个简单图示,
两个进程,各自拥有2G独占VAS,共同拥有2G共享VAS,
W代表映射到RAM中的部分(Working Set),P代表页出的部分。

0 …………………2GB独占内存……………… 2G ………2GB共享内存……… 4G
进程1 |--PPPP---------------WW-----PPPP--------|
\\ || \\
\\ || \\
\\ || |||| |--PPPPPPPPPPPP--WWWWWWWW--|
exe2 exe1 dll RAMemory pagefile.sys |||||||||||| ||||||||
|||| /// // / || | 共享内核/dll等 共享RAM空间
进程2 |-PPPP------PPP---WW--WW------PP----P----|

然后,任务管理器的进程页中的“内存”就是上图中的W,
所以所有进程的内存项加起来肯定比实际用的RAM大,因为有共享部分
此外还有重复引用,比如上图中进程2独占内存中第二和第三个W指向同一段RAM空间。

而任务管理器进程页中的“虚拟内存”就是上图中右半部分,“独占VAS”。
可见pagefile只是其中的一部分,而RAM,只要用于独占VAS,一样计入了该处“虚拟内存”


最后,实际的页面文件用量(pagefile.sys中实际使用部分),
可以在性能监视中看到,即Paging File下的% Usage和% Usage Peak
配合当前pagefile.sys的大小就可以计算出字节数,
这个值可以做为设定页面文件最小值的一个参考,
而不是用任务管理器进程页的所有进程的虚拟内存大小相加做为页面文件最小值的参考。

2007年11月28日星期三

Sitting Too Close to the Computer Screen Can Make You Go Blind

长时间注视屏幕容易引起视觉疲劳

Sitting Too Close to the Computer Screen Can Make You Go Blind

Eyestrain is a common—and occasionally debilitating—effect of staring at screens

By Molly Webster

原文:http://www.sciam.com/article.cfm?id=is-sitting-too-close-to-screen-making-you-blind&page=1

翻译:liuxqsmile


图片来源http://www.adcock.co.za/LifeStyle.aspx?Page=EyeComponents ;我在上面添加了对应的中文名称。

你晃晃脑袋,松弛一下紧张的脖子,闭上眼睛,揉一揉,然后继续在几英寸之外盯着电脑屏幕。完全不管你的的视线仍然一片朦胧,几难分辨出屏幕上的字符来。这时,你应该会有疑问:再继续下去,键盘上所敲击的每一个按键,YouTube上所观看的每一个视频,以及发送的每一个电子邮件......这些会损坏你的视力吗?

眼科医师,验光师以及其他的眼科专家注意到近视与近距离用眼有一些关系。这些近距离用眼包括,在距眼睛40cm左右读书、注视电脑屏幕等,尽管电脑屏幕一般距离在50cm左右。但是,只有一小部分人会因为近距离用眼而导致近视,不论他们是读书还是读屏幕。“我们还不清楚哪些人会受影响。”俄勒冈州太平洋大学视觉学院教授James Sheedy说。

事实是,近距离用眼不会在所有人中都导致近视,但是,并不是说紧坐在电脑前面就一点问题都没有。尽管对大多数人来说,不会造成永久性的后果,但近距离用电脑却会导致眼睛疲劳综合症。俄亥俄州立大学视觉学院教授Mark Bullimore告诉我们,眼睛疲劳综合症是指,眼睛疲惫不堪:烫痛、干燥和眼肌疼痛,以及所有继续用眼时伴随的不快感受。

理解眼睛为什么会疲劳,并且知道该如何去防止的最简单的方法是了解我们的眼睛能看清细小文字的工作原理。当我们“看”到某个对象的时候,实际上是从物体上反射的光穿过角膜(覆盖在眼球表面的一层透明的穹状结构)。角膜和晶状体(虹膜后面的圆形、透明、弹性结构)对光波进行聚焦,使其准确地到达视杆细胞和视锥细胞,这两种位于视网膜上的光感受器用来收集入射的光线信息。位于最内层的视网膜汇总光线信息,并且通过视神经传递到大脑,形成一幅图像。

Sheedy告诉我们,近距离凝视屏幕会使睫状肌紧张,睫状肌控制晶状体的形状,以准确聚焦,睫状肌必须始终保持张紧,这对这块小肌肉的要求太苛刻了。过紧的盯视也会阻止眨眼。眨眼的重要作用在于将眼泪覆到眼球的表面。如果不眨眼,角膜表面就会干燥,看东西模糊不清。正常情况下,眼睛每分钟眨20次,用电脑时可能会下降到7次,但是,专家们认为不会造成永久性的后果。

眼科教授Dennis Robertson说,如果屏幕周围有耀眼的强光,还可能会导致斜视。斜视可以减弱进入眼球的光线强度(一定程度上缓解眨眼不足),但是斜视让眼球周围的肌肉处于紧张状态,连续九个小时,让它筋疲力尽。

在眼睛放松后,眼睛疲劳通常会在数小时之后消。但只要这些症状一出现,就会严重影响到工作效率,更严重时让人感觉烦躁。这些症状都不是永久性的,不会造成视觉功能的损害。我们也可以通过改善工作环境来避免这些症状的出现。

使用非闪烁的电脑屏幕,改变屏幕的亮度、对比度、和文字的大小,屏幕的位置要略低于眼睛,显示器的上沿与眉毛平齐。如果眼睛的生理有问题,应该赶快配一副矫正眼镜。

关掉周围太亮的光源。用手在眼前遮住灯光,看你的脸部和肩膀是否有一定程度的放松,如果有,说明这些灯光应该做出调整。专家建议,看电视的时候,在比较舒服的位置上跟里面的主人公“休戚与共”。

但是,到目前为止,避免眼部疲劳的最好、最简单的方法仍然是经常性地休息、放松。即使你不渴,也可以到饮水机前走一趟,一定要把你的安乐椅放到电视两英尺(约0.6m)以外,最后,别忘了眨眨眼睛。

译者注:调整Windows桌面字体一般在 显示属性->外观中选择大字体,但这样字体反而太大,并且只有桌面中的部分文字受其影响,对应用程序一般没有什么效果。实际上,在设置->高级面板中修改DPI,可以更灵活地控制字体的大小,大部分应用程序中的文字都会相应改变。


2007年11月22日星期四

Quack medicine: Imagination Goes Wild(3) 伪医学:想象力的疯狂(3)

Quack medicine: Imagination Goes Wild(3) 伪医学:想象力的疯狂(3)

英文原文出自www.collectmedicalantiques.com ,链接http://www.collectmedicalantiques.com/quack3.html
翻译:liuxqsmile
本文地址:http://liuxqsmile.blogspot.com/2007/11/quack-medicine-imagination-goes-wild3-3.html
(译注:图片有删减)
有很多种产生电的方式,但在这个发展迅速而缺乏规则的行业里,每一种都被逐利的奸商所利用(56)。在交流电应用之前,早期的干电池后来的蓄电池(57-61),都被用来产生直流电,在诊所(62-64)和病人家里治病。电子腰带可以产生一个“治疗”电磁场,带有一个会发光的灯泡,让人以为它很有效果(65-37)。大型的静电发生器和摩擦生电仪通过摩擦玻璃来产生电荷,存储在莱顿瓶里,放电时就可以用来治疗一切叫得上名字的疾病。不过,这些仪器在早期也为X射线的研究提供电力(68-74)。一些临床医学家甚至在透热疗法的仪器上找到了微波的妙用(75-77)。
在二十世纪,电的应用更为广泛。制造商们也挖空心思,很多的大型设备出现在诊所和医院里,电疗椅(78-82)、电疗浴(83)、电子壁柜(84-86)及橱柜(87)等。

放射性

居里夫人发现的放射性为医学界创造了不可估量的商机。Revigator(88,89)是一个用有弱放射性的粘土制成的罐子,制造商宣称,患者喝了在罐子中过夜的水后可以“水到病除”。不幸的是,直到在那些坚持使用的人中间产生很多的口腔癌患者时,人们才对它产生了怀疑。尽管这个罐子的放射性很低,但氡(译注:参考世界卫生组织|氡与癌症 )的含量很高,收藏者要注意把他们放在密闭的容器里。



56)宣传招贴
新奇药品和虚假医疗器械的生产商们通过广告招贴来宣传他们的产品。这是Scott博士的一幅宣传画,用来推销他诸多骗人的电子装置中的一部分。
57-61)家用直流医疗装置
使用电池的“电子组合”是在二十世纪早期很常见的虚假医疗器械,并且在江湖医术的历史中占有重要的位置。正是由于它的销售最终导致了对相似的医疗器械进行立法,对安全和功效进行了标准化。图中展示了诸多附件中的一部分。Williams电磁仪也使用直流电驱动。

62-64)交流电装置
交流电发展起来以后,出现了很多大型装置。图中精美小巧的麦金托什电源盒可以为前面的“电子组合”提供充足的电力,较大的汤普森电子柜则用于耳鼻喉科的诊治。

65-67)治疗腰带
插上电源,打开开关,这个带子会就产生一个磁场,被宣称具有医疗作用,并且很安全(现在看来是很有问题的)。随带子附送一个接有小灯泡的线圈,当线圈接近磁场时,灯泡会发出亮光,“看,不是很有效吗?"。

68-74)大型静电发生器
在二十世纪初,标准化的交流电的应用还比较少,于是“托普勒-霍尔兹Toepler-Holtz”静电发生器就被用来为一些医疗设备提供电源。它 同时也为第一部X射线发生器提供能源。它有很多的附件,应用非常普遍,并且在西尔斯商品目录手册上大作广告。图中是非常大的一种静电发生器,由24块玻璃 圆盘组成,4个一组,旋转时靠摩擦产生电荷。正在实施治疗的这幅图片选自1908年Franklin Gottschalk博士所著的《实用电疗》。
75-77)透热疗法 图中是由匹兹堡透热医疗联合公司生产的仪器,可以产生微波,像这本小册中所述,可以应用于几乎任何疾病的治疗。
78-82)电疗椅
电疗椅的应用是医学史上最大的讽刺性事件之一。早在1890年,麦金托什电椅就已经开始使用,并且出现在RW St. Clari博士所著的《电学在内科和外科中的实际应用》一书中。另外有很多类似的椅子,其中一种甚至在椅子的两侧装了两个紫色发光管来加强医疗(和眩目)效果。Wappler电子公司在这个领域非常活跃,这里有他们的一种产品,由一个电源柜来供电。还有Davis电子公司1904年生产的精美的瓷质健足盘。
83)电子浴
早期的医师们彻底为电学的魅力所倾倒,他们甚至让病人进行“电子浴”,完全沉浸在电子里。Max Wocher and Son公司1904年的医疗产品目录中展示了一个用静电发生器供电的电浴装置。
84-86)Wappler电源壁柜
电源壁柜为电疗椅和其他电子器械供电。图中是1904/1905年,西尔斯医疗商品目录上的产品,并且展示了一些医疗附件。Wappler电源橱柜的具有相同的功能。
.

88-89b) 瓶中的放射性
放射性的潜力是巨大的,尽管还没有多少严格的验证,它很快就被见缝插针的商人盯上了。Revigator(放射领航者)是一个有低放射性的陶罐,水在其中存放后也就具有放射性。如图中所示,也有几种不同的外观。

<待续>

2007年11月19日星期一

Normal distribution and Ellipse正态分布和椭圆、椭球

正态分布和椭圆、椭球

二元正态分布(高斯分布)的等概率曲线是一个椭圆,而三元正态分布的等概率曲面是一个椭球。本文的目的是在已知概率分布参数(均值向量μ和协方差阵Σ)的情况下,在MATLAB中绘出等概率椭圆或椭球。
多元正态分布(multivariate normal distribution )的概率密度:

很显然,其等概率密度曲面方程为

协方差矩阵作特征值分解:[V,D] = eig(Σ);使得
,即
因为,所以
代入等概率方程,可以得到

作变量代换, ,得到;
二元分布的情况下,y为包含两个元素的列向量,。D为对角阵,两个对角线元素分布为d1,d2;则上式可写为标准的椭圆方程

实际上,我们对原始椭圆作一个平移变换(x-u)和一个旋转变换(V*),可以使其中心平移到原点,长短轴的方向与坐标轴重合。而绘等概率椭圆的过程则与此相反,先用标准的椭圆方程产生组成曲线的离散点,然后经过相反的旋转变换和平移,得到原始的椭圆。

举例来说,首先,设置二维正态分布的参数,均值和协方差,并用mvnrnd产生一组符合此分布的随机数。
Mu = [2 3]';
Sigma = [0.9 0.4;0.4 0.2];
p = mvnrnd(Mu,Sigma,100);
plot(p(:,1),p(:,2),'.','MarkerSize',6)
设置半径,进行特征值分解
r =1;
[V,D] = eig(Sigma);
用linspace产生一个坐标轴(y)上的一组等间隔离散坐标值,再根据标准椭圆方程产生对应的x的坐标。
y = linspace(-sqrt(r^2*D(2,2)),sqrt(r^2*D(2,2)),60);
% compute x
x(1,:) = sqrt((r^2-y(:).^2/D(2,2))*D(1,1));
x(1,:) = real(x(1,:));
这只产生了半个椭圆,还要产生另一半(注意两条曲线的坐标旋转方向要一致),然后旋转,平移,画图:
Ellip = [x,-x(1,:)]; % x
Ellip(2,:) = [y,fliplr(y)]; %y
Ellip = Ellip'*inv(V); % rotate
Ellip(:,1) = Ellip(:,1)+Mu(1); %shift
Ellip(:,2) = Ellip(:,2)+Mu(2);
hold on;
plot(Ellip(:,1),Ellip(:,2));

plot(Mu(1),Mu(2),'+'); %Plot center
最终的效果:




另外,在对原始椭圆做旋转变换时,如果在V的前面再乘以一项,改为,则椭圆会变为圆。对多元正态分布的随机变量应用此变换,则其分布在各个方向上也变为均匀的。这就是信号处理中的白化变换。

三维正态分布的等概率曲面为椭球,其绘制过程也是类似的。
产生1/8曲面
xhalf = linspace(sqrt(r^2*D(1,1)),0,Nint);
Ninthalf = round(Nint/2);
zsect = zeros(Nint,Ninthalf);
ysect = zeros(Nint,Ninthalf);
for ti = 1:Nint
r2d = r^2 - xhalf(ti).^2/D(1,1);
ysect(ti,:) = linspace(0,sqrt(r2d*D(2,2)),Ninthalf);

zsect(ti,:) = sqrt((r2d - ysect(ti,:).^2/D(2,2) )*D(3,3));
xsect(ti,1:Ninthalf) = xhalf(ti);
end
zsect = real(zsect);
通过镜像产生1/4
%x>0,Z>0
xsect = [xsect,xsect];
ysect = [ysect,fliplr(ysect)];
zsect = [zsect,-fliplr(zsect)];
1/2
%x>0
xsect = [xsect,xsect];
ysect = [ysect,-fliplr(ysect)];
zsect = [zsect,fliplr(zsect)];
1/1
% make it a whole
xsect = [xsect;-flipdim(xsect,1)];
ysect = [ysect;flipdim(ysect,1)];
zsect = [zsect;flipdim(zsect,1)];
旋转、平移,完成。
% rotate
[lr,lc] = size(xsect);
for ti = 1:lr
for tj = 1:lc
newcodi = [xsect(ti,tj),ysect(ti,tj),zsect(ti,tj)]*inv(V);
xsect(ti,tj) = newcodi(1);
ysect(ti,tj) = newcodi(2);
zsect(ti,tj) = newcodi(3);
end
end
% shift
xsect = xsect+Mu(1);
ysect = ysect+Mu(2);
zsect = zsect+Mu(3);
surf(xsect,ysect,zsect);