BoringClass Module


Uses


Variables

Type Visibility Attributes Name Initial
integer(kind=int32), public :: SURFACE_SOIL = 0
integer(kind=int32), public :: CLAY_SOIL = 1
integer(kind=int32), public :: CLAY_SILT_SOIL = 2
integer(kind=int32), public :: SAND_SOIL = 3
integer(kind=int32), public :: SAND_MUDSTONE = 100
integer(kind=int32), public :: DARK_BROUN = 0
integer(kind=int32), public :: DARK_GRAY = 1

Derived Types

type, public ::  Boring_

Components

Type Visibility Attributes Name Initial
character(len=:), public, allocatable :: Project
character(len=:), public, allocatable :: Name
character(len=:), public, allocatable :: URL
real(kind=real64), public :: position(1:3) = 0.0d0
real(kind=real64), public :: TP
real(kind=real64), public :: Length
integer(kind=int32), public :: SamplingPoint = 0
real(kind=real64), public, allocatable :: Elevation(:)
real(kind=real64), public :: x = 0.0d0
real(kind=real64), public :: y = 0.0d0
real(kind=real64), public, allocatable :: Depth(:)
real(kind=real64), public, allocatable :: PTest_Depth(:)
real(kind=real64), public, allocatable :: PTest_NValue(:)
integer(kind=int32), public, allocatable :: SoilType(:)
integer(kind=int32), public, allocatable :: Color(:)

Type-Bound Procedures

procedure, public :: create => createBoring
procedure, public :: example => exampleBoring
procedure, public :: setN => setNBoring
procedure, public :: setLocation => setLocationBoring
procedure, public :: getN => getNBoring
procedure, public :: show => showBoring

Functions

public pure function getNBoring(obj, depth, elevation) result(Nval)

Arguments

Type IntentOptional Attributes Name
class(Boring_), intent(in) :: obj
real(kind=real64), intent(in), optional :: depth
real(kind=real64), intent(in), optional :: elevation

Return Value real(kind=real64)


Subroutines

public subroutine createBoring(obj, SamplingPoint)

Arguments

Type IntentOptional Attributes Name
class(Boring_), intent(inout) :: obj
integer(kind=int32), intent(in) :: SamplingPoint

public subroutine exampleBoring(obj)

Arguments

Type IntentOptional Attributes Name
class(Boring_), intent(inout) :: obj

public subroutine setNBoring(obj, depth, Nvalue)

Arguments

Type IntentOptional Attributes Name
class(Boring_), intent(inout) :: obj
real(kind=real64), intent(in) :: depth
real(kind=real64), intent(in) :: Nvalue

public subroutine showBoring(obj)

Arguments

Type IntentOptional Attributes Name
class(Boring_), intent(in) :: obj

public subroutine setLocationBoring(obj, x, y)

Arguments

Type IntentOptional Attributes Name
class(Boring_), intent(inout) :: obj
real(kind=real64), intent(in), optional :: x
real(kind=real64), intent(in), optional :: y