geo_affiche.f90

### TABLE OF CONTENTS

- 1. GEO/waffiche
- 2. GEO/solideaffiche
- 3. GEO/pointaffiche
- 4. GEO/meshaffiche
- 5. GEO/list_i_affiche
- 6. GEO/faceaffiche
- 7. GEO/cellaffiche
- 8. GEO/blocaffiche

## GEO/blocaffiche [ Modules ]

[ Top ] [ Modules ]

NOM

     blocaffiche(b)

DESCRIPTION

     Affichage d un objet bloc

     Displaying a block object

        ENTREES / INPUT
        b : objet de type bloc / block

        SORTIES / OUTPUT
        b : objet de type bloc / block

        l : objet de type liste d entier / integer list object!    SOURCE
     Ce logiciel est regi par la licence [CeCILL-B]
     This software is governed by the [CeCILL-B] license

## GEO/cellaffiche [ Modules ]

[ Top ] [ Modules ]

NOM

     cellaffiche(c)

DESCRIPTION

     Affichage d un objet cellule

     Displaying a cell object
        ENTREES / INPUT
        c : objet de type cellule / cell object

        SORTIES / OUTPUT
        c : objet de type cellule / cell object

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 geo_typ
      use geo, only: display
      IMPLICIT NONE
    !.2-----  Declaration
      type(cell) ,intent(in) :: c !! Cellule / Cell
    !=========================== DEBUT DU CODE EXECUTABLE ==================
    ! Initialisations
      write(*,1010) c%num,c%numloc
      write(*,1011) c%idom,c%vol,c%center%x,c%center%y,c%center%z,c%h
    1010  format(' **** Cell',2i10,' *******')
    1011  format(' Belonging to the domain',i4,' of volume',e13.5,' of center',3e13.5,' of radius',e13.5)
      write(*,'(10e13.5)')c%balance%v
        call display(c%w)
    !===========================   FIN DE LA ROUTINE    ====================
      END SUBROUTINE cellaffiche

## GEO/faceaffiche [ Modules ]

[ Top ] [ Modules ]

NOM

     faceaffiche(e)

DESCRIPTION

     Affichage d un objet face

     Displaying a face object
        ENTREES / INPUT
        e : objet de type face / face object

        SORTIES / OUTPUT
        e : objet de type face / face object

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 geo_typ
      IMPLICIT NONE
    !.2-----  Declaration
      type(face) ,intent(in) :: e !! Face
      integer ii
    !=========================== DEBUT DU CODE EXECUTABLE ==================
    ! Initialisations

      write(*,1001) e%surf
      write(*,1003) e%vnorm%v(1),e%vnorm%v(2),e%vnorm%v(3)
      write(*,1002) e%center%x,e%center%y,e%center%z
      write(*,1004) e%ic1,e%ic2
      write(*,1005) (e%vertex(ii),ii=1,e%nbvertex)
    1001  format('Face area          : ',e13.5)
    1002  format('Face center        : ',3e13.5)
    1003  format('Normal vector      : ',3e13.5)
    1004  format('Adjacent cells     : ',2i7)
    1005  format('Vertexes           : ',10i7)
    !
    !===========================   FIN DE LA ROUTINE    ====================
     END SUBROUTINE faceaffiche

## GEO/list_i_affiche [ Modules ]

[ Top ] [ Modules ]

NOM

     list_i_affiche(L)

DESCRIPTION

     Affichage d un objet liste d entier

     Displaying a integer list object

        ENTREES / INPUT
        l : objet de type liste d entier / integer list object

        SORTIES / OUTPUT
        l : objet de type liste d entier / integer list object

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 geo_typ
      IMPLICIT NONE
    !.2-----  Declaration
      type(list_int),intent(in) :: L !! Liste d entiers / Integer list
    !=========================== DEBUT DU CODE EXECUTABLE ==================
      IF (associated(L%L)) THEN
          write(*,'(12i6)') L%L
      ELSE
          write(*,*) 'empty list'
      END IF
    !===========================   FIN DE LA ROUTINE    ====================
     END SUBROUTINE list_i_affiche

## GEO/meshaffiche [ Modules ]

[ Top ] [ Modules ]

NOM

     meshaffiche(m)

