links_FSlink_update Subroutine

public subroutine links_FSlink_update(me, dt)

Arguments

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

Called by

proc~~links_fslink_update~~CalledByGraph proc~links_fslink_update links_FSlink_update proc~main_loop main_loop proc~main_loop->proc~links_fslink_update program~reims_p reims_p program~reims_p->proc~main_loop

Source Code

subroutine links_FSlink_update(me,dt)
    type(FSlink_t), intent(inout) :: me
    real(dp), intent(in) :: dt

    integer :: i, ii
    real(dp) :: VarcentS

    do i = 1, me%sizeNodes

      if(me%lk(2,i)%p%typeS==trim("mesh2D")) then
        do ii=1,me%nb_2D_Ports(i)
          me%MatrixPS_2D(1,ii,i)=-dt*me%DerSrcP_SedT2D(ii,i)
          me%MatrixPS_2D(2,ii,i)=-dt*me%DerSrcP_SrdT2D(ii,i)
  
          VarcentS=1.0_dp/(me%lk(1+ii,i)%p%rhoS*me%lk(1+ii,i)%p%cpS)
          me%MatrixSP_2D(:,ii,i) = dt/me%lk(1+ii,i)%p%SurfS*VarcentS*me%derFlx2DdUi(:,ii,i)       
        enddo

      else

        me%MatrixPS(1,i)=-dt*me%DerSrcP_SedT(i)
        me%MatrixPS(2,i)=-dt*me%DerSrcP_SrdT(i)
        
        me%MatrixSP(:,i)=-dt*me%DerSrcSdUi(:,i)
      endif
    enddo

end subroutine links_FSlink_update