fct_mvsol.f90

### TABLE OF CONTENTS

- 1. PHY/USER/fct_mvsol

## PHY/USER/fct_mvsol [ Modules ]

[ Top ] [ Modules ]

NOM

     fct_mvsol(v1,v2,v3,o1,o2,o3,num)

DESCRIPTION

     Definition du mouvement impose  a un solide par son vecteur
     vitesse de translation et son vecteur vitesse angulaire
     Definition of the motion imposed on a solid by its  translational velocity vector
     and angular velocity vector

        ENTREES / INPUT
        num : numero de la fonction / function number
     on a acces au temps global tc / the global time tc is available

        SORTIES / OUTPUT
        v : vitesse de translation / translational velocity
        o : vitesse angulaire / angular velocity

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
      real(kind=kind(0.d0)), intent(out) :: v1,v2,v3 !! vitesse de translation / translational velocity
      real(kind=kind(0.d0)), intent(out) :: o1,o2,o3 !! vitesse angulaire / angular velocity
      integer, intent(in)                :: num !! numero de la fonction / Function number
    !=========================== DEBUT DU CODE EXECUTABLE ==================
        v1=0.d0
        v2=0.d0
        v3=0.d0
        o1=0.d0
        o2=0.d0
        o3=0.d0

        select case (num)

    !  Mouvement du batteur
           case(1)
             v1=-4.d-1*datan(1.d0)*sin(4.d0*datan(1.d0)*tc)

    !  Mouvement du batteur
            case(2)
              v1=-0.2d0*4.d0*datan(1.d0)*sin(4.d0*datan(1.d0)*tc)

    !  Mouvement du prisme
            case(3)
             if(tc.le.0.087d0)then  !si tps <= Ã  un nmbre Ã  dÃ©finir
                v2=-0.225d0*9.81d0*tc-0.4d0  !-mg.t+V0 avec m en kg
             else
                v2=0.d0
             endif

    !  Erreur
            case default
             call print_err('FCT_MVSOL',' Solide motion not defined!!')
              stop

        end select
    !===============   FIN DE LA ROUTINE    ====================
    END SUBROUTINE fct_mvsol