Add parameter perlim: continous sequence or one time sequence.

This commit is contained in:
Holger Vogt 2025-05-27 13:33:17 +02:00
parent 5182d7e4b2
commit f247d1e2ce
2 changed files with 21 additions and 3 deletions

View File

@ -176,6 +176,7 @@ void cm_seegen(ARGS) /* structure holding parms,
*last_ctrl = ctrl;
}
/* the double exponential current pulse function */
if (tcurr < *last_t_value)
out = 0;
else
@ -188,6 +189,12 @@ void cm_seegen(ARGS) /* structure holding parms,
/* set the time for the next pulse */
*last_t_value = *last_t_value + tperiod;
(*pulse_number)++;
if (*pulse_number > PORT_SIZE(out)) {
if (PARAM(perlim) == FALSE)
*pulse_number = 1;
else
*last_t_value = 1e12; /* stop any output */
}
}
if (*pulse_number - 1 < PORT_SIZE(out))
OUTPUT(out[*pulse_number - 1]) = out;

View File

@ -7,16 +7,16 @@ Universty Duisburg-Essen
Duisburg, Germany
Project Flowspace
AUTHORS
AUTHORS
19 May 2025
Holger Vogt 19 May 2025
SUMMARY
This file contains the interface specification file for the
analog ilimit code model.
analog seegen code model.
===============================================================================*/
@ -73,6 +73,17 @@ Vector: no no
Vector_Bounds: - -
Null_Allowed: yes yes
PARAMETER_TABLE:
Parameter_Name: perlim
Description: "pulse repetition limited"
Data_Type: boolean
Default_Value: TRUE
Limits: -
Vector: no
Vector_Bounds: -
Null_Allowed: yes
STATIC_VAR_TABLE:
Static_Var_Name: last_t_value