Changeset 6df7db
- Timestamp:
- May 30, 2008, 9:06:35 AM (17 years ago)
- Children:
- 9e831e
- Parents:
- 08e223
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
pcp/src/run.c
r08e223 r6df7db 721 721 struct Lattice *Lat = &P->Lat; 722 722 struct Psis *Psi = &Lat->Psi; 723 struct Ions *I = &P->Ion; 723 724 //struct FileData *F = &P->Files; 724 725 // int i; … … 745 746 ResetBrent(P,Psi); 746 747 *Stop = 0; 747 if ( P->Call.ReadSrcFiles != DoNotParse) {748 if ((P->Call.ReadSrcFiles != DoNotParse) && (!I->StructOpt)) { 748 749 if (!ReadSrcPsiDensity(P,Occupied,1, R->LevSNo)) { // if file for level exists and desired, read from file 749 750 P->Call.ReadSrcFiles = DoNotParse; // -r was bogus, remove it, have to start anew … … 776 777 EnergyOutput(P,0); 777 778 } 778 if (( P->Call.ReadSrcFiles != DoReadAllSrcDensities) && (P->Call.ReadSrcFiles != DoReadOccupiedSrcDensities)) { // otherwise minimise oneself779 if ((I->StructOpt) || ((P->Call.ReadSrcFiles != DoReadAllSrcDensities) && (P->Call.ReadSrcFiles != DoReadOccupiedSrcDensities))) { // otherwise minimise oneself 779 780 if(P->Call.out[LeaderOut]) fprintf(stderr,"(%i)Beginning minimisation of type %s ...\n", P->Par.me, R->MinimisationName[Occupied]); 780 781 while (*Stop != 1) { // loop testing condition over all Psis … … 1086 1087 MinimiseOccupied(P, &Stop, &SuperStop); 1087 1088 if (!I->StructOpt) { 1088 if (((P->Call.ReadSrcFiles != DoReadAllSrcDensities) ||(P->Call.ReadSrcFiles != DoReadOccupiedSrcDensities)) || (!ParseWannierFile(P))) { // only localize and store if they have just been minimised (hence don't come solely from file), otherwise read stored values from file (if possible)1089 if (((P->Call.ReadSrcFiles != DoReadAllSrcDensities) && (P->Call.ReadSrcFiles != DoReadOccupiedSrcDensities)) || (!ParseWannierFile(P))) { // only localize and store if they have just been minimised (hence don't come solely from file), otherwise read stored values from file (if possible) 1089 1090 SpeedMeasure(P, WannierTime, StartTimeDo); 1090 1091 ComputeMLWF(P); // localization of orbitals 1091 1092 SpeedMeasure(P, WannierTime, StopTimeDo); 1092 OutputVisSrcFiles(P, Occupied); // rewrite now localized orbitals1093 1093 // if (!TestReadnWriteSrcDensity(P,Occupied)) 1094 1094 // Error(SomeError,"TestReadnWriteSrcDensity failed!"); 1095 1095 } 1096 1096 // join Wannier orbital to groups with common centres under certain conditions 1097 //debug (P,"Changing Wannier Centres according to CommonWannier"); 1098 ChangeWannierCentres(P); 1099 OutputVisSrcFiles(P, Occupied); // rewrite now localized orbitals 1100 1101 1097 1102 // // plot psi cuts 1098 1103 // for (i=0; i < Psi->MaxPsiOfType; i++) // go through all wave functions (here without the extra ones for each process)
Note:
See TracChangeset
for help on using the changeset viewer.