def __init__(self, sample, radius, conn_repr = conn_represent.MATRIX, initial_phases = initial_type.RANDOM_GAUSSIAN, enable_conn_weight = False, ccore = True):
self._ccore_network_pointer = None;<EOL>self._osc_loc = sample;<EOL>self._num_osc = len(sample);<EOL>if ( (ccore is True) and ccore_library.workable() ):<EOL><INDENT>self._ccore_network_pointer = syncnet_create_network(sample, radius, initial_phases, enable_conn_weight);<EOL>self._conn_represent = conn_represent.MATRIX;<EOL><DEDENT>else:<EOL><INDENT>super().__init__(len(sample), <NUM_LIT:1>, <NUM_LIT:0>, conn_type.DYNAMIC, conn_repr, initial_phases, False);<EOL>self._conn_weight = None;<EOL>self._ena_conn_weight = enable_conn_weight;<EOL>if (radius is not None):<EOL><INDENT>self._create_connections(radius);<EOL><DEDENT><DEDENT>
!
        @brief Contructor of the oscillatory network SYNC for cluster analysis.

        @param[in] sample (list): Input data that is presented as list of points (objects), each point should be represented by list or tuple.
        @param[in] radius (double): Connectivity radius between points, points should be connected if distance between them less then the radius.
        @param[in] conn_repr (conn_represent): Internal representation of connection in the network: matrix or list. Ignored in case of usage of CCORE library.
        @param[in] initial_phases (initial_type): Type of initialization of initial phases of oscillators (random, uniformly distributed, etc.).
        @param[in] enable_conn_weight (bool): If True - enable mode when strength between oscillators depends on distance between two oscillators.
              If False - all connection between oscillators have the same strength that equals to 1 (True).
        @param[in] ccore (bool): Defines should be CCORE C++ library used instead of Python code or not.