subroutine jacobian_channel(i,Cons,Jacob)
integer, intent(in) :: i
real(dp), dimension(:,:), intent(in) :: Cons
real(dp), dimension(:,:,:), intent(inout) :: Jacob
real(dp), dimension(Nb_VarC) :: U
U(:)=Cons(:,i)
Jacob(1,1,i)=0.0_dp
Jacob(2,1,i)=1.0_dp
Jacob(3,1,i)=0.0_dp
Jacob(4,1,i)=0.0_dp
Jacob(1,2,i)=-(3.0_dp/2.0_dp)*((U(2)**2)/(U(1)**2))
Jacob(2,2,i)=3.0_dp*U(2)/U(1)
Jacob(3,2,i)=-1.0_dp
Jacob(4,2,i)=1.0_dp
Jacob(1,3,i)=-U(4)*U(2)/(U(1)**2)-((U(2)**3)/(U(1)**3))
Jacob(2,3,i)=U(4)/U(1)+(3.0_dp/2.0_dp)*((U(2)**2)/(U(1)**2))
Jacob(3,3,i)=0.0_dp
Jacob(4,3,i)=U(2)/U(1)
Jacob(1,4,i)=-U(4)*U(2)/(U(1)**2)
Jacob(2,4,i)=U(4)/U(1)
Jacob(3,4,i)=0.0_dp
Jacob(4,4,i)=U(2)/U(1)
end subroutine jacobian_channel