[Wien] x xspec runtime error

2011-09-12 Thread Gavin Abo
Dr. Fecher,

Yes, I did check how much data there was in the case.dos1ev.  NENRG was 
770, and there were 770 lines of data starting at line 4 and going until 
the end of the file. This is the same as you described.

It also seems to me that there is no need to check the eof and to use 
your DO loop until IEMAX is reached.  Though, as you stated, no error 
with NENRG or dos data sets is assumed.

Best Regards,

Gavin

On 9/12/2011 1:45 AM, Gerhard Fecher wrote:
> Did you check how much data you have in case.dos1ev ?
> in the second line of that file you should find the number of dos data sets
>   NENRG=  770 (number where youre case stopped with the error, indeed it may 
> be different for other cases)
> this should be the same as the number of data in line 4 and following, as 
> IEMAX is read from that line
>
> As I told, I had no time to have a look into the code, after I have seen it 
> it seems
> to me that it is not needed to check whether the eof is reached.
> Supposed there is no error in NENERG possible when the case.dos1ev file is 
> written, the loop may just be
>   DO i=1, IEMAX
>IF (LC.EQ.0) then
>  READ(32,4713,ERR=913) ENE(i),DOS(i,2),DOS(i,3)
>ELSE
>  READ(32,4713,ERR=913) ENE(i),DOS(i,1),DOS(i,2),DOS(i,3)
>ENDIF
>   END DO
> and there is no need for any GOTO CONTINUEs, or other constructs to test the 
> eof.
>
> Ciao
> Gerhard
>
> 
> Dr. Gerhard H. Fecher
> Institut of Inorganic and Analytical Chemistry
> Johannes Gutenberg - University
> 55099 Mainz
> 
> Von: wien-bounces at zeus.theochem.tuwien.ac.at [wien-bounces at 
> zeus.theochem.tuwien.ac.at]" im Auftrag von"Gavin Abo [gsabo at 
> crimson.ua.edu]
> Gesendet: Freitag, 9. September 2011 14:47
> Bis: wien at zeus.theochem.tuwien.ac.at
> Betreff: Re: [Wien] x xspec runtime error
>
> Dr. Fecher,
>
> Oops, you are right.  My logical expression was not correct.  It should
> have been a less than or equal (i .LE. IEMAX .or. .NOT. EOF(32)).
> However, I would use your logical expression of (.not. (eof(32) .or.
> i.gt.iemax)), since it matches the thought process.
>
> Regarding 1) and 2), I believe this is already done in the code. Dr.
> Blaha previously posted:
>
> The dimension is read from unit 32, and then it tries to read as many
> lines 
>
> READ (32,4712) IEMAX
> allocate (   A1(NRAD,IEMAX), B1(NRAD,IEMAX))
> allocate ( ENE(IEMAX))
> allocate ( DOS(IEMAX,3),XI(IEMAX,2),X(IEMAX))
> allocate ( XINTER(IEMAX),XOUT(IEMAX))
>
> Eventually one could try for security to allocate the arrays ENE and DOS
> with IEMAX+1.
>
> Best Regards,
>
> Gavin
>
> On 9/9/2011 2:30 AM, Gerhard Fecher wrote:
>> you like to have the do while loop executed
>> if i does not exceed iemax and the end of file is not reached
>> what means (.not. (eof(32) .or. i.gt.iemax)) or similar by making use of the 
>> logical rules.
>>
>> if the dimensioning is a problem then I would preffer to
>> 1) read in first the number nmax of datasets in the file (can be done with a 
>> similar loop reading a dummy instead of the arrays)
>> 2) do the correct dimensioning of the arrays by allocation
>> 3) rewind the file
>> 4) read in the data in a do i=1, nmax loop
>>
>> Unfortunately, I have actually not enough time to do it in detail (as it 
>> might need to check the complete subroutine
>> to avoid to introduce other bugs).
>>
>> Ciao
>> Gerhard
>>
>> 
>> Dr. Gerhard H. Fecher
>> Institut of Inorganic and Analytical Chemistry
>> Johannes Gutenberg - University
>> 55099 Mainz
>> 
>> Von: wien-bounces at zeus.theochem.tuwien.ac.at [wien-bounces at 
>> zeus.theochem.tuwien.ac.at]" im Auftrag von"Gavin Abo [gsabo at 
>> crimson.ua.edu]
>> Gesendet: Donnerstag, 8. September 2011 18:14
>> Bis: wien at zeus.theochem.tuwien.ac.at
>> Betreff: Re: [Wien] x xspec runtime error
>>
>> First, Dr. Marks, thanks for your explanation on the "-check bounds" option. 
>>  It was in my compiler options temporarily "only for debugging", because I 
>> got a SIGSEGV error with the recently released intel fortran compiler 
>> (composer_xe_2011_sp1.6.233).  I found good debugging tips on the SIGSEGV 
>> error  (i.e., how to find more information about the cause of the error) at 
>> http://software.intel.com/en-us/articles/determining-root-cause-of-sigsegv-or-sigbus-errors/.
>>   One was to use the "-check bounds" option.  However, we found that 
>> composer_xe_2011_sp1.6.233 just does not work for the Wien2k code.  
>> Therefore, I'm using the composerxe-2011.3.174 version of the ifort 12 
>> compiler.
>>
>> Lastly, Dr. Fecher, I agree that the DO WHILE loop is likely better readable 
>> for the compiler.  However, I don't think that it addresses the out of bound 
>> array indexing.  Therefore, I believe "(i .GE. IEMAX .or. .NOT. EOF(32))" 
>> rather than "(.NO

