calc_source.f90

### TABLE OF CONTENTS

- 1. NUM/calc_source

## NUM/calc_source [ Modules ]

[ Top ] [ Modules ]

NOM

       calc_source(calc,lev)

DESCRIPTION

     Calcul des termes sources sur les cellules
     Calculation of source terms on cells

        ENTREES / INPUT
       calc : objet calcul / Calcul object
       lev : niveau maximal de raffinement a considerer / maximum level of refinement to be considered
        SORTIES / OUTPUT
       calc : objet calcul avec les termes sources mis a jour / Calcul object with updated source terms
       lev : niveau maximal de raffinement a considerer / maximum level of refinement to be considered

SOURCE

    ! Ce logiciel est regi par la licence [CeCILL-B]
    ! This software is governed by the [CeCILL-B] license
    !=========================== DEBUT DES DECLARATIONS ====================
    !.1-----  Implicit, Use
      use num_typ
      IMPLICIT NONE
    !.2-----  Declaration
      type(calcul),intent(inout) :: calc !! Objet calcul / Calcul object
      integer, intent(inout)     :: lev  !! niveau maximal de raffinement a considerer / maximum level of refinement to be considered

      integer                    :: ic
      real(kind=kind(0.d0))      :: vol
      type(vect_nvar)            :: sloc
    !=========================== DEBUT DU CODE EXECUTABLE ==================
    ! calcul des termes sources (physiques et ordre 2 non conservatif)

      DO ic=1,calc%msh%nb_cell
          IF (calc%msh%list_cell(ic)%clevel.le.lev) THEN
              IF (calc%msh%list_cell(ic)%idom.eq.calc%msh%numdom) THEN
                  CALL sources(calc%msh%list_cell(ic)%w,sloc,calc%iordre_e)
                  vol=calc%msh%list_cell(ic)%vol
                  calc%msh%list_cell(ic)%balance%v=calc%msh%list_cell(ic)%balance%v+vol*sloc%v
              END IF
          END IF

      END DO
    !===========================   FIN DE LA ROUTINE    ====================
    END SUBROUTINE calc_source