SlowDown Algorithmic Regularization (SDAR)
Algorithmic Regularization with slowdown method for integrating few-body motions
interrupt.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "AR/information.h"
4 
5 namespace AR {
6 
8  enum class InterruptStatus{change=1, merge=2, destroy=3, none=0};
9 
11  template <class Tparticle>
12  struct InterruptBinary {
13  AR::BinaryTree<Tparticle>* adr; // binary tree address
14  Float time_now; // current time
15  Float time_end; // finishing time
16  InterruptStatus status; // binary status
17 
19 
20  //InterruptBinary(AR::BinaryTree<Tparticle>* _adr, Tparticle* _p, const Float& _time_now, const Float& _time_end, const InterruptStatus& _status): adr(_adr), time_now(_time_now), time_end(_time_end), status(_status) {}
21 
22  //InterruptBinary(InterruptBinary<Tparticle>& _bin) {
23  // adr = _bin.adr;
24  // time_now= _bin.time_now;
25  // time_end= _bin.time_end;
26  // status = _bin.status;
27  //}
28 
29  void clear() {
30  adr=NULL;
31  time_now=0.0;
32  time_end=0.0;
34  }
35 
36  bool checkParams() {
38  return true;
39  }
40  };
41 }
AR
Algorithmic regularization (time transformed explicit symplectic integrator) namespace.
Definition: force.h:5
AR::InterruptBinary::time_now
Float time_now
Definition: interrupt.h:14
AR::InterruptBinary::time_end
Float time_end
Definition: interrupt.h:15
AR::InterruptStatus::destroy
@ destroy
AR::InterruptBinary
Binary interrupt recoreder.
Definition: interrupt.h:12
information.h
AR::InterruptStatus::merge
@ merge
AR::InterruptBinary::adr
AR::BinaryTree< Tparticle > * adr
Definition: interrupt.h:13
AR::InterruptBinary::InterruptBinary
InterruptBinary()
Definition: interrupt.h:18
Float
double Float
Definition: Float.h:25
AR::InterruptStatus::none
@ none
AR::InterruptBinary::checkParams
bool checkParams()
Definition: interrupt.h:36
AR::FixStepOption::none
@ none
AR::InterruptBinary::status
InterruptStatus status
Definition: interrupt.h:16
COMM::BinaryTree
Binary tree cell.
Definition: binary_tree.h:492
AR::InterruptStatus::change
@ change
AR::InterruptStatus
InterruptStatus
binary interrupt status
Definition: interrupt.h:8
AR::InterruptBinary::clear
void clear()
Definition: interrupt.h:29