measure_main.F90

Path: MeasureClass/BK/measure_main.F90
Last Update: Sun Feb 06 12:29:58 +0900 2011
comlib lattice_class error_class file_tools_class field_gauge_class hmc_status_class hmc_gluon_class meson_class hmc_identity print_status_class logfile_class measure_class dot/f_73.png

This file provides the following module.

Required files

Methods

Included Modules

lattice_class error_class file_tools_class hmc_status_class field_gauge_class measure_class meson_class

Public Instance methods

Main Program :

[Source]

program measure_main
  use lattice_class
  use error_class
  use file_tools_class
  use hmc_status_class
  use field_gauge_class
  use measure_class
  use meson_class
  implicit none
  type(lattice_world) :: lattice
  type(hmc_status) :: status
  type(vfield_gluon_wg) :: u
  type(meson_prop) :: meson
  character(CHARLEN) :: fname,str,path,head
  logical :: flag
  integer :: iargs,iout

  call new(lattice)

  iargs = COMMAND_ARGUMENT_COUNT()
  if (iargs == 1) then
    call GET_COMMAND_ARGUMENT(1,fname)
  else
    call error_stop("Usage: measuremt_main Inputfile")
  endif

  call new(status)

  iout = search_free_file_unit()
  if (0==nodeid) then
    open(iout,file=TRIM(fname),status='old',form='formatted')
    read(iout,'(A)') str ! comment
    read(iout,'(A)') path 
    read(iout,'(A)') head
    read(iout,'(A)') str ! comment
  endif
  
  call read(status,iout)
  if (0==nodeid) close(iout)

  do
    flag = is_do_loop_ended(status)
    if (flag) exit
    call new(u)
    call load_config(path,head,status,u)

    ! type = 1 for wilson quarks
    ! type = 2 for overlap quarks
    call new(meson,1,status)
    call get(meson,u)
    call print(meson)
    call delete(meson)
  enddo

  call delete(status)
  call delete(lattice)

  stop
end program