分时区、12小时制和24小时制多功能电子时钟(源代码)及中外《量子力学》教材经典知识点的区别与思考_第1页
分时区、12小时制和24小时制多功能电子时钟(源代码)及中外《量子力学》教材经典知识点的区别与思考_第2页
分时区、12小时制和24小时制多功能电子时钟(源代码)及中外《量子力学》教材经典知识点的区别与思考_第3页
分时区、12小时制和24小时制多功能电子时钟(源代码)及中外《量子力学》教材经典知识点的区别与思考_第4页
分时区、12小时制和24小时制多功能电子时钟(源代码)及中外《量子力学》教材经典知识点的区别与思考_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

PAGEPAGE1/********************************************************************多功能电子时钟单片机:STC89C52系列或其兼容型号外部晶振:12MHZ功能:1、支持多个时钟同时运行(CLOCKCOUNT)2、每个时钟都具备12小时模式和24小时模式 3、12小时模式时,具备AM/PM的LED指示功能 4、每个时钟都具备闹铃功能 5、每个时钟的时间和闹铃时间都可设置(自适应12小时模式和24小时模式)日期:2012.7.17(佳木斯大学65周年校庆)*********************************************************************/#include"reg52.h"#defineFOSC (12) //系统晶振,以MHZ为单位#defineMSECOND (10) //定时器的定时时间,以毫秒为单位#defineCLOCKCOUNT (3) //时钟个数#definevTL0 ((65536-MSECOND*FOSC/12*1000)%256) //计算定时器初值#definevTH0 ((65536-MSECOND*FOSC/12*1000)/256)#defineSEGPORT (P0) //显示器段码口#defineWEIPORT (P1) //显示器位码口#defineFLASHHOUR (1) //小时闪烁判断值#defineFLASHMINUTE (2) //分钟闪烁判断值#defineFLASHSECOND (3) //秒闪烁判断值#defineFLASHALL (4) //所有位闪烁判断值#defineFLASHNONE (5) //不闪烁判断值#defineFLASHFREQ (10) //小时、分、秒闪烁时的频率,值越大越慢#defineALARMTIME (30000) //自动撤销闹铃前的等待时间,值越大时间越长#defineALARMON (1) //打开闹铃判断值#defineALARMOFF (2) //关闭闹铃判断值#defineTIMEMODE12 (1) //12小时模式#defineTIMEMODE24 (2) //24小时模式#defineAM (1) //代表上午#definePM (2) //代表下午#defineKEY1 (1) //1号按键的键值#defineKEY2 (2) //2号按键的键值#defineKEY3 (3) //3号按键的键值#defineNOKEY (4) //无按键时的返回键值#defineBEEPON (1) //打开蜂鸣器的电平#defineBEEPOFF (0) //关闭蜂鸣器的电平#defineLEDON (1) //点亮LED时的电平#defineLEDOFF (0) //熄灭LED时的电平#defineBEEPFREQ (10) //蜂鸣器的发声频率,值越大越慢#defineKEYSPEED (30) //按键的响应速度,值越大响应越慢#defineKEYWAITTIME (1000) //无按键时,自动退出前的等待时间,值越大时间越长sbitKey1 =P2^0; //1号按键,以下程序设定为“功能键”sbitKey2 =P2^1; //2号按键,以下程序设定为“增键”sbitKey3 =P2^2; //3号按键,以下程序设定为“减键”sbitBeep =P2^7; //闹铃驱动口线sbitAmLed =P2^3; //AM指示灯sbitPmLed =P2^4; //PM指示灯typedefstruct{ //定义一个时钟结构体类型——TClock unsignedcharHour; unsignedcharMinute; unsignedcharSecond; unsignedintMSecond; //毫秒 unsignedcharTimeMode; //表示时钟模式,是12小时模式还是24小时模式 unsignedcharAmOrPm; //表示当前是上午还是下午 unsignedcharAlarmOpen; //是否打开闹铃的控制位 unsignedcharAlarmHour; unsignedcharAlarmMinute; unsignedcharAlarmFlag; //闹铃时间到标志 unsignedintAlarmTime; //为自动退出闹铃状态服务 unsignedcharAlarmAmOrPm; //表示闹铃是设置在上午还是下午 }TClock;unsignedcharcodeSegCode[]={ //共阴极管dpgfedcba 0x3f,0x06,0x5b,0x4f,0x66, 0x6d,0x7d,0x07,0x7f,0x6f, 0x00 };TClockClock[CLOCKCOUNT],*pClock; //时钟数组和时钟指针unsignedcharKeyWaitFlag=0,AdjustTimeFlag=0; //用于函数间协调的两个标志unsignedcharWhichClock=0; //存放当前所选时钟的下标unsignedcharDispBuf[6]; //显示缓冲区unsignedcharKeyWaitTime=0; //为无按键时的自动退出服务//通用的软件延时函数//x——要延时的时间,范围0~255voidxDelay(unsignedcharx){unsignedchary;for(;x>0;x--)for(y=30;y>0;y--);}//将所选时钟的数据填充到显示缓冲区//pClock——指向时钟的指针voidFillDispBuf(TClock*pClock){DispBuf[0]=SegCode[pClock->Hour/10];DispBuf[1]=SegCode[pClock->Hour%10];DispBuf[2]=SegCode[pClock->Minute/10];DispBuf[3]=SegCode[pClock->Minute%10];DispBuf[4]=SegCode[pClock->Second/10];DispBuf[5]=SegCode[pClock->Second%10];}//将所选时钟的闹铃时间填充到显示缓冲区//pClock——指向时钟的指针voidFillAlarmToDispBuf(TClock*pClock){DispBuf[0]=SegCode[10];DispBuf[1]=SegCode[10];DispBuf[2]=SegCode[pClock->AlarmHour/10];DispBuf[3]=SegCode[pClock->AlarmHour%10];DispBuf[4]=SegCode[pClock->AlarmMinute/10];DispBuf[5]=SegCode[pClock->AlarmMinute%10];}//显示函数,用于显示时间,可闪烁显示//FlashWhich——指定闪烁的部分,可取值FLASHHOUR、//FLASHMINUTE、FLASHSECOND、FLASHALL、FLASHNONEvoidDisplay(unsignedcharFlashWhich){unsignedcharWeiCode,i;staticunsignedcharnState=0,FlashCount=FLASHFREQ;WeiCode=0xfe;for(i=0;i<6;i++){switch(FlashWhich){ caseFLASHHOUR: if((i==0)||(i==1)) { switch(nState){ case0://on if(--FlashCount>0)SEGPORT=DispBuf[i]; else{FlashCount=FLASHFREQ;nState=1;} break; case1://off if(--FlashCount>0)SEGPORT=DispBuf[10]; else{FlashCount=FLASHFREQ;nState=0;} break; default:nState=0; } } elseSEGPORT=DispBuf[i]; break; caseFLASHMINUTE: if((i==2)||(i==3)) { switch(nState){ case0://on if(--FlashCount>0)SEGPORT=DispBuf[i]; else{FlashCount=FLASHFREQ;nState=1;} break; case1://off if(--FlashCount>0)SEGPORT=DispBuf[10]; else{FlashCount=FLASHFREQ;nState=0;} break; default:nState=0; } } elseSEGPORT=DispBuf[i]; break; caseFLASHSECOND: if((i==4)||(i==5)) { switch(nState){ case0://on if(--FlashCount>0)SEGPORT=DispBuf[i]; else{FlashCount=FLASHFREQ;nState=1;} break; case1://off if(--FlashCount>0)SEGPORT=DispBuf[10]; else{FlashCount=FLASHFREQ;nState=0;} break; default:nState=0; } } elseSEGPORT=DispBuf[i]; break; caseFLASHALL: switch(nState){ case0://on if(--FlashCount>0)SEGPORT=DispBuf[i]; else{FlashCount=FLASHFREQ;nState=1;} break; case1://off if(--FlashCount>0)SEGPORT=DispBuf[10]; else{FlashCount=FLASHFREQ;nState=0;} break; default:nState=0; } break; default: SEGPORT=DispBuf[i]; FlashCount=FLASHFREQ;}WEIPORT=WeiCode;WeiCode<<=1;WeiCode|=1;xDelay(10);}}//显示指定时钟的时钟下标(编号)//aClock——时钟下标voidDisplayClock(unsignedcharxClock){DispBuf[0]=0x39; //CDispBuf[1]=0x38; //LDispBuf[2]=0x3f; //ODispBuf[3]=0x39; //CDispBuf[4]=0x00; //熄灭DispBuf[5]=SegCode[xClock]; //时钟编号Display(FLASHNONE);}//用于显示所选时钟闹铃的开关状态//OnOff——开关状态,可取值为ALARMON、ALARMOFFvoidDisplayOnOffAlarm(unsignedcharOnorOff){DispBuf[0]=0x77; //ADispBuf[1]=0x38; //LDispBuf[2]=0x77; //Aif(OnorOff==ALARMON){DispBuf[3]=0x00; //熄灭DispBuf[4]=0x5c; //oDispBuf[5]=0x54; //n}else{DispBuf[3]=0x5c; //oDispBuf[4]=0x71; //FDispBuf[5]=0x71; //F}Display(FLASHNONE);}//用于显示时钟的时间模式(12小时制或24小时制)//xTimeMode——时间模式,可取值为TIMEMODE12、TIMEMODE24voidDisplayTimeMode(unsignedcharxTimeMode){if(xTimeMode==TIMEMODE12){DispBuf[0]=SegCode[1];//1DispBuf[1]=SegCode[2];//2}else{DispBuf[0]=SegCode[2];//2DispBuf[1]=SegCode[4];//4}DispBuf[2]=0x74;//hDispBuf[3]=0x5c;//oDispBuf[4]=0x1c;//uDispBuf[5]=0x70;//rDisplay(FLASHNONE);}//键盘函数,返回值为按键的键值//返回值包括KEY1,KEY2,KEY3,NOKEYunsignedcharKey(void){staticunsignedcharxCount=0;if(++xCount<KEYSPEED)return(NOKEY);xCount=0;if(Key1==0) return(KEY1);elseif(Key2==0) return(KEY2);elseif(Key3==0) return(KEY3);else return(NOKEY);}//系统初始化函数voidInit(void){TMOD=0x01;TL0=vTL0;TH0=vTH0;ET0=1;EA=1;TR0=1;pClock=Clock;Beep=BEEPOFF;pClock->AlarmOpen=ALARMOFF;pClock->TimeMode=TIMEMODE24;AmLed=LEDOFF;PmLed=LEDOFF;}voidmain(void){unsignedcharnState=0,aKey,Temp=0;Init();while(1){aKey=Key();switch(nState){case0: //时钟正常运行 FillDispBuf(Clock+WhichClock); Display(FLASHNONE); if(Clock[WhichClock].AlarmFlag) //驱动闹钟蜂鸣器 { if(++Temp>=BEEPFREQ){Temp=0;Beep^=1;} if(aKey!=NOKEY) { Clock[WhichClock].AlarmFlag=0; Temp=0; Beep=BEEPOFF; } } if(aKey==KEY1){KeyWaitTime=0;nState=1;} break;case1://选择时钟 KeyWaitFlag=1; //等待按键时间内无按键,自动返回运行状态 if(KeyWaitTime>=KEYWAITTIME){nState=0;KeyWaitFlag=0;KeyWaitTime=0;} if(aKey==KEY1) { KeyWaitTime=0; Clock[WhichClock].MSecond=0; nState=2; } if(aKey==KEY2) {KeyWaitTime=0;if(WhichClock<CLOCKCOUNT-1)WhichClock++;} if(aKey==KEY3) {KeyWaitTime=0;if(WhichClock>0)WhichClock--;} DisplayClock(WhichClock); break;case2: //选择时间模式(12小时制或24小时制) KeyWaitFlag=1; //等待按键时间内无按键,自动返回运行状态 if(KeyWaitTime>=KEYWAITTIME){nState=0;KeyWaitFlag=0;KeyWaitTime=0;} if(aKey==KEY1){KeyWaitTime=0;AdjustTimeFlag=1;nState=3;} if(Clock[WhichClock].TimeMode==TIMEMODE12) { DisplayTimeMode(TIMEMODE12); if(Clock[WhichClock].AmOrPm==PM) {PmLed=LEDON;AmLed=LEDOFF;} else{PmLed=LEDOFF;AmLed=LEDON;} if((aKey==KEY2)||(aKey==KEY3)) { KeyWaitTime=0; Clock[WhichClock].TimeMode=TIMEMODE24; Clock[WhichClock].Hour+=12; } } else { DisplayTimeMode(TIMEMODE24); AmLed=LEDOFF;PmLed=LEDOFF; if((aKey==KEY2)||(aKey==KEY3)) { Clock[WhichClock].TimeMode=TIMEMODE12; if(Clock[WhichClock].Hour>=12) { KeyWaitTime=0; Clock[WhichClock].Hour-=12; Clock[WhichClock].AmOrPm=PM; } elseClock[WhichClock].AmOrPm=AM; } } break;case3: //调整所选时钟的小时 KeyWaitFlag=1; //等待按键时间内无按键,自动返回运行状态 if(KeyWaitTime>=KEYWAITTIME){nState=0;KeyWaitFlag=0;KeyWaitTime=0;} if(aKey==KEY1){KeyWaitTime=0;nState=4;} if(aKey==KEY2) { KeyWaitTime=0; if(Clock[WhichClock].TimeMode==TIMEMODE12) { if(Clock[WhichClock].Hour<12)Clock[WhichClock].Hour++; else { if(Clock[WhichClock].AmOrPm==PM) { Clock[WhichClock].AmOrPm=AM; Clock[WhichClock].Hour=0; } else { Clock[WhichClock].AmOrPm=PM; Clock[WhichClock].Hour=0; } } } elseif(Clock[WhichClock].Hour<23)Clock[WhichClock].Hour++; } if(aKey==KEY3) {KeyWaitTime=0;if(Clock[WhichClock].Hour>0)Clock[WhichClock].Hour--;} FillDispBuf(Clock+WhichClock); Display(FLASHHOUR); break;case4: //调整所选时钟的分钟 KeyWaitFlag=1; //等待按键时间内无按键,自动返回运行状态 if(KeyWaitTime>=KEYWAITTIME){nState=0;KeyWaitFlag=0;KeyWaitTime=0;} if(aKey==KEY1){KeyWaitTime=0;nState=5;} if(aKey==KEY2) {KeyWaitTime=0;if(Clock[WhichClock].Minute<59)Clock[WhichClock].Minute++;} if(aKey==KEY3) {KeyWaitTime=0;if(Clock[WhichClock].Minute>0)Clock[WhichClock].Minute--;} FillDispBuf(Clock+WhichClock); Display(FLASHMINUTE); break;case5: //调整所选时钟的秒 KeyWaitFlag=1; //等待按键时间内无按键,自动返回运行状态 if(KeyWaitTime>=KEYWAITTIME){nState=0;KeyWaitFlag=0;KeyWaitTime=0;} if(aKey==KEY1){KeyWaitTime=0;AdjustTimeFlag=0;nState=6;} if(aKey==KEY2) {KeyWaitTime=0;if(Clock[WhichClock].Second<59)Clock[WhichClock].Second++;} if(aKey==KEY3) {KeyWaitTime=0;if(Clock[WhichClock].Second>0)Clock[WhichClock].Second--;} FillDispBuf(Clock+WhichClock); Display(FLASHSECOND); break;case6: //开关闹铃功能 KeyWaitFlag=1; //等待按键时间内无按键,自动返回运行状态 if(KeyWaitTime>=KEYWAITTIME){nState=0;KeyWaitFlag=0;KeyWaitTime=0;} if(aKey==KEY1) { KeyWaitTime=0; if(Clock[WhichClock].AlarmOpen)nState=7; elsenState=0; } if(Clock[WhichClock].AlarmOpen) { DisplayOnOffAlarm(ALARMON); if((aKey==KEY2)||(aKey==KEY3)) {KeyWaitTime=0;Clock[WhichClock].AlarmOpen=ALARMOFF;} } else { DisplayOnOffAlarm(ALARMOFF); if((aKey==KEY2)||(aKey==KEY3)) {KeyWaitTime=0;Clock[WhichClock].AlarmOpen=ALARMON;} } break;case7: //调整闹铃小时 KeyWaitFlag=1; //等待按键时间内无按键,自动返回运行状态 if(KeyWaitTime>=KEYWAITTIME){nState=0;KeyWaitFlag=0;KeyWaitTime=0;} if(aKey==KEY1){KeyWaitTime=0;nState=8;} if(aKey==KEY2) { KeyWaitTime=0; if(Clock[WhichClock].TimeMode==TIMEMODE12) { if(Clock[WhichClock].AlarmHour<12)Clock[WhichClock].AlarmHour++; else { if(Clock[WhichClock].AlarmAmOrPm==PM) { Clock[WhichClock].AlarmAmOrPm=AM; Clock[WhichClock].AlarmHour=0; } else { Clock[WhichClock].AlarmAmOrPm=PM; Clock[WhichClock].AlarmHour=0; } } } elseif(Clock[WhichClock].AlarmHour<23) Clock[WhichClock].AlarmHour++; } if(aKey==KEY3) { KeyWaitTime=0; if(Clock[WhichClock].AlarmHour>0) Clock[WhichClock].AlarmHour--; } FillAlarmToDispBuf(Clock+WhichClock); Display(FLASHMINUTE); break;case8: //调整闹铃分钟 KeyWaitFlag=1; //等待按键时间内无按键,自动返回运行状态 if(KeyWaitTime>=KEYWAITTIME){nState=0;KeyWaitFlag=0;KeyWaitTime=0;} if(aKey==KEY1){KeyWaitTime=0;nState=0;} if(aKey==KEY2) { KeyWaitTime=0; if(Clock[WhichClock].AlarmMinute<59) Clock[WhichClock].AlarmMinute++; } if(aKey==KEY3) { KeyWaitTime=0; if(Clock[WhichClock].AlarmMinute>0) Clock[WhichClock].AlarmMinute--; } FillAlarmToDispBuf(Clock+WhichClock); Display(FLASHSECOND); break;default:nState=0; }}}//T0定时器10ms中断服务函数voidT0Int(void)interrupt1{unsignedchari;TL0=vTL0;TH0=vTH0;if((KeyWaitFlag)&&(KeyWaitTime<KEYWAITTIME))KeyWaitTime++; //用于按键等待if(!AdjustTimeFlag) //只有处于非调整时间状态,才刷新时钟的时间{for(i=0;i<CLOCKCOUNT;i++) //此循环用于刷新各时钟的时间{ pClock->MSecond+=10; if(pClock->MSecond>=1000){pClock->Second++;pClock->MSecond=0;} if(pClock->Second>=60) {pClock->Minute++;pClock->Second=0;} if(pClock->Minute>=60) {pClock->Hour++;pClock->Minute=0;} if(pClock->TimeMode==TIMEMODE12) { if(pClock->Hour>=12) { if(pClock->AmOrPm==PM) {pClock->Hour=0;pClock->AmOrPm=AM;} else {pClock->Hour=0;pClock->AmOrPm=PM;} } if(pClock->AmOrPm==PM){PmLed=LEDON;AmLed=LEDOFF;} else{PmLed=LEDOFF;AmLed=LEDON;} } else { PmLed=LEDOFF;AmLed=LEDOFF; if(pClock->Hour>=24){pClock->Hour=0;} } if((pClock->AlarmOpen)&&(!pClock->AlarmFlag)) //判断是否应打开闹铃 if(pClock->Hour==pClock->AlarmHour) if(pClock->Minute==pClock->AlarmMinute) if(pClock->TimeMode==TIMEMODE12) {if(pClock->AmOrPm==pClock->AlarmAmOrPm)pClock->AlarmFlag=1;} elsepClock->AlarmFlag=1; if(pClock->AlarmFlag) //闹铃时间到,自动关闭闹铃 if(++pClock->AlarmTime>=ALARMTIME)pClock->AlarmFlag=0; pClock++; }pClock=Clock;}}中外《量子力学》教材经典知识点的区别与思考内容摘要:量子力学作为近代物理学的重要基础理论之一,其发展对人类的影响产生极重要的作用。本文通过对六本国内外著名量子力学教材的经典知识点的分析、讨论,以便更好地促进国内高校教学的发展。具体就不确定性原理展开分析,讨论不同教材中的讲解思路、教学讨论深广度、以及案例分析,从而明确各本教材的内容特色、侧重点和不足。关键词:不确定性原理;波粒二象性;概率波;量子力学

