[Wien] vec2old_lapw

davgumo davgumo at me.com
Sun Mar 6 18:44:06 CET 2011


Dr. Blaha and other Wien users,

I had the same problem described before, and then I tried the new vec2old_lapw executable that you provided. I tried the simple case of GaAs and it ran well but within the SCF cycle every time it finishes LAPW0 and vec2old_lapw is called it shows the following.

[radi at localhost gaas]$ tail -f STDOUT
 LAPW0 END
'nknown option: `-
Usage: tcsh [ -bcdefilmnqstvVxX ] [ argument ... ].
 LAPW1 END
 LAPW1 END
LAPW2 - FERMI; weighs written
 LAPW2 END
 LAPW2 END
 SUMPARA END
 CORE  END
 MIXER END
ec cc and fc_conv 0 1 1
in cycle 2    ETEST: 0   CTEST: 0

It doesnt seem to be an error because it actually converged and I was able to calculate the DOS using x lapw2 -p -qtl -c, in which case the following message was shown:

Commandline: x lapw2 -p -qtl -c
Program input is: ""

running LAPW2 in parallel mode
calculating QTL's from parallel vectors
Unknown option: `-
'
Usage: tcsh [ -bcdefilmnqstvVxX ] [ argument ... ].
 LAPW2 END
3.148u 0.272s 0:01.26 270.6%	0+0k 0+3128io 0pf+0w

I haven't looked in detail at the file you  provided, but if you have any suggestions about how to remove this unknown option warning will be appreciated. 


thank you

David Guzman M
Department of Physics & Astronomy
California State University-Los Angeles
(310)528-4841


On Mar 07, 2011, at 07:52 AM, Peter Blaha <pblaha at theochem.tuwien.ac.at> wrote:

> Try the attached version of vec2old_lapw, which is from the next release.
>
> Make sure you execute x lapw2 -p -qtl
> on the same machines and you have again defined the SCRATCH variable.
>
>
> Am 07.03.2011 15:49, schrieb Tomohiko Tasaka:
> > Hi,
> >
> > thanks for your reply. this fail's occurred in non iterative calculation.
> > Umm, I think that vec2old within "lapw2 -p -qtl" always fails in the system which
> > has a local scratch setting(i.e. the value of SCRATCH is not "./"). because vec2old
> > only copies the vector files into the (same) scratch directory of each client node...
> >
> > * here is a invoking part of vec2old in lapw2para script:
> > 420 qtl:
> > 421 echo "calculating QTL's from parallel vectors"
> > 422 vec2old_lapw -p -local -$updn
> > 423 $exe $def.def $maxproc
> > 424 rm $tmp*>&/dev/null
> > 425 rm .lapw2${cmplx}para.$$.`hostname`>&/dev/null
> > 426 echo "DONE">.lapw2para
> > 427 exit 0
> >
> > is there anyone who ran into the same problem?
> >
> > Thanks again, with best regards,
> > Tomo
> >
> >
> > -----Original Message-----
> > From: wien-bounces at zeus.theochem.tuwien.ac.at [mailto:wien-bounces at zeus.theochem.tuwien.ac.at] On Behalf Of Laurence Marks
> > Sent: Monday, March 07, 2011 10:31 PM
> > To: A Mailing list for WIEN2k users
> > Subject: Re: [Wien] vec2old_lapw
> >
> > The vec2old_lapw script is used in a number of places in afm and
> > iterative calculations. If you want a special version just for a qtl
> > calculation I suggest that you change it to vec2old_mine and add an
> > extry in x_lapw, while retaining the original.
> >
> > I may have misunderstood -- does vec2old fail in a normal iterative
> > calculation (e.g. -it or -noHinv)?
> >
> > 2011/3/7 Tomohiko Tasaka<tasaka at affinity-science.com>:
> >> Dear All,
> >>
> >> when executing "x lapw2 -qtl -p" calculation on PC cluster
> >> system(with local SCRATCH), I encounter the following error:
> >>
> >> Error in LAPW2
> >> 'l2main' - error reading parallel vectors
> >>
> >> then, I found that it's because that vec2old_lapw script fails to copy
> >> the vector files of other machines. to deal with this problem, I modified
> >> vec2old_lapw as below(you can find attached):
> >>
> >> //-----------------------------------------------------------
> >> $ diff vec2old_lapw vec2old_lapw.orig
> >> 9d8
> >> < set remotecopy = rcp
> >> 12d10
> >> < set exechost=`hostname -f`
> >> 84c82
> >> < set status=`$remote $machines[$i] "cd $PWD;$remotecopy $SCRATCH/$file.vector${updn}_$i
> >> ${exechost}:${SCRATCH}/$file.vector${updn}_$i"`
> >> ---
> >>> set status=`$remote $machines[$i] "cd $PWD;cp $SCRATCH/$file.vector${updn}_$i
> >> $file.vector${updn}_$i"`
> >> //-----------------------------------------------------------
> >>
> >> so, what do you think about this modification?
> >> if there are any problems, incompatibilities, or better solutions, please advise.
> >>
> >> Thanks in advance for your time and consideration.
> >>
> >> With best regards,
> >> Tomohiko
> >>
> >>
> >>
> >> _______________________________________________
> >> Wien mailing list
> >> Wien at zeus.theochem.tuwien.ac.at
> >> http://zeus.theochem.tuwien.acat/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.at WWW: http://info.tuwien.ac.at/theochem/
> --------------------------------------------------------------------------
> #!/bin/tcsh -f
> #
> #moving case.vect* to *.old vector files; takes -p; -up/-dn
> #copying case.vectorup* to case.vectordn*; takes -p; -up/-dn/-updn
> #copying $SCRATCH/case.vector* to case.vector*; takes -p; -up/-dn/-updn
> #
> set useremote = 1 # using remote shell to launch processes
> set remote = ssh
> set remotecp = scp
> if($remote == rsh ) set remotecp = rcp
> set file=`pwd`
> set file=$file:t #tail of file-names
>
> set name = $0
> set bin = $name:h #default directory for WIEN-executables
> if (-e $bin/parallel_options) then
> source $bin/parallel_options
> endif
> if ( $?USE_REMOTE ) then
> set useremote = $USE_REMOTE
> endif
>
> if( "$1" == '-h' ) goto help
>
> unset para
> if( "$1" == '-p' ) then
> set para
> shift
> #set machines=`grep init .processes | cut -f2 -d: | cut -f1 -d ' ' | xargs`
> set machines=`grep " : " .processes | cut -f2 -d: | xargs`
> endif
> set copy
> set updn
> unset local
> if ( "$1" == '-local' ) then
> set local
> shift
> endif
> if ( "$1" == '-up' ) set updn=up
> if ( "$1" == '-dn' ) set updn=dn
> if ( "$1" == '-updn' ) then
> set copy=dn
> set updn=up
> endif
> if ( "$1" == '-dnup' ) then
> set copy=up
> set updn=dn
> endif
>
> set scratch=./ # set directory for vectors and help files
> if ($?SCRATCH) then #if envronment SCRATCH is set
> set scratch=`echo $SCRATCH | sed -e 's/\/$//'`/ #set $scratch to that value
> endif
> cd $scratch
> if(! $?local) then
> setenv PWD $cwd
> endif
>
> if( ! $?para ) then
> foreach i ($file.vector${updn}*)
> set i1=`echo $i |grep -v -e '\.old'`
> if ( $i1 != '' ) then
> if (! -z $i ) then
> if( $copy == '') then
> mv $i1 $i1.old
> if($status == 0 ) echo "moving $i1 to $i1.old"
> else
> set target=`echo $i1 | sed s/vector${updn}/vector${copy}/`
> cp $i1 $target
> if($status == 0 ) echo "copy $i1 to $target"
> endif
> endif
> endif
> end
> #----------------------------------------------------------
>
> else
>
> set i=1
> while ( $i <= $#machines )
> if( $copy == '') then
> if ($useremote == 1) then
> if($?local) then
> ### $remote $machines[$i] "cd $PWD;cp $SCRATCH/$file.vector${updn}_$i $file.vector${updn}_$i"
> ### if($status == 0 ) echo copying vector on $machines[$i] from $SCRATCH to $file.vector${updn}_$i
> $remotecp ${machines[$i]}:${SCRATCH}/$file.vector${updn}_$i ${SCRATCH}/$file.vector${updn}_$i
> if($status == 0 ) echo remote_copy vector from ${machines[$i]}:$SCRATCH/$file.vector${updn}_$i to local $SCRATCH
> else
> $remote $machines[$i] "cd $PWD;mv $file.vector${updn}_$i $file.vector${updn}_$i.old"
> if($status == 0 ) echo moving vector on $machines[$i] to $file.vector${updn}_$i.old
> endif
> else
> if(! $?local) then
> mv $file.vector${updn}_$i $file.vector${updn}_$i.old
> if($status == 0 ) echo moving vector to $file.vector${updn}_$i.old
> endif
> endif
> else
> set target=`echo $file.vector${updn}_$i | sed s/vector${updn}/vector${copy}/`
> if ($useremote == 1) then
> $remote $machines[$i] "cd $PWD;cp $file.vector${updn}_$i $target"
> if($status == 0 ) echo copying vector$updn on $machines[$i] to $file.vector${copy}_$i
> else
> cp $file.vector${updn}_$i $target
> if($status == 0 ) echo copying vector$updn to $target
> endif
> endif
> @ i ++
> end
> endif
>
> exit 0
> help:
> echo 'usage: vec2old_lapw [-h -p -local/-up/-dn/-updn ] '
> echo 'vec2old moves case.vect* to *.old; takes -p (using .processes); -up/-dn'
> echo 'vec2old -updn copies case.vectorup* to case.vectordn*; takes -p as first parameter;'
> echo 'vec2old -p -local [-up/-dn] copies $SCRATCH/case.vector* to case.vector*; requires -p, takes -up/-dn;'
> echo '-p uses .processes file, requires commensurate k-points/proc-number'
> exit 1
> _______________________________________________
> Wien mailing list
> Wien at zeus.theochem.tuwien.ac.at
> http://zeus.theochem.tuwienac.at/mailman/listinfo/wien
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://zeus.theochem.tuwien.ac.at/pipermail/wien/attachments/20110306/72c72356/attachment.htm>


More information about the Wien mailing list