[Wien] band structure

2011-09-12 Thread Peter Blaha
Yes, you can do it simultaneously.

Am 08.09.2011 13:49, schrieb Lukasz Plucinski:
> Dear Wien2k experts,
>
> I am running spin-polarized case, with pre-compiled binaries in single-CPU 
> mode on older double-CPU Linux machine.
>
> I need calculate band structure on the mesh of k-points for 
> Fermi/constant-energy surface cut simulations. Due to large number of 
> k-points the calculation takes a bit longer than
> for standard high-symmetry directions. Is it allowed to run:
>
> x lapw1 -band -up
> x lapw1 -band -dn
>
> simultaneously ? This way I would use both CPUs and decrease the waiting time.
>
> Regards,
> Lukasz
> ___
> Wien mailing list
> Wien at zeus.theochem.tuwien.ac.at
> http://zeus.theochem.tuwien.ac.at/mailman/listinfo/wien

-- 

   P.Blaha
--
Peter BLAHA, Inst.f. Materials Chemistry, TU Vienna, A-1060 Vienna
Phone: +43-1-58801-15671 FAX: +43-1-58801-15698
Email: blaha at theochem.tuwien.ac.atWWW: http://info.tuwien.ac.at/theochem/
--


[Wien] orbital moment

2011-09-12 Thread Stefaan Cottenier

> I have calculated the spin-orbit effect with spin-polarized calculations
> for a tetragonal perovskite system contains lanthanide.
> According to the userguide first I run simple scf cycle with
> spin-polarized condition then save the data and after that I include
> spin-orbit effect.
> The programme is successfully terminated but I am unable to find the
> orbital magnetic moment of lanthanide ion.
> In case.scf files I found only spin dependent magnetic moment.
> Will you be kind enough to let me know where I will find the orbital
> magnetic moment.

You need to run lapwdm after finishing the scf cycle (it takes only a 
few seconds), with '1 3' in the last line of case.indmc. The orbital 
moment for each selected orbital will be printed in case.scfdmup. See 
the usersguide, section 'lapwdm'.

Stefaan



[Wien] partial DOS

