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; *last_ctrl = ctrl;
} }
/* the double exponential current pulse function */
if (tcurr < *last_t_value) if (tcurr < *last_t_value)
out = 0; out = 0;
else else
@ -188,6 +189,12 @@ void cm_seegen(ARGS) /* structure holding parms,
/* set the time for the next pulse */ /* set the time for the next pulse */
*last_t_value = *last_t_value + tperiod; *last_t_value = *last_t_value + tperiod;
(*pulse_number)++; (*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)) if (*pulse_number - 1 < PORT_SIZE(out))
OUTPUT(out[*pulse_number - 1]) = out; OUTPUT(out[*pulse_number - 1]) = out;

View File

@ -9,14 +9,14 @@ Project Flowspace
AUTHORS AUTHORS
19 May 2025 Holger Vogt 19 May 2025
SUMMARY SUMMARY
This file contains the interface specification file for the 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: - - Vector_Bounds: - -
Null_Allowed: yes yes 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_TABLE:
Static_Var_Name: last_t_value Static_Var_Name: last_t_value