explicit_scheme_for_fluxes_channel Subroutine

public subroutine explicit_scheme_for_fluxes_channel(me, dt)

Arguments

Type IntentOptional Attributes Name
type(channel_t), intent(inout) :: me
real(kind=dp), intent(in) :: dt

Called by

proc~~explicit_scheme_for_fluxes_channel~~CalledByGraph proc~explicit_scheme_for_fluxes_channel explicit_scheme_for_fluxes_channel proc~main_loop main_loop proc~main_loop->proc~explicit_scheme_for_fluxes_channel program~reims_p reims_p program~reims_p->proc~main_loop

Source Code

subroutine explicit_scheme_for_fluxes_channel(me,dt)          
    type(channel_t), intent(inout) :: me
    real(dp),     intent(in)    :: dt
    
    real(dp) :: Varcentree, VitL, VitR
    real(dp) :: FluxL(Nb_VarC), FluxR(Nb_VarC)
    integer :: i

    do i=1,me%HeProp%NbCells
        Varcentree=0.0_dp
        if(R_Correction) Varcentree=me%StVar%He_pr(Pri_ro,i)*(me%StVar%He_pr(Pri_c,i)**2)

        FluxL(:)=me%flxHe%Cons(:,i-1)
        VitL=me%flxHe%VitTNC(i-1)
        FluxR(:)=me%flxHe%Cons(:,i)
        VitR=me%flxHe%VitTNC(i)

        me%StVar%He_cs(:,i)=me%StVar%He_cs(:,i)-(dt/me%HeProp%dxloc(i))*(FluxR(:)-FluxL(:))
        me%StVar%He_cs(Con_R,i)=me%StVar%He_cs(Con_R,i)-(dt/me%HeProp%dxloc(i))*Varcentree*(VitR-VitL)
    enddo
     
end subroutine explicit_scheme_for_fluxes_channel