[Wannier] Wannier90 for OpenVMS
Giovanni Pizzi
giovanni.pizzi at epfl.ch
Thu Apr 26 13:40:47 CEST 2012
Dear Jouk,
thanks for the comments.
I just answer for what concerns the strings in src/plot.F90.
First a question: on OpenVMS, instead of defining the len_ctemp array
and using
// ctemp(1)( 1:len_ctemp( 1 ) ) //
would also the following work?
// trim(ctemp(1)) //
And regarding the \0: it is actually intended to print a slash followed
by a zero digit (this is a code which is then interpreted by xmgrace
when it reads the output file; the same applies to the \x string, which
switches - in xmgrace - to greek fonts).
Regards,
Giovanni Pizzi
On 04/26/2012 10:54 AM, Jouk Jansen wrote:
> Hi all,
>
> I created a port of WANNIER90 for OpenVMS. Doing this I stumpbled on a
> coding error (see below). Info on the port can be found at:
> http://nchrem.tnw.tudelft.nl/openvms/software2.html#WANNIER
>
> The patch file contains files of the following kinds:
> descrip.mms : These are the OpenVMS variants of the makefiles
> src/*.F90 : Changed some compiler directions (aliasses) to get the
> right LAPACK routines linked in.
> src/plot.F90 : In fortan when concatenating a string always the whole length
> specified is used regardless the contents (not like C where
> the character-0 terminates the string) Therfore some
> concatenations were meaningless because the righthandside
> of the equal sign conactenated something at a location
> larger than the string at the lefthand-side.
> I changed the code slightly to overcome the problem (marked
> with #ifdef VMS ... #endif)
> src/getarg.F90
> src/iargc.F90 : Added OpenVMS-code for these non-standard functions
> tests/*vms.pl : OpenVMS variant of the perl-script. Corrects for the fact
> that filesyntax for OpenVMS is different.
>
>
> Please feel free to include these changes into the next version of WANNIER90
>
> Regards
> Jouk
>
>
> P.S.
>
> I noticed in src/Plot.F90 strings containing "\0" . Is it realy menat to
> contain "\0" or is this C-like code meant to include the 0 character? If it
> is the latter, note that this is not garanteed to work for Fortran (i.e. it does
> not on OpenVMS). the standard way to do this is the use of char(0). The same
> hold for all other "special" characters.
>
> JJ
>
>
> Pax, vel iniusta, utilior est quam iustissimum bellum.
> (free after Marcus Tullius Cicero (106 b.Chr.-46 b.Chr.)
> Epistularum ad Atticum 7.1.4.3)
>
>> ------------------------------------------------------------------------------<
> Jouk Jansen
>
> joukj at hrem.nano.tudelft.nl
>
> Technische Universiteit Delft tttttttttt uu uu ddddddd
> Kavli Institute of Nanoscience tttttttttt uu uu dd dd
> Nationaal centrum voor HREM tt uu uu dd dd
> Lorentzweg 1 tt uu uu dd dd
> 2628 CJ Delft tt uu uu dd dd
> Nederland tt uu uu dd dd
> tel. 31-15-2782272 tt uuuuuuu ddddddd
>
>> ------------------------------------------------------------------------------<
> _______________________________________________
> Wannier mailing list
> Wannier at quantum-espresso.org
> http://www.democritos.it/mailman/listinfo/wannier
--
Giovanni Pizzi
Post-doctoral Research Scientist
EPFL STI IMX THEOS
MXC 319 (Bâtiment MXC)
Station 12
CH-1015 Lausanne (Switzerland)
Phone: +41 21 69 31159
More information about the Wannier
mailing list