// cool down neuron activity // reset to zero if reaches QUIET state void NEURON::Cool() { PotentialReduce(); FlagReset(FLAG_FIRING); switch (_state) { case QUIET: break; case AWAKE: _state = QUIET; _potent=0; break; case MELLOW: _state = AWAKE; break; case HYPER: _state = MELLOW; break; default: break; } }
void ResetSafariZoneFlag(void) { FlagReset(SYS_SAFARI_MODE); }
bool8 ScrCmd_clearflag(struct ScriptContext *ctx) { FlagReset(ScriptReadHalfword(ctx)); return FALSE; }
/* ******************************************************************** */ int Integrate (Data *d, Riemann_Solver *Solver, Time_Step *Dts, Grid *grid) /*! * Advance equations by a single time-step. * \param d pointer to PLUTO Data structure; * \param Solver pointer to a Riemann solver function; * \param Dts pointer to time Step structure; * \param grid pointer to grid structure. * * \return An integer giving success / failure (development). * ********************************************************************** */ { int idim, err = 0; g_maxMach = 0.0; g_maxRiemannIter = 0; g_maxRootIter = 0; /* ------------------------------------------------------- Initialize max propagation speed in Dedner's approach ------------------------------------------------------- */ #ifdef GLM_MHD /* -- initialize glm_ch -- */ GLM_Init (d, Dts, grid); GLM_Source (d->Vc, 0.5*g_dt, grid); #endif /* --------------------------------------------- perform Strang Splitting on directions (if necessary) and sources --------------------------------------------- */ FlagReset (d); #ifdef FARGO FARGO_ComputeVelocity(d, grid); #endif if ((g_stepNumber%2) == 0){ g_operatorStep = HYPERBOLIC_STEP; #if DIMENSIONAL_SPLITTING == YES for (g_dir = 0; g_dir < DIMENSIONS; g_dir++){ if (UpdateSolution (d, Solver, Dts, grid) != 0) return (1); } #else if (UpdateSolution (d, Solver, Dts, grid) != 0) return(1); #endif g_operatorStep = PARABOLIC_STEP; SplitSource (d, g_dt, Dts, grid); }else{ g_operatorStep = PARABOLIC_STEP; SplitSource (d, g_dt, Dts, grid); g_operatorStep = HYPERBOLIC_STEP; #if DIMENSIONAL_SPLITTING == YES for (g_dir = DIMENSIONS - 1; g_dir >= 0; g_dir--){ if (UpdateSolution(d, Solver, Dts, grid) != 0) return (1); } #else if (UpdateSolution (d, Solver, Dts, grid) != 0) return(1); #endif } #ifdef GLM_MHD /* -- GLM source for dt/2 -- */ GLM_Source (d->Vc, 0.5*g_dt, grid); #endif return (0); /* -- ok, step achieved -- */ }