subroutine inimufi(ptimestep) use callkeys_mod, only : call_haze_prod_pCH4, haze_p_prod, haze_tx_prod, haze_rc_prod, haze_rm, haze_df, haze_rho, air_rad use tracer_h use comcstfi_mod, only : g, rad, mugaz use datafile_mod ! Microphysical model MP2M use mp2m_intgcm implicit none !============================================================================ ! ! Purpose ! ------- ! This routine call mm_initialize which perform the global initialization ! for the microphysical YAMMS model. ! It also performs some sanity checks on microphysical tracer names. ! ! Authors ! ------- ! B. de Batz de Trenquelléon (11/2024) ! !============================================================================ !---------------- ! 0. Declarations !---------------- integer :: i,idx real, intent(in) :: ptimestep ! Timestep (s) character(len=30), dimension(4), parameter :: aernames = & (/"mu_m0as ", "mu_m3as ", & "mu_m0af ", "mu_m3af "/) logical :: err !-------------------------- ! 1. Check names of tracers !-------------------------- err = .false. DO i=1,size(aernames) idx = indexOfTracer(TRIM(aernames(i)),.false.) IF (idx <= 0) THEN WRITE(*,*) "inimufi: '"//TRIM(aernames(i))//"' not found in tracers table." err = .true. ENDIF ENDDO IF (err) THEN WRITE(*,*) "You loose in inimufi.F90.... Try again" STOP ENDIF !-------------------------------------------------- ! 2. Call microphysical model global initialization !-------------------------------------------------- ! /!\ mugaz [g/mol] --> [kg/mol] !! call mm_initialize(ptimestep,call_haze_prod_pCH4,haze_p_prod,haze_tx_prod,haze_rc_prod, & haze_rm,haze_df,haze_rho,rad,g,air_rad,mugaz*1e-3, & config_mufi) end subroutine inimufi