Skip to Content.
Sympa Menu

forum - Re: [abinit-forum] angdeg and rprim issue

forum@abinit.org

Subject: The ABINIT Users Mailing List ( CLOSED )

List archive

Re: [abinit-forum] angdeg and rprim issue


Chronological Thread 
  • From: ilukacevic@fizika.unios.hr
  • To: forum@abinit.org
  • Subject: Re: [abinit-forum] angdeg and rprim issue
  • Date: Mon, 4 Jan 2010 18:35:51 +0100 (CET)
  • Importance: Normal

Dear prof. Gonze,

When I try to make all, then the previous error doesn't show, but I get


anaddb.F90:231.1:

abs(rprim(1,2))=half when brav/=1
1
Error: Unclassifiable statement at (1)
make[3]: *** [anaddb-anaddb.o] Error 1
make[3]: Leaving directory `/home/igor/test/abinit-5.8.4/src/98_main'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/igor/test/abinit-5.8.4/src'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/igor/test/abinit-5.8.4'
make: *** [all] Error 2


Could it be that there is smth wrong with this line. I notice that "half"
is nowhere defined above in the anaddb.F90 (unless it is defined in
fortran).


Igor

> Dear Igor,
>
> On 04 Jan 2010, at 13:11, ilukacevic@fizika.unios.hr wrote:
>
>> Dear prof. Gonze,
>>
>> thank You for Your suggestion. Anaddb works with it.
>>
>> If You don't mind, could You give me a deeper explanation why this
>> happens? Is
>> it a thing with a mrgddb code, which could be changed within it?
>>
> anaddb was rather restrictive.
> Actually, I just improved it. Could you try whether it works with the
> modification below
> using your non-modified DDB ?
>
> Best wishes,
> X.
>
> ----------------------------------------------------------------
> Modifications for src/98_main/anaddb.F90
>
> (1) Declare
> real(dp) :: factor
>
> (2) Insert around line 282 (between the call to rdddb9 and the call to
> mkrdim) :
>
> if(anaddb_dtset%brav/=1)then
> ! Renormalize rprim to possibly satisfy the constraint
> abs(rprim(1,2))=half when brav/=1
> if(abs(rprim(1,2))<tol6)then
> write(message, '(4a,i6,7a)' )ch10,&
> & ' anaddb : ERROR -',ch10,&
> & ' The input DDB value of brav is',anaddb_dtset%brav,',',ch10,&
> & ' and the one of rprim(1,2) is zero.',ch10,&
> & ' These are incompatible',ch10,&
> & ' Action : check the value of brav and rprim(1,2) in your DDB.'
> call wrtout(std_out,message,'COLL')
> call leave_new('COLL')
> endif
> factor=abs(rprim(1,2))*two
> acell(:)=acell(:)*factor
> rprim(:,:)=rprim(:,:)/factor
> endif
>
>
> Recompile, and test ...
>
>
>
>> Thank You!
>>
>> Igor Lukacevic
>
>





Archive powered by MHonArc 2.6.16.

Top of Page