CP2K 2.4 (Revision 12889)

gopt_f77_methods.h

Go to the documentation of this file.
00001 !-----------------------------------------------------------------------------!
00002 !   CP2K: A general program to perform molecular dynamics simulations         !
00003 !   Copyright (C) 2000 - 2012  CP2K developers group                          !
00004 !-----------------------------------------------------------------------------!
00005 
00006 ! *****************************************************************************
00007 !> \brief evaluete the potential energy and its gradients using an array
00008 !>      with same dimension as the particle_set
00009 !> \param gopt_env the geometry optimization environment
00010 !> \param x the position where the function should be evaluated
00011 !> \param f the function value
00012 !> \param gradient the value of its gradient
00013 !> \param error variable to control error logging, stopping,...
00014 !>             see module cp_error_handling
00015 !> \par History
00016 !>      none
00017 !> \author Teodoro Laino [tlaino] - University of Zurich - 01.2008
00018 ! *****************************************************************************
00019 INTERFACE
00020 
00021   RECURSIVE SUBROUTINE cp_eval_at(gopt_env,x,f,gradient,master,&
00022                                   final_evaluation,para_env,error)
00023 
00024     USE cp_para_types,                   ONLY: cp_para_env_type
00025     USE gopt_f_types,                    ONLY: gopt_f_type
00026     USE kinds,                           ONLY: dp
00027 #include "cp_common_uses.h"
00028     TYPE(gopt_f_type), POINTER               :: gopt_env
00029     REAL(KIND=dp), DIMENSION(:), POINTER     :: x
00030     REAL(KIND=dp), INTENT(out), OPTIONAL     :: f
00031     REAL(KIND=dp), DIMENSION(:), OPTIONAL, &
00032       POINTER                                :: gradient
00033     INTEGER, INTENT(IN)                      :: master
00034     LOGICAL, INTENT(IN), OPTIONAL            :: final_evaluation
00035     TYPE(cp_para_env_type), POINTER          :: para_env
00036     TYPE(cp_error_type), INTENT(INOUT)       :: error
00037 
00038   END SUBROUTINE cp_eval_at
00039 
00040 END INTERFACE