  
 MODULE mod_chem_spack_dratedc
  
   IMPLICIT NONE
   PRIVATE
   PUBLIC :: dratedc ! subroutine
 CONTAINS
  
   SUBROUTINE dratedc(rk,y,dw,ngas,ijkbeg,ijkend,maxblock_size,nr)
 
!------------------------------------------------------------------------
!
!     -- DESCRIPTION
!
!     This routine computes the derivative of reaction  rates.
!     This routine is automatically generated by SPACK.
!     Mechanism: ../Mechanism/CB07   
!     Species: ../Mechanism/ciCB07 
!
!------------------------------------------------------------------------
!
!     -- INPUT VARIABLES
!
!     RK: kinetic rates.
!     Y: chemical concentrations.
!
!     -- INPUT/OUTPUT VARIABLES
!
!     -- OUTPUT VARIABLES
!
!     DW: derivative of reaction rates wrt Y.
!
!------------------------------------------------------------------------
!
!     -- REMARKS
!
!------------------------------------------------------------------------
!
!     -- MODIFICATIONS
!
!------------------------------------------------------------------------
!
!     -- AUTHOR(S)
!
!     SPACK.
!
!------------------------------------------------------------------------
 
      IMPLICIT NONE
 
 
 
     INTEGER	       , INTENT(IN)  :: ngas                      
     INTEGER	       , INTENT(IN)  :: ijkbeg			  
     INTEGER	       , INTENT(IN)  :: ijkend			  
     INTEGER	       , INTENT(IN)  :: maxblock_size		  
     INTEGER	       , INTENT(IN)  :: nr			  
     DOUBLE PRECISION , INTENT(IN)  :: rk(maxblock_size,nr)	  
     DOUBLE PRECISION , INTENT(IN)  :: y(maxblock_size,NGAS) 	  
     DOUBLE PRECISION , INTENT(OUT) :: dw(maxblock_size,nr,NGAS) 
     INTEGER :: ijk						  
 
     DO ijk=ijkbeg,ijkend
  
  
      dw(ijk,  1,  1) =  rk(ijk,  1)
      dw(ijk,  2,  4) =  rk(ijk,  2)
      dw(ijk,  3,  4) =  rk(ijk,  3)
      dw(ijk,  4, 11) =  rk(ijk,  4)
      dw(ijk,  5, 10) =  rk(ijk,  5)
      dw(ijk,  6, 12) =  rk(ijk,  6)
      dw(ijk,  7,  5) =  rk(ijk,  7)
      dw(ijk,  8,  5) =  rk(ijk,  8)
      dw(ijk,  9, 13) =  rk(ijk,  9)
      dw(ijk, 10, 15) =  rk(ijk, 10)
      dw(ijk, 11, 15) =  rk(ijk, 11)
      dw(ijk, 12, 16) =  rk(ijk, 12)
      dw(ijk, 13, 33) =  rk(ijk, 13)
      dw(ijk, 14, 28) =  rk(ijk, 14)
      dw(ijk, 15, 30) =  rk(ijk, 15)
      dw(ijk, 16,  3) =  rk(ijk, 16)
      dw(ijk, 17,  3) =  rk(ijk, 17) * Y(ijk,  4)
      dw(ijk, 17,  4) =  rk(ijk, 17) * Y(ijk,  3)
      dw(ijk, 18,  6) =  rk(ijk, 18)
      dw(ijk, 19,  6) =  rk(ijk, 19)
      dw(ijk, 20,  6) =  rk(ijk, 20)
      dw(ijk, 21,  4) =  rk(ijk, 21) * Y(ijk,  7)
      dw(ijk, 21,  7) =  rk(ijk, 21) * Y(ijk,  4)
      dw(ijk, 22,  4) =  rk(ijk, 22) * Y(ijk,  8)
      dw(ijk, 22,  8) =  rk(ijk, 22) * Y(ijk,  4)
      dw(ijk, 23,  7) =  rk(ijk, 23) * Y(ijk,  8)
      dw(ijk, 23,  8) =  rk(ijk, 23) * Y(ijk,  7)
      dw(ijk, 24, 13) =  rk(ijk, 24) * Y(ijk,  7)
      dw(ijk, 24,  7) =  rk(ijk, 24) * Y(ijk, 13)
      dw(ijk, 25,  8) =  rk(ijk, 25) * Y(ijk,  8)
      dw(ijk, 25,  8) =  rk(ijk, 25) * Y(ijk,  8)
      dw(ijk, 26,  8) =  rk(ijk, 26) * Y(ijk,  8)
      dw(ijk, 26,  8) =  rk(ijk, 26) * Y(ijk,  8)
      dw(ijk, 27,  3) =  rk(ijk, 27) * Y(ijk,  2)
      dw(ijk, 27,  2) =  rk(ijk, 27) * Y(ijk,  3)
      dw(ijk, 28,  3) =  rk(ijk, 28) * Y(ijk,  1)
      dw(ijk, 28,  1) =  rk(ijk, 28) * Y(ijk,  3)
      dw(ijk, 29,  3) =  rk(ijk, 29) * Y(ijk,  1)
      dw(ijk, 29,  1) =  rk(ijk, 29) * Y(ijk,  3)
      dw(ijk, 30,  7) =  rk(ijk, 30) * Y(ijk,  2)
      dw(ijk, 30,  2) =  rk(ijk, 30) * Y(ijk,  7)
      dw(ijk, 31,  7) =  rk(ijk, 31) * Y(ijk,  1)
      dw(ijk, 31,  1) =  rk(ijk, 31) * Y(ijk,  7)
      dw(ijk, 32,  7) =  rk(ijk, 32) * Y(ijk,  5)
      dw(ijk, 32,  5) =  rk(ijk, 32) * Y(ijk,  7)
      dw(ijk, 33,  8) =  rk(ijk, 33) * Y(ijk,  2)
      dw(ijk, 33,  2) =  rk(ijk, 33) * Y(ijk,  8)
      dw(ijk, 34,  8) =  rk(ijk, 34) * Y(ijk,  1)
      dw(ijk, 34,  1) =  rk(ijk, 34) * Y(ijk,  8)
      dw(ijk, 35, 12) =  rk(ijk, 35)
      dw(ijk, 36,  8) =  rk(ijk, 36) * Y(ijk,  5)
      dw(ijk, 36,  5) =  rk(ijk, 36) * Y(ijk,  8)
      dw(ijk, 37,  7) =  rk(ijk, 37) * Y(ijk, 11)
      dw(ijk, 37, 11) =  rk(ijk, 37) * Y(ijk,  7)
      dw(ijk, 38,  7) =  rk(ijk, 38) * Y(ijk, 10)
      dw(ijk, 38, 10) =  rk(ijk, 38) * Y(ijk,  7)
      dw(ijk, 39,  7) =  rk(ijk, 39) * Y(ijk, 12)
      dw(ijk, 39, 12) =  rk(ijk, 39) * Y(ijk,  7)
      dw(ijk, 40,  4) =  rk(ijk, 40) * Y(ijk,  2)
      dw(ijk, 40,  2) =  rk(ijk, 40) * Y(ijk,  4)
      dw(ijk, 41,  4) =  rk(ijk, 41) * Y(ijk,  1)
      dw(ijk, 41,  1) =  rk(ijk, 41) * Y(ijk,  4)
      dw(ijk, 42,  2) =  rk(ijk, 42) * Y(ijk,  2)
      dw(ijk, 42,  2) =  rk(ijk, 42) * Y(ijk,  2)
      dw(ijk, 43,  2) =  rk(ijk, 43) * Y(ijk,  1)
      dw(ijk, 43,  1) =  rk(ijk, 43) * Y(ijk,  2)
      dw(ijk, 44, 11) =  rk(ijk, 44) * Y(ijk, 11)
      dw(ijk, 44, 11) =  rk(ijk, 44) * Y(ijk, 11)
      dw(ijk, 45,  5) =  rk(ijk, 45) * Y(ijk,  2)
      dw(ijk, 45,  2) =  rk(ijk, 45) * Y(ijk,  5)
      dw(ijk, 46,  5) =  rk(ijk, 46) * Y(ijk,  1)
      dw(ijk, 46,  1) =  rk(ijk, 46) * Y(ijk,  5)
      dw(ijk, 47,  5) =  rk(ijk, 47) * Y(ijk,  1)
      dw(ijk, 47,  1) =  rk(ijk, 47) * Y(ijk,  5)
      dw(ijk, 48,  9) =  rk(ijk, 48)
      dw(ijk, 49,  9) =  rk(ijk, 49)
      dw(ijk, 50,  9) =  rk(ijk, 50)
      dw(ijk, 51,  5) =  rk(ijk, 51) * Y(ijk,  5)
      dw(ijk, 51,  5) =  rk(ijk, 51) * Y(ijk,  5)
      dw(ijk, 52, 14) =  rk(ijk, 52) * Y(ijk,  7)
      dw(ijk, 52,  7) =  rk(ijk, 52) * Y(ijk, 14)
      dw(ijk, 53, 14) =  rk(ijk, 53) * Y(ijk,  7)
      dw(ijk, 53,  7) =  rk(ijk, 53) * Y(ijk, 14)
      dw(ijk, 54, 15) =  rk(ijk, 54) * Y(ijk,  3)
      dw(ijk, 54,  3) =  rk(ijk, 54) * Y(ijk, 15)
      dw(ijk, 55, 15) =  rk(ijk, 55) * Y(ijk,  7)
      dw(ijk, 55,  7) =  rk(ijk, 55) * Y(ijk, 15)
      dw(ijk, 56, 15) =  rk(ijk, 56) * Y(ijk,  5)
      dw(ijk, 56,  5) =  rk(ijk, 56) * Y(ijk, 15)
      dw(ijk, 57, 16) =  rk(ijk, 57) * Y(ijk,  3)
      dw(ijk, 57,  3) =  rk(ijk, 57) * Y(ijk, 16)
      dw(ijk, 58, 16) =  rk(ijk, 58) * Y(ijk,  7)
      dw(ijk, 58,  7) =  rk(ijk, 58) * Y(ijk, 16)
      dw(ijk, 59, 16) =  rk(ijk, 59) * Y(ijk,  5)
      dw(ijk, 59,  5) =  rk(ijk, 59) * Y(ijk, 16)
      dw(ijk, 60, 17) =  rk(ijk, 60) * Y(ijk,  2)
      dw(ijk, 60,  2) =  rk(ijk, 60) * Y(ijk, 17)
      dw(ijk, 61, 17) =  rk(ijk, 61) * Y(ijk,  1)
      dw(ijk, 61,  1) =  rk(ijk, 61) * Y(ijk, 17)
      dw(ijk, 62, 19) =  rk(ijk, 62)
      dw(ijk, 63, 17) =  rk(ijk, 63) * Y(ijk,  8)
      dw(ijk, 63,  8) =  rk(ijk, 63) * Y(ijk, 17)
      dw(ijk, 64, 17) =  rk(ijk, 64) * Y(ijk, 17)
      dw(ijk, 64, 17) =  rk(ijk, 64) * Y(ijk, 17)
      dw(ijk, 65,  7) =  rk(ijk, 65) * Y(ijk, 20)
      dw(ijk, 65, 20) =  rk(ijk, 65) * Y(ijk,  7)
      dw(ijk, 66, 22) =  rk(ijk, 66)
      dw(ijk, 67, 22) =  rk(ijk, 67)
      dw(ijk, 68, 22) =  rk(ijk, 68) * Y(ijk,  1)
      dw(ijk, 68,  1) =  rk(ijk, 68) * Y(ijk, 22)
      dw(ijk, 69,  3) =  rk(ijk, 69) * Y(ijk, 24)
      dw(ijk, 69, 24) =  rk(ijk, 69) * Y(ijk,  3)
      dw(ijk, 70,  7) =  rk(ijk, 70) * Y(ijk, 24)
      dw(ijk, 70, 24) =  rk(ijk, 70) * Y(ijk,  7)
      dw(ijk, 71,  4) =  rk(ijk, 71) * Y(ijk, 24)
      dw(ijk, 71, 24) =  rk(ijk, 71) * Y(ijk,  4)
      dw(ijk, 72,  3) =  rk(ijk, 72) * Y(ijk, 23)
      dw(ijk, 72, 23) =  rk(ijk, 72) * Y(ijk,  3)
      dw(ijk, 73,  7) =  rk(ijk, 73) * Y(ijk, 23)
      dw(ijk, 73, 23) =  rk(ijk, 73) * Y(ijk,  7)
      dw(ijk, 74,  4) =  rk(ijk, 74) * Y(ijk, 23)
      dw(ijk, 74, 23) =  rk(ijk, 74) * Y(ijk,  4)
      dw(ijk, 75,  5) =  rk(ijk, 75) * Y(ijk, 23)
      dw(ijk, 75, 23) =  rk(ijk, 75) * Y(ijk,  5)
      dw(ijk, 76,  3) =  rk(ijk, 76) * Y(ijk, 32)
      dw(ijk, 76, 32) =  rk(ijk, 76) * Y(ijk,  3)
      dw(ijk, 77,  7) =  rk(ijk, 77) * Y(ijk, 32)
      dw(ijk, 77, 32) =  rk(ijk, 77) * Y(ijk,  7)
      dw(ijk, 78,  4) =  rk(ijk, 78) * Y(ijk, 32)
      dw(ijk, 78, 32) =  rk(ijk, 78) * Y(ijk,  4)
      dw(ijk, 79,  5) =  rk(ijk, 79) * Y(ijk, 32)
      dw(ijk, 79, 32) =  rk(ijk, 79) * Y(ijk,  5)
      dw(ijk, 80,  1) =  rk(ijk, 80) * Y(ijk, 32)
      dw(ijk, 80, 32) =  rk(ijk, 80) * Y(ijk,  1)
      dw(ijk, 81, 33) =  rk(ijk, 81) * Y(ijk,  7)
      dw(ijk, 81,  7) =  rk(ijk, 81) * Y(ijk, 33)
      dw(ijk, 82, 33) =  rk(ijk, 82) * Y(ijk,  4)
      dw(ijk, 82,  4) =  rk(ijk, 82) * Y(ijk, 33)
      dw(ijk, 83, 33) =  rk(ijk, 83) * Y(ijk,  5)
      dw(ijk, 83,  5) =  rk(ijk, 83) * Y(ijk, 33)
      dw(ijk, 84,  7) =  rk(ijk, 84) * Y(ijk, 25)
      dw(ijk, 84, 25) =  rk(ijk, 84) * Y(ijk,  7)
      dw(ijk, 85, 27) =  rk(ijk, 85) * Y(ijk,  2)
      dw(ijk, 85,  2) =  rk(ijk, 85) * Y(ijk, 27)
      dw(ijk, 86, 27) =  rk(ijk, 86)
      dw(ijk, 87,  7) =  rk(ijk, 87) * Y(ijk, 26)
      dw(ijk, 87, 26) =  rk(ijk, 87) * Y(ijk,  7)
      dw(ijk, 88,  5) =  rk(ijk, 88) * Y(ijk, 26)
      dw(ijk, 88, 26) =  rk(ijk, 88) * Y(ijk,  5)
      dw(ijk, 89, 29) =  rk(ijk, 89) * Y(ijk,  1)
      dw(ijk, 89,  1) =  rk(ijk, 89) * Y(ijk, 29)
      dw(ijk, 90, 28) =  rk(ijk, 90) * Y(ijk,  7)
      dw(ijk, 90,  7) =  rk(ijk, 90) * Y(ijk, 28)
      dw(ijk, 91, 28) =  rk(ijk, 91) * Y(ijk,  4)
      dw(ijk, 91,  4) =  rk(ijk, 91) * Y(ijk, 28)
      dw(ijk, 92,  7) =  rk(ijk, 92) * Y(ijk, 31)
      dw(ijk, 92, 31) =  rk(ijk, 92) * Y(ijk,  7)
      dw(ijk, 93,  7) =  rk(ijk, 93) * Y(ijk, 30)
      dw(ijk, 93, 30) =  rk(ijk, 93) * Y(ijk,  7)
      dw(ijk, 94, 18) =  rk(ijk, 94) * Y(ijk,  2)
      dw(ijk, 94,  2) =  rk(ijk, 94) * Y(ijk, 18)
      dw(ijk, 95, 21) =  rk(ijk, 95) * Y(ijk,  2)
      dw(ijk, 95,  2) =  rk(ijk, 95) * Y(ijk, 21)
      dw(ijk, 96, 18) =  rk(ijk, 96) * Y(ijk, 18)
      dw(ijk, 96, 18) =  rk(ijk, 96) * Y(ijk, 18)
      dw(ijk, 97, 18) =  rk(ijk, 97) * Y(ijk,  8)
      dw(ijk, 97,  8) =  rk(ijk, 97) * Y(ijk, 18)
      dw(ijk, 98, 21) =  rk(ijk, 98) * Y(ijk,  8)
      dw(ijk, 98,  8) =  rk(ijk, 98) * Y(ijk, 21)
      dw(ijk, 99, 21) =  rk(ijk, 99) * Y(ijk, 21)
      dw(ijk, 99, 21) =  rk(ijk, 99) * Y(ijk, 21)
      dw(ijk,100, 18) =  rk(ijk,100) * Y(ijk, 21)
      dw(ijk,100, 21) =  rk(ijk,100) * Y(ijk, 18)
      dw(ijk,101, 34) =  rk(ijk,101) * Y(ijk,  7)
      dw(ijk,101,  7) =  rk(ijk,101) * Y(ijk, 34)
      dw(ijk,102, 35) =  rk(ijk,102) * Y(ijk,  7)
      dw(ijk,102,  7) =  rk(ijk,102) * Y(ijk, 35)
      dw(ijk,103, 36) =  rk(ijk,103) * Y(ijk,  7)
      dw(ijk,103,  7) =  rk(ijk,103) * Y(ijk, 36)
       END DO
 
   END SUBROUTINE dratedc
 
  END MODULE mod_chem_spack_dratedc
 