量子力学(QuantumMechanics)是研究微观粒子的运动规律的物理学分支学科,它主要研究原子、分子、凝聚态物质,以及原子核和基本粒子的结构、性质的基础理论,它与相对论一起构成了现代物理学的理论基础。量子力学不仅是近代物理学的基础理论之一,而且在化学等有关学科和许多近代技术中也得到了广泛的应用。随着国内高等教育的不断发展,作为物理学重要课程的量子力学得到越来越多的重视,国内外著名大学都开设此课程。为了对国内物理高等教育提供量子力学教学的方面的参考,我们在广泛调研和充分比较的基础上,专门选取了六本国内外著名教材进行对比,从中分析出国内量子力学教学近些年的成长,以及与国际水平的差异与不足,从而有的放矢的优化和改善国内教学资源。国内三本著名量子力学教材分别是:曾谨言的《量子力学》第四版[1]、苏汝铿的《量子力学》第二版[2]和张永德的《量子力学》第二版[3];国外三本著名量子力学教材分别是:DavidJ.Griffiths的《IntroductiontoQuantumMechanics》[4]、A.P.FrenchandEdwinF.Taylor的《AnIntroductiontoQuantumPhysics》[5]和RobertEisbergandRobertResnick的《QuantumPhysicsofAtoms,Molecules,Solids,Nuclei,andParticles》[6]。这六本书都已在国内外使用多年,并拥有广大读者,是极具代表性的量子力学教材。我们将从量子力学的一个经典知识点——不确定性原理出发,来具体考察不同教材对此问题的分析讲解,从而明确各本教材的内容特色、侧重点和不足。1国内外有关“不确定性原理”论述的特点收稿日期:修回日期:基金项目:教育部研究项目收稿日期:修回日期:基金项目:教育部研究项目《比较中外著名大学“四大力学”本科课程与主流教材,探索物理学国际化创新人才培养模式》1.1讲解思路方面就讲解思路来说,大致都能总结为概念、实验、数学形式、应用四个方面来剖析。曾谨言的《量子力学》第四版[1]:作者在第二章和第四章分别从波粒二象性和量子统计解释两方面来阐述概念和数学形式。从经典粒子概念在微观尺度上多大程度适用出发,引用波包概念讨论粒子的波动性,从而得到不确定关系式,用作者的话来说就是波长是与整个波动相关的,空间某点的波长的提法是没有意义的。从波粒二象性本质上分析了不确定性原理的概念。在第四章中运用算符对易子的基础和不等式关系式,得到不确定性原理的一般关系式。附带例题思考题侧重算符对易的概念。整体上来说,有优点也有不足,概念解释透彻,但证明繁琐,公式迭代过多。苏汝铿的《量子力学》第二版[2]:作者在第三章矩阵力学中运用不等式关系式证明了不确定性原理关系式,优缺点同上。接着作者从六个方面做出分析讨论:“测不准关系”的误解,算符对易的本质,理想实验,零点能和角动量算符中的应用,以及测量的主客观性。并没有详细的从本质波粒二象性的角度出发讨论不确定性原理的概念,这点略显不足。张永德的《量子力学》第二版[3]:作者在第一章中紧接着波粒二象性和概率波之后,运用Fourier宽带定理证明了不确定性原理,从频谱分析的观点来解释不确定性原理,证明本身简洁干净,但过于依靠Fourier宽带定理,并不能从物理图像上更好的说明。之后还讨论了不确定性原理在粒子物理和原子核物理中的应用。DavidJ.Griffiths的《IntroductiontoQuantumMechanics》[4]:作者在第一章和第三章分别从波粒二象性和量子统计解释两方面来阐述概念和数学形式。特别是在第一章中,有别于经典的方法从粒子的波动性来讨论,作者巧妙的运用了波动的绳子,从波的角度出发来形象的讨论波粒二象性的不确定性。对于连续波动的绳子,我们能很容易的读出波长,根据德布罗意关系式从而得到动量,但却很难读出位置,换句话说就是对于确定波长的波,讨论其位置是没有意义的;对于孤立波的情形,我们也能很容易读出位置,但却很难读出波长,也就是说位置和动量是不能同时确定的。用波动的绳子形象的解释了不确定性原理。在第三章中,作者用复数的绝对值大于虚部的内积方法,从数学上简洁明了的证明了一般的量子统计不确定关系式,并从数学上分析了非对易算符这一本质问题。之后还就最小不确定波包和能量-时间不确定关系展开了扩展讨论,附带大量习题讨论。整体来说,分析和证明简洁明了,概念清晰,方法巧妙,是一部出色的教材。A.P.FrenchandEdwinF.Taylor的《AnIntroductiontoQuantumPhysics》[5]:由于作者采用传统经典的描述方法,运用的都是初级数学如微分方程和实分析,并没有太多的涉及量子统计的内容,也就没有具体讨论不确定性原理的关系式,不过就其基础波粒二象性展开了详细的讨论,具体分析了Davisson-Germer实验,还分别就电子、中性原子、分子和核粒子的波动性逐节讨论。从粒子的波动性自然可以窥得不确定性原理的奥义。本书更注重实验,具体实例,用浅显的数学来研究,适合作为导论教材。RobertEisbergandRobertResnick的《QuantumPhysicsofAtoms,Molecules,Solids,Nuclei,andParticles》[6]:作者首先就经典力学、量子力学和相对论中的不确定性问题展开讨论,得出量子统计这一本质原因,讨论具有启发性,之后从测量的角度出发,用玻尔的理想实验简单的给出了不确定关系式,最后用不确定性原理重新阐释杨氏双缝实验,并附有两道例题,注重基本概念的反复讨论,温故而知新。1.2教学讨论深广度方面六本量子力学书籍都是国内外长久以来被使用过的教材,它们各有侧重,出发点不同,讨论的深广度的需求也自然不同,适用的读者范围也有所不同。我们在表1中罗列出它们的不同区别。表1讨论的深广度Tab.1Thescopeofthediscussion作者侧重及深广度曾谨言知识面广,应用数理知识解决量子力学问题苏汝铿概念理解,多学科知识点交叉理解张永德内容开放,注重实际应用Griffiths基本概念思路,物理意义,图像清晰,简洁明了French&Taylor注重实验,具体实例,用初等数学来分析物理Eisberg&Resnick内容通俗易懂,图例丰富,偏重定性分析1.3案例分析方面每本优秀的教材中都不可能少了丰富的图表、公式、例题和习题,在表2中我们统计了每本教材的相关数据,读者可以从表2中大致分析出每本教材的容量和特点。表2六本国内外著名量子力学教材相关数据Tab.2TherelateddataofSixdomesticandforeignfamousquantummechanicsmaterials图1624842121203363表1870142628公式219526585841174358624例题701532373134习题265172243337244947虽然每本书都含有大量得例题和习题,但其在每本教材中的用意却稍有不同。分析其中的不同,能更好的帮助读者使用每本教材。曾谨言的教材[1],整套书的最初目的就是为了解题,收集了各种量子力学难题,对数学物理方法的能力要求较高,读者会时不时的遇上球谐函数、合流超几何函数等麻烦的东西,难度略大,但也被国内诸多学校设为考研参考书。苏汝铿的教材[2]例题、习题不多,但试图通过章节后的习题练习来加深对概念的理解,当然有的题目难度偏大,有的本身就是学术论文,读者也可以借此开拓下视野,或进一步寻找钻研的课题。张永德的教材[3]例题侧重实际物理中的应用,习题简单,围绕基本知识点的简单运用,配有题解出版(《量子力学习题精解》,吴强,柳盛典编著)。适合入门教学与自学。DavidJ.Griffiths的教材[4],每个知识点都附有新颖的例题和习题思考,这不仅仅为了知识的讲授,而是能让读者真正从具体问题中体会到一些精髓的东西。习题分类明确,可供不同基础的学生选择,由易到难共四种:不标星表示可以快速解决的并不太有营养,标一颗星表示关键重要问题,标两颗星表示有困难或边缘性问题,标三颗星表示极有挑战的难题。在保证读者自信心以及具备相当的练习的基础上再去认真对待抽象的希尔伯特空间、表象等理论,最后是应用部分。A.P.FrenchandEdwinF.Taylor的教材[5]和RobertEisbergandRobertResnick的教材[6]本身数学推导就不多,其例题、习题的目的就是帮助读者更好地理解数学符号的意义理解和正确使用,通过各类问题更好地从多种角度来描述物理概念,涉及问题很基本,难度不大。2总结和思考从实用的角度说,国内教材偏重数学无可厚非,但部分教材并不能很好阐明概念,对于概念的理解有欠是有碍于实际科研工作的。读者就

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论