Révision 6
src/ReadInput_siesta.f90 (revision 6) | ||
---|---|---|
8 | 8 |
|
9 | 9 |
IMPLICIT NONE |
10 | 10 |
|
11 |
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
|
12 |
! |
|
11 | 13 |
INTERFACE |
14 |
! |
|
15 |
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
|
16 |
|
|
12 | 17 |
function valid(string) result (isValid) |
13 | 18 |
CHARACTER(*), intent(in) :: string |
14 | 19 |
logical :: isValid |
... | ... | |
66 | 71 |
Use io_module |
67 | 72 |
|
68 | 73 |
implicit none |
69 |
!--------------------------------------------------------------- Input Variables |
|
74 |
|
|
70 | 75 |
character(len=*), intent(in) :: routine, msg |
71 | 76 |
character(len=*), intent(in), optional :: file |
72 | 77 |
integer(KINT), intent(in), optional :: line, unit |
... | ... | |
88 | 93 |
INTEGER(KINT), OPTIONAL, INTENT(IN) :: Unit |
89 | 94 |
|
90 | 95 |
END SUBROUTINE WriteList |
91 |
END INTERFACE |
|
92 | 96 |
|
97 |
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
|
98 |
! |
|
99 |
END INTERFACE |
|
100 |
! |
|
101 |
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! |
|
93 | 102 |
|
103 |
|
|
94 | 104 |
CHARACTER(132) :: Line,Line2 |
95 | 105 |
INTEGER(KINT) :: Idx |
96 | 106 |
INTEGER(KINT) :: IAt,I |
... | ... | |
219 | 229 |
DO I=1,NAt |
220 | 230 |
Search => Search%next |
221 | 231 |
Read(Search%line,*) XTmp,YTmp,ZTmp,IdxSpecies(I) |
232 |
! We give a name to this atom |
|
233 |
IF (AtName(I)/="") THEN |
|
234 |
! Write(Line,'(A,I5,1X,A2,1X,A32)') 'AtName & SpeciesName for atom ',I,AtName(I), & |
|
235 |
! TRIM(Siesta_SpeciesName(IdxSpecies(I))) |
|
236 |
! WRITE(*,'(1X,A)') Line |
|
237 |
If (InString(Atname(I),TRIM(Siesta_SpeciesName(IdxSpecies(I))))==0) THEN |
|
238 |
Write(Line,'(A,I5,1X,A2,1X,A32)') 'AtName /= SpeciesName for atom ',I,AtName(I), & |
|
239 |
TRIM(Siesta_SpeciesName(IdxSpecies(I))) |
|
240 |
Call Die('Readinput_siesta:Reading AtomicCoordinatesAndAtomicSpecies',Line,Unit=IOOUT) |
|
241 |
END IF |
|
242 |
ELSE |
|
243 |
AtName(I)=AdjustL(Trim(Siesta_SpeciesName(IdxSpecies(I)))) |
|
244 |
END IF |
|
245 |
! we look for something else at the end of the line |
|
222 | 246 |
! We save everything but the x,y,z, and species description |
223 | 247 |
Line=AdjustL(search%line) |
224 | 248 |
! We skip x |
Formats disponibles : Unified diff