2011-09-12 Thread Peter Blaha
When using the QTL-program, you can define your own coordinate system.

Rotating x,y by 45 degrees does exactly what you want.

Am 10.09.2011 05:14, schrieb Yundi Quan:
> Hi, All,
> When calculating partial DOS, usually px,py,pz, are used. Is it possible to 
> use a new basis set like px+py, px-py and pz.
>
>
>
> ___
> Wien mailing list
> Wien at zeus.theochem.tuwien.ac.at
> http://zeus.theochem.tuwien.ac.at/mailman/listinfo/wien

-- 

   P.Blaha
--
Peter BLAHA, Inst.f. Materials Chemistry, TU Vienna, A-1060 Vienna
Phone: +43-1-58801-15671 FAX: +43-1-58801-15698
Email: blaha at theochem.tuwien.ac.atWWW: http://info.tuwien.ac.at/theochem/
--


[Wien] orbital moment

2011-09-12 Thread Gerhard Fecher
did you ask in case.indm or case.indmc
to calculate the orbital moment ?

Ciao
Gerhard


Dr. Gerhard H. Fecher
Institut of Inorganic and Analytical Chemistry
Johannes Gutenberg - University
55099 Mainz

Von: wien-bounces at zeus.theochem.tuwien.ac.at [wien-bounces at 
zeus.theochem.tuwien.ac.at]" im Auftrag von "tripurari sinha 
[sinha_tp at yahoo.com]
Gesendet: Montag, 12. September 2011 08:44
Bis: blaha at theochem.tuwien.ac.at
Cc: Wien at zeus.theochem.tuwien.ac.at
Betreff: [Wien] orbital moment

Dear Prof. Blaha,

I have calculated the spin-orbit effect with spin-polarized calculations for a 
tetragonal perovskite system contains lanthanide.

According to the userguide first I run simple scf cycle with spin-polarized 
condition then save the data and after that I include spin-orbit effect.

The programme is successfully terminated but I am unable to find the orbital 
magnetic moment of lanthanide ion.

In case.scf files I found only spin dependent magnetic moment.

Will you be kind enough to let me know where I will find the orbital magnetic 
moment.

With regards,
T. P. Sinha

From: Prof. T. P. Sinha
Department of Physics
Bose Institute
93/1, Acharya Prafulla Chandra Road
Kolkata - 79, India
Cell No. 09830159422





[Wien] x xspec runtime error

2011-09-12 Thread Gerhard Fecher
Did you check how much data you have in case.dos1ev ?
in the second line of that file you should find the number of dos data sets
 NENRG=  770 (number where youre case stopped with the error, indeed it may be 
different for other cases)
this should be the same as the number of data in line 4 and following, as IEMAX 
is read from that line

As I told, I had no time to have a look into the code, after I have seen it it 
seems
to me that it is not needed to check whether the eof is reached.
Supposed there is no error in NENERG possible when the case.dos1ev file is 
written, the loop may just be
 DO i=1, IEMAX
  IF (LC.EQ.0) then
READ(32,4713,ERR=913) ENE(i),DOS(i,2),DOS(i,3)
  ELSE
READ(32,4713,ERR=913) ENE(i),DOS(i,1),DOS(i,2),DOS(i,3)
  ENDIF
 END DO
and there is no need for any GOTO CONTINUEs, or other constructs to test the 
eof.

Ciao
Gerhard


Dr. Gerhard H. Fecher
Institut of Inorganic and Analytical Chemistry
Johannes Gutenberg - University
55099 Mainz

Von: wien-bounces at zeus.theochem.tuwien.ac.at [wien-bounces at 
zeus.theochem.tuwien.ac.at]" im Auftrag von "Gavin Abo [gsabo at 
crimson.ua.edu]
Gesendet: Freitag, 9. September 2011 14:47
Bis: wien at zeus.theochem.tuwien.ac.at
Betreff: Re: [Wien] x xspec runtime error

