📄 changelog
字号:
Version 2.5.32Oct 18, 2002(1) Added bug fix from Luming Shen (thanks) in cdpairf.c, PAIR_Parse() else if (Deriv==0) Value = F1(tc,x); is replaced by else if (Deriv==1) Value = F1(tc,x);Version 2.5.31June 1, 2002(1) Added bug fix from Qikai Li (thanks) in cdfunc.c, InterpolateTable() F->ExteriorValue = a[6*F->NumCoeff]; ===> F->ExteriorValue = a[ F->NumCoeff];Version 2.5.30Jan 20, 2002(1) Corrected auxillary pair potential in module cdcsi.c.(2) Re-ordered CHANGELOG(3) Added Makefile in doc/ directoryVersion 2.5.29Mar 19, 2001(1) Moved examples into separate directories and included output files(2) Rename potential files from (e.g., nial.pot to nial.txt) and fixed example files to include correct potential file from archive directory tree.Version 2.5.29Jun 15, 2000(1) Fixed reported Y2K problem, tm_year -> tm_year+1900(2) Added 'thermal' stress component to stress calculation with STRESS THERMAL commandVERSION 2.5.28Feb 18(1) Fixed MACROF to accept %d, to give better error message and cddoc.c to report correct usage.Feb 13(7) Fixed WRITE EKIN. Formerly writing (3/2)KT, which didn't take into account varying degrees of freedom. Have now replaced GetTemperature() with GetKET(), GetKE() and a new GetTemperature().(8) Fixed ITEMP to correctly apply random velocities to constrained system - added ApplyConstraint() command just before velocities rescaled to account for constraintFeb 2(6) Fixed Y2K problem in cdstate, printed year 2000 as 19100.VERSION 2.5.27Jan 7, 2000(1) Fixed bug with Quench, previously Clamp would be applied for each step when potential energy dropped after force calc. Not good..Jan 14, 2000(1) Added WRITE VAR command and WRITE MASS commandJan 17, 2000(1) Converted ClampVelocityTag() and GetTemperature() to use number of degrees of freedom based on the type of constraint, none, plane or line.(2) Added velocity to ApplyConstraint() - needed to get correct temperature when using constraints.(3) Have cditemp.c InitialTemp() call ApplyConstraint()(4) Call CalcTotalDOF() from read_particle(), read_fix(), read_remove(), read_cor(), read_rcv(), read_dup(), read_state(), read_posvel()Jan 18(5) Fix strsub.c strlin() to break input lines on \r as well as \n (thanks Qikai Li)VERSION 2.5.26Nov 16, 1999(1) Correct read_select so that command "select all;fix off" works(2) Have macro command echo macro valueDec 5, 1999(3) cditemp.c InitialTemp(), divide random velocities by sqrt(mass)(4) cdrepeat.c, read_repeat(), 'quit' command end program from with REPEAT/END loop(5) Add -d option to turn on debugging(6) Moved nrand() from cditemp.c to parse.c ! NEEDED TO #include "parse.h" in cditemp.cVERSION 2.5.25Sep 28, 199(1) Have FILL GO command mark neighbor list as invalid.(2) Add CALC nrand() command for Emmanuel.(3) Add option to read from stdin ('-')VERSION 2.5.24June 24, 1999(1) Fixed notorious state file bug reported by Emmanuel Bournez.(2) Updated Makefile(3) Add WRITE [TAG] COR kludge to help Emmanuel plot different colors for different groups of atoms using XMDVIEWVERSION 2.5.23Jan 25, 1999(1) Add formula option to doc.(2) Add VERBOSE INFO command.(3) In cdcons.c read_constrain() add test for a->cons[]==NULL before ALLOCATE()ing it. if (*ptype==POT_EMBED || *ptype==POT_DENS) { if (*type>=NumType_m)(14) In cdcomm.c read_command() change IsComment (cmdstr,..) to IsComment (cpnt,..) Change required when added new Macro Command.(5) Call WrapParticles() after end of every MD step. This prevent the dependence of trajectory on calls to WriteCor() or writercv() (which in turn calls WrapParitcles() ).(6) Call UpdateNeighborList() whenever writing a STATE file so that subsequent trajectory will match that of XMD restarted with the STATE file.(7) EXTFORCE and EXTSPRING commands now read data in cgs units. Previously they read units in eunit/cm and eunit/cm^2.(8) Added FORMAT option to WRITE PARTICLE(9) In cdwrite.c, add WARNING for when WRITE DISP called without first calling DISP.(10) Add MACROF command.(11) Add automatic variable->macro substitution, that is if calc i=22 calc var22=100 write var$i write var22 the 'write var22' and 'write var$i' statements give the same result.Jan 14, 1999(12) In plotc.c, change ClipAtom() to ignore atom pairs when both atoms outside the box. In theory this should not happen but plot_coord() does this because it is not set to handle free surface case when atoms are less then 0 or greater than a->bcur[].Jan 21, 1999(13) In cdeam.c _parse_pot(), changed t2 to *type in following codeVERSION 2.5.22Nov 3, 1998(1) Correct PLOT bug detected by example plot.xm(2) Save PRESSURE info in state file.(3) In cdwrite.c PrintVectorList(), remove s->eunit factor so that Forces and Spring Constant prints in cgs units.(4) In cdwrite.c PrintVectorList(), change print out for null list from (example) 1 0.0 0.0 0.0 where one is type to 1 2.75 2.75 4.25 0 0.0 0.0Nov 2,1998(5) Fix read_pressure() to implement units of MBAR for EXTERNAL pressure, not cgs.(4) remove SEL option from ROTATE WAVE(3) For following commands, - print number of particles changed - print warning if no particles selected CLAMP (sel) CONSTRAIN DAMP DISP (sel) EXTFOR EXTSPRING FIX ITEMP(sel) MASS "PLOT SYMBOL" PSTRAIN ROTATE(sel) SET TYPELIST WAVE(sel) WRITE(sel)(2) In cdeam.c, check that input potential type does not exceed maximum specified in POTENTIAL SET EAM n command.VERSION 2.5.21Oct 28, 1998(1) CHanged wording for error message from PREVIOUS COMMAND NOT FOUND to ERROR: PREVIOUS COMMAND NOT FOUND so that user can find error message easily in large output file.VERSION 2.5.20Oct 5, 1998(1) Fixed cdstate.c readstate(), was not setting BMA_MotionAlgorithm correctly.VERSION 2.5.19Sep 30, 1998(1) Added message after CMD or QUENCH command that reports final step. Helpful for debugging when trying to synchronize .xmo files and .e, .s, .b files.VERSION 2.5.18Sep 24, 1998(1) Changed type of NeighborList from USHORT (unsigned short) to int, so now can do 2^32 neighobrs instead of just 2^16, which caused havoc with Xiaowei's large 90000+ atom simulation.(2) Added ability to have different X,Y,Z pressures for Pei's sintering simulations with pressure clamp. Not valid for simulations with Andersen's algorithm.VERSION 2.5.17Sep 14, 1998(1) In cdeam.c, added warning messages when reading potential (using either standard for FORMULA option) without NTABLE, X0 or XN.(2) In cdeam.c, corrected error in GetAtomSubset() which omitted the last atom when using odd number of aatoms. This error would have no effect when the last atom in array was also the last atom in the neighbor list, in which case it wouldn't be needed because it was handled as a neighbor of previous atoms.(3) For some unknown reason, SELECT ALL became broken, because if /else if/ statments not correct, and after SELECT ALL code was executed, a later check thought that it wasn't and therefore concluded that SELECT ALL was not a correct command.VERSION 2.5.16Sep 11, 1998(1) Added SELECT KEEP ON|OFF to read_select(), it was missing.(2) Have read_select() check that a->np>0 before ALLOCATEing tsel[](3) Have WriteCorFile() check nsel before writing selected coordinates. TAG value as 0.VERSION 2.5.15Aug 26, 1998(1) Correct PARTICLE and FILL GO command to initialize particle TAG value as 0.VERSION 2.5.14Aug 25, 1998(1) Fix FILL BOUNDARY SPHERE and FILL MARGIN interaction, they were not working together.VERSION 2.5.13Aug 21, 1998(1) WRITE AVG,MAX,MIN FORCE was mistakenly scaling output by 1e8 because code was copied from WRITE PARTICLE code. This is now corrected.VERSION 2.5.12Aug 11, 1998(1) Change cdmain.c, cdthread.h, cdthread.c, cdeam.c to use macros PTHREAD_MUTEX_T etc instead of pthread_mutex_t. This is to prevent name collision on Dec Alpha, because on Xiaowei's Dec Alpha pthread_mutex_t etc are defined in the default include files, and those definitions are incompatible with the substitute dummy pthread library.Version 2.5.11July 16, 1998(1) Change cddoc.c from PRESSURE EXPRESSURE ... to PRESSURE EXTERNAL ...(2) Change keyword ORTHONORMAL to ORTHORHOBMIC in cddoc.c, read_pressure() and in defines BMG_ORTHORHOMBIC(3) Fixed cdeam.c to make USE_THREAD_CODE the default.July 13, 1998Version 2.5.10(1) Program now prints ERROR if QUENCH called without first initializing MASSes(2) Corrected stress for STILL algorithm. Tested with Still2.xmJuly 8, 1998Version 2.5.9(1) Correct BoxDynamics - in ClampPressure() had if (!a->BoxMotionAlgorihtm!=BMA_CLAMP) return; instead of if (a->BoxMotionAlgorihtm!=BMA_CLAMP) return;July 1, 1998Version 2.5.8(1) Correct BoxDynamics functions - previously called when a->BoxMotionAlgorithm!=BMA_NONE, now only called when a->BoxMotionAlgorithm==BMA_ANDERSENJune 12, 1998Version 2.5.7(1) For PARTICLE and POSVEL commands, clear all flags in a->Selection[](2) Added cdfunc.c to do potential functions.(3) Created cdpairf.c to allow other models to include pair potential model, cdpairf.c now call cdfunc.c to handle functions.(4) Interfaced cdstil.c to cdpairf.c to include pair potential model.June 12, 1998Version 2.5.6(1) Add commands for R. Ge WRITE [SEL] PARVEL PARVEL [ADD] n PRESSURE ANDERSEN xmass [ ymass [ zmass ] ] PRESSURE CLAMP bulkmodulus [ cstep ] PRESSURE OFF PRESSURE EXTERNAL pressure PRESSURE { ISOTROPIC | ORTHORHOMBIC }June 11, 1998Version 2.5.5(1) Increase precision on WRITE EPOT(2) For Selena, SELECT EATOM lo hi, SELECT VELOCITY [ABS] {X|Y|Z|MAG} lo hi(3) Test BULKMODULUS before PRESSURECLAMP(4) Restructure read_pressure() to fit new command syntaxMay 28, 1998Version 2.5.4DONE(1) Have PressureClamp respect the a->BoxMotionGeometry==BMG_ISOTROPIC setting.(2) Add VERBOSE { ON | OFF } command for Dr. Ge to remove comments from WRITE EATOM(3) Let macros ignore case(4) Change PRESSURE PRESSURE <pressure> option to PRESSURE EXTERNAL <pressure>(5) Have CALC print error information(6) Fix POTENTIAL WRITE PAIR 1 command in cdeam.c - It was writing POTENTIAL DENS 0 and POTENTIAL EMBED 0 - It was using incomplete format %13.4 instead of %13.4e(7) Fix cdeam.c __efn() so that __efn(rcut) is not out of range (see comments in cdeam.c)May 14, 1998Version 2.5.3 (1) Error found with particle array allocation, calls to crdalloc() used a->np instead of a->NumPartAlloc. Have replaced all crdalloc() calls with ALLOCATE and replaced a->np with a->NumPartAlloc. (2) Write out messages about compile switches that were used. (3) added routine GetTemperature() calculates temperature of selected atoms (using correct number of free particles) (4) WRITE SEL TEMP and WRITE SEL EKIN now use selected atoms. Previously, SEL options ignored, and WRITE EKIN wrote total kinetic energy including box motion, not the kinetic energy per particle. Now WRITE SEL EKIN writes only kinetic energy for particles (NOT Box), and normalized only by number of free atoms. WRITE EKIN includes BOX kinetic energy, but divided by all particle (*including* fixed particles). (5) Write erorr message when STATE _file_ not found (6) Add MACRO capabilityMay 12, 1998Version 2.5.2 (1) Threaded version was giving Selena intermitent errors. Found that we needed to initilaze FPU at start of Thread functions ThreadCalcRho() and ThreadCalcForce() with statement asm("finit"); (2) PLOT now draws filled circles with black border.May 6, 1998Version 2.5.1 (1) mistakenly called free(rho) instead of FREE(rho) in cdeam.c, lead to confused "Check" messages and CheckMem* output. (2) All allocations like ALLOCATE (a->xxx, xxx, a->np) must be changed to ALLOCATE (a->xxx, xxx, a->NumPartAlloc)April 23, 1998Version 2.5.0 (1) Created threaded version of EAM force routine. (2) Added cdthread.c as a dummy replacement for PTHREAD library (3) Corrected WRITE TEMP, was not dividing by number of particles. (4) -p option to read number of processors (5) FILL GO now write number of new particlesApril 2, 1998Version 2.4.36 (1) Fixed FILL GO comand, did not implement orientation or alignment correctly. (2) Changed sign in external pressure for PRESSURE CLAMP dynamics in cdmd.c ClampPressure()
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -