Skip to content

Commit

Permalink
New input block chirp for identifications purposes
Browse files Browse the repository at this point in the history
  • Loading branch information
robertobucher committed Feb 18, 2024
1 parent 6e188bd commit f9e2573
Show file tree
Hide file tree
Showing 4 changed files with 1,055 additions and 0 deletions.
62 changes: 62 additions & 0 deletions CodeGen/Common/common_dev/sweep.c
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
/*
COPYRIGHT (C) 2022 Roberto Bucher ([email protected])
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
*/

#include <pyblock.h>
#include <math.h>

double get_run_time(void);

static void init(python_block *block)
{
double * realPar = block->realPar;
int * intPar = block->intPar;
}

static void inout(python_block *block)
{
double * realPar = block->realPar;
int * intPar = block->intPar;
double *y = block->y[0];
double t;
double k = realPar[0];

t = get_run_time();
y[0] = sin(k*t*t);
}

static void end(python_block *block)
{
double *y = block->y[0];

y[0] = 0.0;
}

void sweep(int flag, python_block *block)
{
if (flag==CG_OUT){ /* get input */
inout(block);
}
else if (flag==CG_END){ /* termination */
end(block);
}
else if (flag ==CG_INIT){ /* initialisation */
init(block);
}
}


Loading

0 comments on commit f9e2573

Please sign in to comment.