Dr. Fecher,

Oops, you are right.  My logical expression was not correct.  It should
have been a less than or equal (i .LE. IEMAX .or. .NOT. EOF(32)).
However, I would use your logical expression of (.not. (eof(32) .or.
i.gt.iemax)), since it matches the thought process.

Regarding 1) and 2), I believe this is already done in the code. Dr.
Blaha previously posted:

The dimension is read from unit 32, and then it tries to read as many
lines 

   READ (32,4712) IEMAX
   allocate (   A1(NRAD,IEMAX), B1(NRAD,IEMAX))
   allocate ( ENE(IEMAX))
   allocate ( DOS(IEMAX,3),XI(IEMAX,2),X(IEMAX))
   allocate ( XINTER(IEMAX),XOUT(IEMAX))

Eventually one could try for security to allocate the arrays ENE and DOS
with IEMAX+1.

Best Regards,

Gavin

On 9/9/2011 2:30 AM, Gerhard Fecher wrote:
> you like to have the do while loop executed
> if i does not exceed iemax and the end of file is not reached
> what means (.not. (eof(32) .or. i.gt.iemax)) or similar by making use of the 
> logical rules.
>
> if the dimensioning is a problem then I would preffer to
> 1) read in first the number nmax of datasets in the file (can be done with a 
> similar loop reading a dummy instead of the arrays)
> 2) do the correct dimensioning of the arrays by allocation
> 3) rewind the file
> 4) read in the data in a do i=1, nmax loop
>
> Unfortunately, I have actually not enough time to do it in detail (as it 
> might need to check the complete subroutine
> to avoid to introduce other bugs).
>
> Ciao
> Gerhard
>
> 
> Dr. Gerhard H. Fecher
> Institut of Inorganic and Analytical Chemistry
> Johannes Gutenberg - University
> 55099 Mainz
> 
> Von: wien-bounces at zeus.theochem.tuwien.ac.at [wien-bounces at 
> zeus.theochem.tuwien.ac.at]" im Auftrag von"Gavin Abo [gsabo at 
> crimson.ua.edu]
> Gesendet: Donnerstag, 8. September 2011 18:14
> Bis: wien at zeus.theochem.tuwien.ac.at
> Betreff: Re: [Wien] x xspec runtime error
>
> First, Dr. Marks, thanks for your explanation on the "-check bounds" option.  
> It was in my compiler options temporarily "only for debugging", because I got 
> a SIGSEGV error with the recently released intel fortran compiler 
> (composer_xe_2011_sp1.6.233).  I found good debugging tips on the SIGSEGV 
> error  (i.e., how to find more information about the cause of the error) at 
> http://software.intel.com/en-us/articles/determining-root-cause-of-sigsegv-or-sigbus-errors/.
>   One was to use the "-check bounds" option.  However, we found that 
> composer_xe_2011_sp1.6.233 just does not work for the Wien2k code.  
> Therefore, I'm using the composerxe-2011.3.174 version of the ifort 12 
> compiler.
>
> Lastly, Dr. Fecher, I agree that the DO WHILE loop is likely better readable 
> for the compiler.  However, I don't think that it addresses the out of bound 
> array indexing.  Therefore, I believe "(i .GE. IEMAX .or. .NOT. EOF(32))" 
> rather than "(.NOT. EOF(32))" would be a better stop condition for the loop.  
> If the syntax of "(i .GE. IEMAX .or. .NOT. EOF(32))" is not quite right, it 
> is due to my lack of Fortran experience.  I believe that because the READ 
> statement is called at the EOF and it reads into an array (probably not a 
> concern if where reading into a single variable, then being copied into an 
> array) that an access attempt is made outside the ENE(i) array.  This could 
> occur due to extra line read to determine the EOF.  Though, the original code 
> (CONTINUE-goto) works perfectly fine as is.  However, the adjustment could be 
> better coding practice.
>
>