Hi Abhishek

 I think there remains to reflect the dependence of write_subs on m_dipol
 (and whatever else you added) in the Makefile.
 Try editing the Makefile by adding "m_dipol.o" to one of the lines that
 begin with "write_subs.o: ".

 Regards,

 Roberto


On Tue, 14 Aug 2012, Abhishek Asthana wrote:

Hi Bartek,
Thank you very much for your response. I included the electric dipole part
of siesta_analysis.F file in siesta_write_forces subroutine (which is a
part of write_subs.F file). I also included the "use m_dipol" statement in
the siesta_write_forces subroutine.

When I try to compile SIESTA code now, it is giving me an error: "Fatal
Error: Can't open module file 'm_dipol.mod' for reading at (1): No such
file or directory".

Did you also get an error like this?

Abhishek

On Sat, Aug 4, 2012 at 2:04 AM, Bartek Szyja <[email protected]> wrote:

Hi Abishek,

For this purpose I've done very ugly hack of copying the dipole moment
printing code into the force printing subroutine. I am fully aware that
it could be done nicely, and would be both - easy and useful, but my
experience in Fortran is non existent ;) so I need to wait for others to
do so - if anybody could make a proper patch I'd be the first one to
apply it before compilation :)

Anyway - my approach was to find the end of siesta_write_forces
subroutine (around 675-th line of write_subs.F file) and put there the
part concerning electric dipole from siesta_analysis.F file. I also had
to add the "use m_dipol" statement. that's all - crude, but worked for
me.

Cheers,
Bartek



On Fri, 2012-08-03 at 17:52 +0200, Abhishek Asthana wrote:
Hello,

I am using the SIESTA code to observe how dipole moments of various
polar organic compounds change during the course of an AIMD
simulation. For this purpose, I need to display the dipole moment at
each step. I program in fortran-77 and C, but have little experience
with fortran-95 and I?m having trouble modifying the code.



I have gotten this far: After the last MD step, the siesta.F code
calls on siesta_analysis.F, which has a few dipole related piece of
code which prints the dipole, and the siesta_analysis.F calls on
another code dhscf.F, which probably accepts and updates ?dipol?
variable. This then probably calls the dipole.F code to calculate
dipole.



I?m having trouble putting this all together and inferring how to
include this dipole moment calculation inside the main loop
in siesta.F (which calls on siesta_forces and siesta_move). Can
someone help me with this?



Thanks!

Abhishek




Responder a