output_fields Subroutine

private subroutine output_fields(self, file_counts, domain, porosity, temperature, si, pressure, water_flux)

Type Bound

type_output

Arguments

Type IntentOptional Attributes Name
class(type_output), intent(inout) :: self
integer(kind=int32), intent(in) :: file_counts
type(type_domain), intent(in) :: domain
real(kind=real64), intent(in), optional :: porosity(:)
real(kind=real64), intent(in), optional :: temperature(:)
real(kind=real64), intent(in), optional :: si(:)
real(kind=real64), intent(in), optional :: pressure(:)
type(type_dp_3d), intent(in), optional :: water_flux

Source Code

    subroutine output_fields(self, file_counts, domain, porosity, temperature, si, pressure, water_flux)
        implicit none
        class(type_output), intent(inout) :: self
        integer(int32), intent(in) :: file_counts
        type(type_domain), intent(in) :: domain
        real(real64), intent(in), optional :: porosity(:)
        real(real64), intent(in), optional :: temperature(:)
        real(real64), intent(in), optional :: si(:)
        real(real64), intent(in), optional :: pressure(:)
        type(type_dp_3d), intent(in), optional :: water_flux

        if (self%is_thermal .and. self%is_hydraulic) then
            call self%overall%write_fields(file_counts=file_counts, &
                                           domain=domain, &
                                           porosity=porosity, &
                                           temperature=temperature, &
                                           si=si, &
                                           pressure=pressure, &
                                           water_flux=water_flux)
        else if (self%is_thermal) then
            call self%overall%write_fields(file_counts=file_counts, &
                                           domain=domain, &
                                           porosity=porosity, &
                                           temperature=temperature, &
                                           si=si)
        else if (self%is_hydraulic) then
            call self%overall%write_fields(file_counts=file_counts, &
                                           domain=domain, &
                                           porosity=porosity, &
                                           pressure=pressure, &
                                           water_flux=water_flux)
        end if

    end subroutine output_fields