[DFTB-Plus-User] TD-DFTB result differes in gcc vs ifort binaries
Ben Hourahine
benjamin.hourahine at strath.ac.uk
Wed Mar 15 18:01:41 CET 2017
Hello Krishna,
this an artefact of the degeneracy in the transitions. The total
transition strengths agree between the different compilers:
7.772 0.0000000 5 -> 6 1.000 7.772
0.0547.772 0.0000000 5 -> 6 1.000
7.772 0.712
7.772 0.0000000 5 -> 7 1.000 7.772
0.9457.772 0.0000000 5 -> 7 1.000
7.772 0.287
Summed=>
7.772 0.0000000 5 -> 6+7 1.000
7.772 0.999 7.772 0.0000000 5 -> 6+7 1.000
7.772 0.999
The individual sub-transitions may be of different intensities (and may
be between differently labelled sub levels) because its usually
arbitrary how degenerate eigenvectors are chosen within their manifold.
However, physical properties like total energies or total intensities
are invariant to the particular specific implementation of eigensolver.
Regards
Ben
On 15/03/17 15:07, Krishna Mohan G.P. via DFTB-Plus-User wrote:
>
> Dear List
>
> I was compiling the new dftb 1.3.1 version with GCC (5.4.1) and ifort
> (intel parallel_studio_xe_2016_update3).
>
> Both the binarys are OK, but for the Time Dependent DFTB calculations,
> these binaries are NOT giving consistent result (it is also true for
> the 1.3.0 version):
>
> For example, I ran NO example (as you can see in the autotest
> folder...), and both the ifort and gcc binaries give the SAME
> values for the SCC, as:
>
> >> Charges saved for restart in charges.bin
>
> Total Energy: -5.6213762107 H -152.9654 eV
> Total Mermin free energy: -5.6215518162 H -152.9702 eV
>
> But if you compare, TDDFTB files, say, EXC.DAT file, it differs!
>
> gcc EXC.DAT------------------------------------------ifort EXC.DAT
> --------------------------------------------
> w [eV] Osc.Str. Transition Weight KS
> [eV] D<S*S>w [eV] Osc.Str. Transition Weight
> KS [eV] D<S*S>
>
>
>
> 7.478 0.0020987 3 -> 7 0.578
> 8.534 1.7037.478 0.0020987 3 -> 6 0.486
> 8.534 1.703
> 7.772 0.0000000 5 -> 6 1.000
> 7.772 0.0547.772 0.0000000 5 -> 6 1.000
> 7.772 0.712
> 7.772 0.0000000 5 -> 7 1.000
> 7.772 0.9457.772 0.0000000 5 -> 7 1.000
> 7.772 0.287
> 7.793 0.0000000 5 -> 6 0.838
> 7.793 0.9997.793 0.0000000 5 -> 6 0.730
> 7.793 0.999
> 7.793 0.0000000 5 -> 7 0.838
> 7.793 0.9997.793 0.0000000 5 -> 7 0.730
> 7.793 0.999
> 8.534 0.0000000 4 -> 7 0.987
> 8.534 0.9998.534 0.0000000 4 -> 7 0.734
> 8.534 0.999
> 8.534 0.0000000 4 -> 6 0.821
> 8.534 0.9998.534 0.0000000 3 -> 7 0.690
> 8.534 0.999
> 8.534 0.0000000 3 -> 6 0.996
> 8.534 0.9998.534 0.0000000 3 -> 7 0.727
> 8.534 0.999
> 8.636 0.0000000 3 -> 6 0.623
> 8.636 0.5008.636 0.0000000 3 -> 6 0.922
> 8.636 0.963
> 8.636 0.0000000 4 -> 6 0.990
> 8.636 0.0058.636 0.0000000 4 -> 7 0.963
> 8.636 0.088
> 8.636 0.0000000 3 -> 7 0.987
> 8.636 0.9938.636 0.0000000 3 -> 6 0.749
> 8.636 0.447
> 11.652 0.4997199 3 -> 6 0.600
> 8.636 -0.23111.652 0.4997199 3 -> 7 0.633
> 8.636 -0.231
> 13.175 0.0000000 2 -> 7 0.807
> 13.175 0.99913.175 0.0000000 2 -> 7
> 0.992 13.175 0.999
> 13.175 0.0000000 2 -> 6 0.807
> 13.175 0.99913.175 0.0000000 2 -> 6
> 0.992 13.175 0.999
> 13.244 0.0000000 2 -> 6 0.973
> 13.244 0.04613.244 0.0000000 2 -> 6
> 0.884 13.244 0.995
> 13.244 0.0000000 2 -> 7 0.973
> 13.244 0.95313.244 0.0000000 2 -> 7
> 0.884 13.244 0.004
> 24.369 0.0000000 1 -> 7 1.000
> 24.369 0.99924.369 0.0000000 1 -> 6
> 1.000 24.369 0.999
> 24.369 0.0000000 1 -> 6 1.000
> 24.369 0.99924.369 0.0000000 1 -> 7
> 1.000 24.369 0.999
>
> For brevity I am NOT showing a full comparison of other files (see
> below for the attachement for SPX and TRA files generated by gcc and
> ifort binaries).
>
> I suspect that it is because of ARPACK libraries.
> In both cases I compiled ARPACK source (ofcourse with Patch for
> updating ) with GCC and IFORT (using default settings).
>
> My Linux is SuSE 13.2 32 bit; and for GCC version of binary I use
> SuSE's <lapack , atlas , f77blas , cblas , atlas > static libraries,
> and for IFORT version I use,
> libmkl_intel.a libmkl_intel_thread.a libmkl_core.a apart from the
> ARPACK .a file compiled by the ifort/gcc.
>
> My Final make shows:
>
> gfortran -fopenmp -o dftb+ dftb+.o shift.o accuracy.o common_types.o
> allocate.o geoopt.o conjgrad.o linmin.o constants.o diis.o
> diis_mixer.o lapackroutines.o lapack.o message.o stepdesc.o mainio.o
> sparse2dense.o memman.o periodic.o sort.o bisection.o linkedlist.o
> simple_algebra.o blasroutines.o blas.o fifo.o fileid.o charmanip.o
> linresp.o nonscc.o sk.o slako_cont.o slako_eq_grid.o interpolation.o
> scc.o coulomb.o error_function.o extcharge.o charge_constraints.o
> short_gamma.o linresp_grad.o qm.o taggedout.o linresp_common.o
> arpack.o eigensolver.o initprogram.o stressTensor.o rep_cont.o
> rep_poly.o rep_spline.o dummy_thermostat.o md_common.o ranlux.o
> dispersions.o disp_uff_data.o disp_slaterkirkwood.o disp_common.o
> dispersion_iface.o disp_uff.o disp_dftd3.o dftd3.o orbital_equiv.o
> nhc_thermostat.o energies.o temp_profile.o simple_mixer.o
> numericalDerivs.o thirdorder.o charges.o thermostat.o
> berendsen_thermostat.o andersen_thermostat.o spin.o broyden_mixer.o
> md_integrator.o velocity_verlet.o inputdata_.o ipisocket.o fsockets.o
> logger.o optarg.o xlbomd.o ext_lagrangian.o type_geometry.o etemp.o
> hermite.o fact.o intrinsicpr.o mixer_adt.o anderson_mixer.o scc_init.o
> dftb_pls_u.o populations.o constraints.o angmomentum.o potentials.o
> formatout.o xmlf90.o eigenvects.o parser.o stringlist.o hsdutils2.o
> hsdparser.o xmlutils.o hsdutils.o tokenreader.o unitconversion.o
> general_list.o oldcompat.o wrapped_pointers.o type_geometry_hsd.o
> old_sk_data.o densitymatrix.o pipekmezey.o repulsive.o spinorbit.o
> forces.o -L./_dir_extlib_xmlf90 -lxmlf90 -L./_dir_extlib_fsockets
> -lfsockets -L/usr/lib -llapack -L/usr/lib/atlas -lf77blas -lcblas
> -latlas libarpack_lingcc5.4.1.a -L./_dir_extlib_dftd3 -ldftd3 -lgomp
>
>
> [NOTE: lapack/blas/atlas is supplied by SUSE]
>
> ********************************************************************************
>
>
> ifort -static -o dftb+ dftb+.o shift.o accuracy.o common_types.o
> allocate.o geoopt.o conjgrad.o linmin.o constants.o diis.o
> diis_mixer.o lapackroutines.o lapack.o message.o stepdesc.o mainio.o
> sparse2dense.o memman.o periodic.o sort.o bisection.o linkedlist.o
> simple_algebra.o blasroutines.o blas.o fifo.o fileid.o charmanip.o
> linresp.o nonscc.o sk.o slako_cont.o slako_eq_grid.o interpolation.o
> scc.o coulomb.o error_function.o extcharge.o charge_constraints.o
> short_gamma.o linresp_grad.o qm.o taggedout.o linresp_common.o
> arpack.o eigensolver.o initprogram.o stressTensor.o rep_cont.o
> rep_poly.o rep_spline.o dummy_thermostat.o md_common.o ranlux.o
> dispersions.o disp_uff_data.o disp_slaterkirkwood.o disp_common.o
> dispersion_iface.o disp_uff.o disp_dftd3.o dftd3.o orbital_equiv.o
> nhc_thermostat.o energies.o temp_profile.o simple_mixer.o
> numericalDerivs.o thirdorder.o charges.o thermostat.o
> berendsen_thermostat.o andersen_thermostat.o spin.o broyden_mixer.o
> md_integrator.o velocity_verlet.o inputdata_.o ipisocket.o fsockets.o
> logger.o optarg.o xlbomd.o ext_lagrangian.o type_geometry.o etemp.o
> hermite.o fact.o intrinsicpr.o mixer_adt.o anderson_mixer.o scc_init.o
> dftb_pls_u.o populations.o constraints.o angmomentum.o potentials.o
> formatout.o xmlf90.o eigenvects.o parser.o stringlist.o hsdutils2.o
> hsdparser.o xmlutils.o hsdutils.o tokenreader.o unitconversion.o
> general_list.o oldcompat.o wrapped_pointers.o type_geometry_hsd.o
> old_sk_data.o densitymatrix.o pipekmezey.o repulsive.o spinorbit.o
> forces.o -L./_dir_extlib_xmlf90 -lxmlf90 -L./_dir_extlib_fsockets
> -lfsockets
> -L/home/krishnamohan/intel/compilers_and_libraries_2016.3.210/linux/mkl/lib/ia32_lin
> -Wl,--start-group -lmkl_intel -lmkl_intel_thread -lmkl_core
> -Wl,--end-group libarpack_linifort16.a -L./_dir_extlib_dftd3 -ldftd3
> -liomp5
>
> Also using ARPACK's example(TEST) Fortran files, I checked both of my
> GCC and IFORT ARPACK libraries and it give SAME result as one can
> expected!
>
> So I really wonder what is really happening inside the dftb's TD-DFTB
> part ?
>
> I really think that it is not the case of 32 bit machine or using
> SuSE's default ATLAS/BLAS libraries.
>
> If someone can give an information it will be very useful.
>
> With thanks in advance
>
> Dr. Krishna Mohan G P
>
> ________________________________________________________________________________
>
> dftb_in.hsd, gccEXC, gccSPX, gccTRA are saved in:
>
> https://drive.google.com/file/d/0Bxq8JRPh0W1UZlVjNm5tRkU3U00/view?usp=sharing
>
> https://drive.google.com/file/d/0Bxq8JRPh0W1UVHZQa1FCM0dMSDQ/view?usp=sharing
>
> https://drive.google.com/file/d/0Bxq8JRPh0W1UVUtfZHRnMkJsZTQ/view?usp=sharing
>
> https://drive.google.com/file/d/0Bxq8JRPh0W1UMmRVclViN0JLTDg/view?usp=sharing
>
> Also, the ifortEXC, ifortSPX and ifort TRA are saved in:
>
> https://drive.google.com/file/d/0Bxq8JRPh0W1UOEl2YUR2ZUxGWnc/view?usp=sharing
>
> https://drive.google.com/file/d/0Bxq8JRPh0W1UNWZFR2x3LU5IYWs/view?usp=sharing
>
> https://drive.google.com/file/d/0Bxq8JRPh0W1UN2VJblVPR0g5UFE/view?usp=sharing
>
> _______________________________________________________________
>
>
>
> _______________________________________________
> DFTB-Plus-User mailing list
> DFTB-Plus-User at mailman.zfn.uni-bremen.de
> https://mailman.zfn.uni-bremen.de/cgi-bin/mailman/listinfo/dftb-plus-user
--
Dr. B. Hourahine, SUPA, Department of Physics,
University of Strathclyde, John Anderson Building,
107 Rottenrow, Glasgow G4 0NG, UK.
+44 141 548 2325, benjamin.hourahine at strath.ac.uk
2013/4 THE Awards Entrepreneurial University of the Year
2012/13 THE Awards UK University of the Year
The University of Strathclyde is a charitable body,
registered in Scotland, number SC015263
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.zfn.uni-bremen.de/pipermail/dftb-plus-user/attachments/20170315/33a96b53/attachment.htm>
More information about the DFTB-Plus-User
mailing list