class_docstr: !
  @brief Describes parameters of LEGION.
  @details Contained parameters affect on output dynamic of each oscillator of the network.
  
  @see legion_network
class_docstr_tok: ["!","@","brief","Describes","parameters","of","LEGION",".","@","details","Contained","parameters","affect","on","output","dynamic","of","each","oscillator","of","the","network",".","@","see","legion_network"]
docstr: !
  @brief    Default constructor of parameters for LEGION (local excitatory global inhibitory oscillatory network).
  @details  Constructor initializes parameters by default non-zero values that can be
            used for simple simulation.
docstr_tok: ["!","@","brief","Default","constructor","of","parameters","for","LEGION","(","local","excitatory","global","inhibitory","oscillatory","network",")",".","@","details","Constructor","initializes","parameters","by","default","non-zero","values","that","can","be","used","for","simple","simulation","."]
code: def __init__(self):
      """!
      @brief    Default constructor of parameters for LEGION (local excitatory global inhibitory oscillatory network).
      @details  Constructor initializes parameters by default non-zero values that can be
                used for simple simulation.
      """
  
      ## Coefficient that affects intrinsic inhibitor of each oscillator. Should be the same as 'alpha'.
      self.eps = 0.02
  
      ## Coefficient is chosen to be on the same order of magnitude as 'eps'. Affects on exponential function that decays on a slow time scale.
      self.alpha = 0.005
  
      ## Coefficient that is used to control the ratio of the times that the solution spends in these two phases. For a larger value of g, the solution spends a shorter time in the active phase.
      self.gamma = 6.0
  
      ## Coefficient that affects on intrinsic inhibitor of each oscillator. Specifies the steepness of the sigmoid function.
      self.betta = 0.1
  
      ## Scale coefficient that is used by potential, should be greater than 0.
      self.lamda = 0.1
  
      ## Threshold that should be exceeded by a potential to switch on potential.
      self.teta = 0.9
  
      ## Threshold that should be exceeded by a single oscillator to affect its neighbors.
      self.teta_x = -1.5
  
      ## Threshold that should be exceeded to activate potential. If potential less than the threshold then potential is relaxed to 0 on time scale 'mu'.
      self.teta_p = 1.5
  
      ## Threshold that should be exceeded by any oscillator to activate global inhibitor.
      self.teta_xz = 0.1
  
      ## Threshold that should be exceeded to affect on a oscillator by the global inhibitor.
      self.teta_zx = 0.1
  
      ## Weight of permanent connections.
      self.T = 2.0
  
      ## Defines time scaling of relaxing of oscillator potential.
      self.mu = 0.01
  
      ## Weight of global inhibitory connections.
      self.Wz = 1.5
  
      ## Total dynamic weights to a single oscillator from neighbors. Sum of weights of dynamic connections to a single oscillator can not be bigger than Wt.
      self.Wt = 8.0
  
      ## Rate at which the global inhibitor reacts to the stimulation from the oscillator network.
      self.fi = 3.0
  
      ## Multiplier of oscillator noise. Plays important role in desynchronization process.
      self.ro = 0.02
  
      ## Value of external stimulus.
      self.I = 0.2
  
      ## Defines whether to use potentional of oscillator or not.
      self.ENABLE_POTENTIONAL = True
  
imports: import numpy
  import random
  import pyclustering.core.legion_wrapper
  from pyclustering.core.wrapper import ccore_library
  from pyclustering.nnet import *
  from pyclustering.utils import heaviside, allocate_sync_ensembles
  from scipy.integrate import odeint
label_desc: Use image node_id 1 to create a new legion_parameters object  with example: obj = legion_parameters()