anchor.diff:      state_0%M_dot = para%Mdot
       state_0%P_rad = 1.0/3.0 * a * (state_0%T **4)
       state_0%P_gaz = state_0%rho * kmp * state_0%T / mu
  -  
     end subroutine init_variable_0
     
   end module mod_variables
  
positive.code: ! Module that computes the variables
  module mod_variables 
    use mod_constants
    use mod_read_parameters
    implicit none 
  
    private
  
    public :: compute_variables, dim_adim
    
  contains
    
    subroutine compute_variables (T, Sigma, state_out)
      implicit none
      real (kind = x_precision), dimension(:) :: T, Sigma
      type (state), intent(in), dimension(:)  :: state_out
      
    end subroutine compute_variables
  
    subroutine dim_adim(mode,state_0,state_in)
      implicit none
      !select 0 or 1 to adimension or dimension your state 
      integer         , intent(in)                 :: mode
  
negative.code:        state_in%P_rad = state_in%P_rad * state_0%P_rad
         state_in%P_gaz = state_in%P_gaz * state_0%P_gaz
      case default
         ! write(*,*)'Enter 0 to adim and 1 to dim'
         stop
      end select
    end subroutine dim_adim
   !--------------------------------------------------------------
    subroutine init_variable_0(state_0)
      use mod_constants
      use mod_read_parameters
      !Compute the initial adimention parameters
      real(kind = x_precision)         :: omega_max
      real(kind = x_precision)         :: rs
  