#include (udf.h) /*Deklaration der Konstanten: */ #define KoerperID 2 #define amplitudeX 0.02 #define amplitudeY 0. #define amplitudeZ 0. #define pi 3.14 /* Deklaration der globalen Variablen */ real v_neu[ND_ND]; Thread *t; Domain *d; void geschwindigkeitsbestimmung(real zeit_alt, real zeitschrittweite, int ID) { real zeit_neu = 0.; NV_S(v_neu,=,0); zeit_neu = zeit_alt + zeitschrittweite; v_neu[0] = amplitudeX * cos(2 * pi * zeit_neu); v_neu[1] = amplitudeY * cos(2 * pi * zeit_neu); v_neu[2] = amplitudeZ * cos(2 * pi * zeit_neu); } /* UDF */ DEFINE_CG_MOTION(BewSinus,dthread,geschw,winkelgeschw,zeit_akt,dzeit) { NV_S(geschw,=,0); geschwindigkeitsbestimmung(zeit_akt,dzeit,KoerperID); NV_V(geschw,=,v_neu); }