Documentation

LeanPool.Kuramoto.Weighted

Weighted Kuramoto model #

The weighted Kuramoto potential and vector field, where coupling strengths are given by a matrix W. For the gradient identity the coupling matrix is assumed symmetric.

noncomputable def weightedKuramotoV (K : ) (N : ) (W : Fin NFin N) (θ : Fin N) :

The weighted Kuramoto potential V = -(K / 2) ∑_{i,j} W i j * cos (θ_j - θ_i).

Equations
Instances For
    noncomputable def weightedKuramotoF (K : ) (N : ) (W : Fin NFin N) (i : Fin N) (θ : Fin N) :

    The weighted Kuramoto force on oscillator i, F_i = K ∑_j W i j * sin (θ_j - θ_i).

    Equations
    Instances For
      theorem weighted_gradient_identity (K : ) (N : ) (W : Fin NFin N) (hW : ∀ (i j : Fin N), W i j = W j i) (θ : Fin N) (i : Fin N) :
      weightedKuramotoF K N W i θ = -deriv (fun (x : ) => weightedKuramotoV K N W (Function.update θ i x)) (θ i)
      theorem weightedKuramotoV_symm_cancel (K : ) (N : ) (W : Fin NFin N) (hW : ∀ (i j : Fin N), W i j = W j i) (θ : Fin N) :
      i : Fin N, weightedKuramotoF K N W i θ * weightedKuramotoF K N W i θ = -i : Fin N, weightedKuramotoF K N W i θ * deriv (fun (x : ) => weightedKuramotoV K N W (Function.update θ i x)) (θ i)
      theorem weighted_lyapunov_descent (K : ) (_hK : 0 < K) (N : ) (W : Fin NFin N) (hW : ∀ (i j : Fin N), W i j = W j i) (θ : Fin N) :
      i : Fin N, weightedKuramotoF K N W i θ * deriv (fun (x : ) => weightedKuramotoV K N W (Function.update θ i x)) (θ i) 0