LCOV - code coverage report
Current view: top level - src/78_effpot - m_lwf_dummy_mover.F90 (source / functions) Coverage Total Hit
Test: coverage.info Lines: 0.0 % 10 0
Test Date: 2026-09-20 15:27:41 Functions: 0.0 % 2 0

            Line data    Source code
       1              : !!****m* ABINIT/m_lwf_dummy_mover
       2              : !! NAME
       3              : !! m_lwf_dummy_mover
       4              : !!
       5              : !! FUNCTION
       6              : !! This module contains the lwf Markov chain Monte Carlo functions for lwf mover .
       7              : !!
       8              : !!
       9              : !! Datatypes:
      10              : !!
      11              : !! * lwf_dummy_mover_t : This mover does not move lwf, instead, it allow the lwf
      12              : !!  to be moved by the potential. It is used to monitor the move of lwf when the lattice mover
      13              : !!  is actually used.
      14              : !!
      15              : !! Subroutines:
      16              : !! TODO: add this when F2003 doc style is determined.
      17              : !!
      18              : !!
      19              : !! COPYRIGHT
      20              : !! Copyright (C) 2001-2026 ABINIT group (hexu)
      21              : !! This file is distributed under the terms of the
      22              : !! GNU General Public License, see ~abinit/COPYING
      23              : !! or http://www.gnu.org/copyleft/gpl.txt .
      24              : !! For the initials of contributors, see ~abinit/doc/developers/contributors.txt .
      25              : !!
      26              : !! SOURCE
      27              : 
      28              : #if defined HAVE_CONFIG_H
      29              : #include "config.h"
      30              : #endif
      31              : #include "abi_common.h"
      32              :     module m_lwf_dummy_mover
      33              :     use defs_basis
      34              :     use m_abicore
      35              :     use m_errors
      36              :     use m_abstract_potential, only: abstract_potential_t
      37              :     use m_random_xoroshiro128plus, only: rng_t
      38              :     use m_hashtable_strval, only: hash_table_t
      39              :     use m_multibinit_dataset, only: multibinit_dtset_type
      40              :     use m_lwf_mover, only: lwf_mover_t
      41              :     use m_multibinit_cell, only: mbcell_t, mbsupercell_t
      42              :     implicit none
      43              : !!***
      44              :     private
      45              :     !----------------------------------------------------------------------
      46              :     !> @brief An dummy mover for lwf
      47              :     !----------------------------------------------------------------------
      48              :     type,public, extends(lwf_mover_t) :: lwf_dummy_mover_t
      49              :      contains
      50              :        procedure  :: run_one_step
      51              :     end type lwf_dummy_mover_t
      52              :   contains
      53              : 
      54              : 
      55              :   !-------------------------------------------------------------------!
      56              :   !> @brief: Run_one_step
      57              :   !>   effpot: the potential (which do the calculation of E and dE/dvar)
      58              :   !> param[in]: effpot
      59              :   !> param[in]: (optional) displacement
      60              :   !> param[in]: (optional) strain
      61              :   !> param[in]: (optional) spin
      62              :   !> param[in]: (optional) lwf
      63              :   ! NOTE: No need to pass the variable already saved in the mover.
      64              :   !     e.g. For spin mover, do NOT pass the spin to it.
      65              :   !    The other variables are only required if there is coupling with
      66              :   !    the mover variable.
      67              :   !-------------------------------------------------------------------!
      68            0 :   subroutine run_one_step(self, effpot, displacement, strain, spin, lwf,  energy_table)
      69              :     class(lwf_dummy_mover_t), intent(inout) :: self
      70              :     real(dp), optional, intent(inout) :: displacement(:,:), strain(:,:), spin(:,:), lwf(:)
      71              :     type(hash_table_t), optional, intent(inout) :: energy_table
      72              :     class(abstract_potential_t), intent(inout) :: effpot
      73            0 :     ABI_UNUSED_A(self)
      74            0 :     ABI_UNUSED_A(effpot)
      75            0 :     ABI_UNUSED_A(displacement)
      76            0 :     ABI_UNUSED_A(strain)
      77            0 :     ABI_UNUSED_A(spin)
      78            0 :     ABI_UNUSED_A(lwf)
      79            0 :     ABI_UNUSED_A(energy_table)
      80            0 :   end subroutine run_one_step
      81            0 : end module m_lwf_dummy_mover
        

Generated by: LCOV version 2.3-1