def simulate(self, steps, stimulus):
self.__create_weights(stimulus)<EOL>self.__location = stimulus<EOL>dynamic = cnn_dynamic([], [])<EOL>dynamic.output.append(self.__output)<EOL>dynamic.time.append(<NUM_LIT:0>)<EOL>for step in range(<NUM_LIT:1>, steps, <NUM_LIT:1>):<EOL><INDENT>self.__output = self.__calculate_states()<EOL>dynamic.output.append(self.__output)<EOL>dynamic.time.append(step)<EOL><DEDENT>return dynamic<EOL>
!
        @brief Simulates chaotic neural network with extrnal stimulus during specified steps.
        @details Stimulus are considered as a coordinates of neurons and in line with that weights
                 are initialized.

        @param[in] steps (uint): Amount of steps for simulation.
        @param[in] stimulus (list): Stimulus that are used for simulation.

        @return (cnn_dynamic) Output dynamic of the chaotic neural network.