Class w_integral_module
In: src/w_integral_module.f90

Methods

Included Modules

w_base_module

Public Instance methods

AvrLonLat_xy :real(8)
: 平均値
xy_data(im,jm) :real(8), intent(in)
: 格子点(im,jm)

————— 平均計算 ——————

[Source]

    function AvrLonLat_xy(xy_data)        ! 緯度経度平均
      real(8), intent(in)   :: xy_data(im,jm)        ! 格子点(im,jm)
      real(8) :: AvrLonLat_xy                        ! 平均値

      AvrLonLat_xy = AvrLon_x(x_AvrLat_xy(xy_data))
    end function AvrLonLat_xy
IntLonLat_xy :real(8)
: 積分値
xy_data(im,jm) :real(8), intent(in)
: 格子点(im,jm)

————— 積分計算 ——————

[Source]

    function IntLonLat_xy(xy_data)        ! 緯度経度積分
      real(8), intent(in)   :: xy_data(im,jm)         ! 格子点(im,jm)
      real(8) :: IntLonLat_xy                         ! 積分値

      IntLonLat_xy = IntLon_x(x_IntLat_xy(xy_data))
    end function IntLonLat_xy
x_AvrLat_xy(im) :real(8)
: 格子点(im)
xy_data(im,jm) :real(8), intent(in)
: 格子点(im,jm)

————— 平均計算 ——————

[Source]



    function x_AvrLat_xy(xy_data)          ! 緯度平均
      real(8), intent(in) :: xy_data(im,jm)          ! 格子点(im,jm)
      real(8)             :: x_AvrLat_xy(im)         ! 格子点(im)

      x_AvrLat_xy = x_IntLat_xy(xy_data)/sum(y_Lat_weight)

    end function x_AvrLat_xy
x_IntLat_xy(im) :real(8)
: 格子点(im)
xy_data(im,jm) :real(8), intent(in)
: 格子点(im,jm)

————— 積分計算 ——————

[Source]



    function x_IntLat_xy(xy_data)          ! 緯度積分
      real(8), intent(in) :: xy_data(im,jm)           ! 格子点(im,jm)
      real(8)             :: x_IntLat_xy(im)          ! 格子点(im)
      integer :: j

      x_IntLat_xy = 0
      do j=1,jm
         x_IntLat_xy = x_IntLat_xy + xy_data(:,j) * y_Lat_weight(j)
      enddo

    end function x_IntLat_xy
y_AvrLon_xy(jm) :real(8)
: 格子点(jm)
xy_data(im,jm) :real(8), intent(in)
: 格子点(im,jm)

————— 平均計算 ——————

[Source]



    function y_AvrLon_xy(xy_data)          ! 経度平均
      real(8), intent(in) :: xy_data(im,jm)          ! 格子点(im,jm)
      real(8)             :: y_AvrLon_xy(jm)         ! 格子点(jm)

      y_AvrLon_xy = y_IntLon_xy(xy_data)/sum(x_Lon_weight)

    end function y_AvrLon_xy
y_IntLon_xy(jm) :real(8)
: 格子点(jm)
xy_data(im,jm) :real(8), intent(in)
: 格子点(im,jm)

————— 積分計算 ——————

[Source]



    function y_IntLon_xy(xy_data)          ! 経度積分
      real(8), intent(in) :: xy_data(im,jm)            ! 格子点(im,jm)
      real(8)             :: y_IntLon_xy(jm)           ! 格子点(jm)
      integer :: i

      y_IntLon_xy = 0
      do i=1,im
         y_IntLon_xy = y_IntLon_xy + xy_data(i,:) * x_Lon_weight(i)
      enddo

    end function y_IntLon_xy

[Validate]