docs: def mbar_W_nk(u_kn, N_k, f_k):
      """Calculate the weight matrix.
  
      Parameters
      ----------
      u_kn : np.ndarray, shape=(n_states, n_samples), dtype='float'
          The reduced potential energies, i.e. -log unnormalized probabilities
      N_k : np.ndarray, shape=(n_states), dtype='int'
          The number of samples in each state
      f_k : np.ndarray, shape=(n_states), dtype='float'
          The reduced free energies of each state
  
      Returns
      -------
      W_nk : np.ndarray, dtype='float', shape=(n_samples, n_states)
          The normalized weights.
  
      Notes
      -----
      Equation (9) in JCP MBAR paper.
      """
      return np.exp(mbar_log_W_nk(u_kn, N_k, f_k))