*** Phase-space analysis of a two-section InP laser as an all-optical spiking neuron: dependency on control and design parameters *** 

Authors: L. Puts, D. Lenstra, K. Williams, W. Yao

Corresponding author: L. Puts

Contact Information: 
l.puts@tue.nl

Eindhoven University of Technology - Photonic Integration Group
P.O. Box 513
5600MB Eindhoven
The Netherlands 

This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.

***General Introduction*** 
This upload contains the complete Python code to generate the figures as shown in the paper "Phase-space analysis of a two-section InP laser as an all-optical spiking neuron: dependency on control and design parameters". doi:10.1088/2634-4386/ad575e. The paper is part of the Open Simulations Focus Issue by the publisher, and therefore publicy available.

The code comprises the Yamada rate equation model and compact models to calculate the carrier densities and photon number in a two-section laser. To calculate the outcome of the model, Pythons ODE solver is used. A 2D sweep function is implemented to generate the data for the 2D parameter sweep plot (figure 7). Alternatively, two addition folders with pre-generated data using this model is provided to generate this figure. All generated data is saved as figures directly, or in the numpy format.

***Purpose of the test campaign*** 
The purpose of this modeling was to gain more insights into the dynamics of a two-section laser neuron design on the InP generic platform.

***Description of the data in this data set*** 
The Python code is divided into different sections, each targeting the generation of the one of the figures from the paper. The model and parameters are all explained and calculated in the first section. All data is stored either as figures directly, or, alternatively for figure 7, in the folder 'physical_nodes_output' as *.npy data. For figure 7, in the corresponding section, it can be chosen to use pre-generated data, or to use the data stored in the 'physical_nodes_output' folder by (un)commenting the lines specified. 