Unverified Commit 383bb7f9 authored by Axel Kohlmeyer's avatar Axel Kohlmeyer
Browse files

added restart capability to RanMars

parent 897ae681
Loading
Loading
Loading
Loading
+28 −0
Original line number Diff line number Diff line
@@ -287,3 +287,31 @@ void RanMars::select_subset(bigint ntarget, int nmine, int *mark, int *next)
    //                          niter,nmark,nactiveall,thresh,nflipall);
  }
}

/* ----------------------------------------------------------------------
   store state in buffer
------------------------------------------------------------------------- */

void RanMars::get_state(double *state)
{
  for (int i=0; i < 98; ++i) state[i] = u[i];
  state[98] = i97;
  state[99] = j97;
  state[100]= c;
  state[101]= cd;
  state[102]= cm;
}

/* ----------------------------------------------------------------------
   restore state from buffer
------------------------------------------------------------------------- */

void RanMars::set_state(double *state)
{
  for (int i=0; i < 98; ++i) u[i] = state[i];
  i97 = state[98];
  j97 = state[99];
  c   = state[100];
  cd  = state[101];
  cm  = state[102];
}
+2 −0
Original line number Diff line number Diff line
@@ -28,6 +28,8 @@ class RanMars : protected Pointers {
  double rayleigh(double sigma);
  double besselexp(double theta, double alpha, double cp);
  void select_subset(bigint, int, int *, int *);
  void get_state(double *);
  void set_state(double *);

 private:
  int save;