DESCRIPTION

     Affichage d un objet maillage

     Displaying a mesh object
        ENTREES / INPUT
        m : objet de type maillage / mesh object

        SORTIES / OUTPUT
        m : objet de type maillage / mesh object

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 geo_typ
      use geo, only: display
      IMPLICIT NONE
    !.2-----  Declaration
      type(mesh) ,intent(in) :: m !!Maillage / Mesh
      integer                :: i
    !=========================== DEBUT DU CODE EXECUTABLE ==================
    ! Initialisations
      write(*,*)
      write(*,*) '====================================='
      write(*,*) 'DOMAIN NUMBER      : ',m%numdom
      write(*,*) 'Number of domains  : ',m%nb_dom
      write(*,*) 'Number of cells    : ',m%nb_cell
      write(*,*) 'Number of faces    : ',m%nb_face
      write(*,*) 'Number of vertexes : ',m%nb_vertex
      write(*,*) 'exchange list'
      IF (associated(m%list_send)) THEN
          DO i=1,m%nb_dom
              write(*,*) 'domain:',i
              write(*,*) 'cells to send (global number):'
              IF (associated(m%list_send(i)%L)) THEN
                  write(*,*) m%list_cell(m%list_send(i)%L)%num
                  write(*,*)
              ELSE
                  write(*,*) 'empty list'
              END IF
          END DO
      ELSE
          write(*,*) 'table not build'
      END IF

      IF (associated(m%list_recv)) THEN
          DO i=1,m%nb_dom
              write(*,*) 'domain:',i
              write(*,*) 'cells to recieve (global number):'
              IF (associated(m%list_recv(i)%L)) THEN
                  write(*,*) m%list_cell(m%list_recv(i)%L)%num
                  write(*,*)
              ELSE
                  write(*,*) 'empty list'
              END IF
          END DO
      ELSE
         write(*,*) 'table not build'
      END IF

      write(*,*)
      write(*,*) 'List of vertexes'
      DO i=1,m%nb_vertex
          call display(m%list_vertex(i))
      END DO
          write(*,*)
          write(*,*) 'List of faces'
      DO i=1,m%nb_face
          write(*,*) 'Face number:',i
          CALL display(m%list_face(i))
          write(*,*)
      END DO
          write(*,*)
          write(*,*) 'List of Cells'
      DO i=1,m%nb_cell
          CALL display(m%list_cell(i))
          write(*,*)
      END DO
    !===========================   FIN DE LA ROUTINE    ====================
     END SUBROUTINE MSHAFFICHE

## GEO/pointaffiche [ Modules ]

[ Top ] [ Modules ]

NOM

     pointaffiche(p)

DESCRIPTION

     Affichage d un objet point

     Displaying a point object
        ENTREES / INPUT
        p : objet de type point / point object

        SORTIES / OUTPUT
        p : objet de type point / point object

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 geo_typ
      IMPLICIT NONE
    !.2-----  Declaration
      type(point) ,intent(in) :: p !! Point
    !=========================== DEBUT DU CODE EXECUTABLE ==================
      write(*,'(3e15.8)') p%x,p%y,p%z
    !===========================   FIN DE LA ROUTINE    ====================
     END SUBROUTINE pointaffiche

## GEO/solideaffiche [ Modules ]

[ Top ] [ Modules ]

NOM

     solideaffiche(s)

DESCRIPTION

     Affichage d un objet solide
     Displaying a solide object

        ENTREES / INPUT
        s : objet de type solide / solide object

        SORTIES / OUTPUT
        s : objet de type solide / solide object

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 geo_typ
      IMPLICIT NONE
    !.2-----  Declaration
      type(solide),intent(in) :: s !! solide
    !=========================== DEBUT DU CODE EXECUTABLE ==================
      write(*,*)'Solide', s%id, ' *********************************************'
      write(*,*)'bounding box                  :',s%xmin_s,s%xmax_s,s%ymin_s,s%ymax_s,s%zmin_s,s%zmax_s
      write(*,*)'density                       :',s%rho
      write(*,*)' center of gravity            :',s%xg
      write(*,*)' rotation                     :', s%theta
      write(*,*)'Number of internal cells      :',s%nb_cell
    !  write(*,'(10i9)')s%list_cells
      write(*,*)'Number of vertexes            :',s%nb_vert
      write(*,'(3e13.5)')s%list_vertex
      write(*,*)'Numbers of faces              :',s%nb_face
      write(*,'(3i9)')s%list_facette
    !===========================   FIN DE LA ROUTINE    ====================
    END SUBROUTINE solideaffiche

## GEO/waffiche [ Modules ]

[ Top ] [ Modules ]

NOM

     waffiche(w)

DESCRIPTION

     Affichage des variables d etat

     Displaying state variables

        ENTREES / INPUT
     w    : objet de type "state" / object of type "state"

        SORTIES / OUTPUT
     w    : objet de type "state" / object of type "state"

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 phy_typ
      IMPLICIT NONE
    !.2-----  Declaration
      type(state),intent(in) :: w !! variable d etat / State variables
      integer                :: i
    !=========================== DEBUT DU CODE EXECUTABLE ==================
    !
      write(*,'(10e12.5)')(w%vprim%v(i),i=1,nvar)
      write(*,'(10e12.5)')(w%vbal%v(i),i=1,nvar)
      write(*,'(10e12.5)')(w%gprim(1)%v(i),i=1,nvar)
      write(*,'(10e12.5)')(w%gprim(2)%v(i),i=1,nvar)
      write(*,'(10e12.5)')(w%gprim(3)%v(i),i=1,nvar)
      write(*,'(10e12.5)')w%enti,w%entf,w%pe,w%chi
    !===========================   FIN DE LA ROUTINE    ====================
     END SUBROUTINE waffiche