ГОСТ Р 56047—2014
Файл: threshold.h
«ifdef ADVANCED
«define dz 0.5
«else
«define dz 0.25
«endif
Г Function prototypes 7
int threshold(double *. double *);
/* Prototypes end V
Файл: thresholds
«include <stdlib.h>
«include <malh.h>
«include <common.h>
«include <threshold.h>
extern int bark;
int
threshold(double ’E. double *M)
{
int k:
double m;
for(k=0:k<bark:k++) {
if((m = к * dz) <= 12)
m = 3.0:
else
m •= 0.25:
M[k] = E[kyp(10. m/10);
}
return 0:
}
Файл: timespreading.h
Г Function prototypes V
int timespreading(double *. double *, int. double *);
Г Prototypes end V
Файл: timespreading.c
«include <stdlib.h>
«include <math.h>
«include <comnx>n.h>
«include <timespreading.h>
«define T100 0.03
«define Tmin 0.008
extern int bark:
extern double *fC;
int
timespreading{double ’E2. double ’Etmp, int rate, double *E)
{
int k:
double a. T;
for<k=0:k<bark;k++) {
T = (double)Tmin + (doub»eK100.aiC(k])*(double)(T100- Tmin);
a = exp<(double)-HANNi,(double)(T‘2.0*rate)):
Etmp[k) = Etmp[k]*a (1.0-a)*E2[kl;
86