// File: /workspace/github_cpp_makefile_star2_O2/atfrank[P]PCASA/lib/Trajectory.cpp
// Function: Trajectory::showHeader()
void Trajectory::showHeader(){
  for (unsigned int i=0; i< title.size(); i++){
    std::cout << title[i] << std::endl;
  }
  std::cout << std::fixed;
  std::cout << std::setw(25) << std::left << "Atoms" << ": " << natom << std::endl;
  if (nframe == 0){
    std::cout << std::setw(25) << std::left << "Frames" << ": " << nframe << " ***Warning: Zero frames detected!***" << std::endl;
  }
  else{
    std::cout << std::setw(25) << std::left << "Frames" << ": " << nframe << std::endl;
  }
  std::cout << std::setw(25) << std::left << "Start Frame" << ": " << npriv << std::endl;
  std::cout << std::setw(25) << std::left << "Save Frequency" << ": " << nsavc << std::endl;
  std::cout << std::setw(25) << std::left << "Dynamics Steps" << ": " << nstep << std::endl;
  std::cout << std::setw(25) << std::left << "Degrees of Freedom" << ": " << dof << std::endl;
  std::cout << std::setw(25) << std::left << "Number of Fixed" << ": " << nfixed << std::endl;
  std::cout << std::setw(25) << std::left << "Time Step (ps)" << ": " << this->getTStepPS() << std::endl;
  std::cout << std::setw(25) << std::left << "Start Time (ps)" << ": " << npriv*this->getTStepPS()/nsavc << std::endl;
  std::cout << std::setw(25) << std::left << "Periodic Boundaries" << ": " << qcrystal << std::endl;
  std::cout << std::setw(25) << std::left << "4D Trajectory" << ": " << q4d << std::endl;
  std::cout << std::setw(25) << std::left << "Fluctuating Charges" << ": " << qcharge << std::endl;
  std::cout << std::setw(25) << std::left << "Consistency Check" << ": " << qcheck << std::endl;
  std:: cout << std::setw(25) << std::left << "Version" << ": " << version << std::endl;
}

// Assembly:
pushq %rbp
pushq %r15
pushq %r14
pushq %r13
pushq %r12
pushq %rbx
pushq %rax
movq %rdi, %rbx
xorl %eax, %eax
movq 0x3bb1c3(%rip), %r14    # 0x3e4fc8
movl %eax, %r15d
movq 0xb0(%rbx), %rsi
movq 0xb8(%rbx), %rax
subq %rsi, %rax
sarq $0x5, %rax
cmpq %r15, %rax
jbe 0x29e42
movq %r15, %rax
shlq $0x5, %rax
addq %rax, %rsi
movq %r14, %rdi
callq 0x42c0
movq %rax, %rdi
callq 0x4180
leal 0x1(%r15), %eax
jmp 0x29e05
movq (%r14), %rax
movq -0x18(%rax), %rcx
movl $0xfffffefb, %edx       # imm = 0xFFFFFEFB
andl 0x18(%r14,%rcx), %edx
orl $0x4, %edx
movl %edx, 0x18(%r14,%rcx)
movq -0x18(%rax), %rcx
pushq $0x19
popq %r13
movq %r13, 0x10(%r14,%rcx)
movq -0x18(%rax), %rax
movl $0xffffff4f, %ebp       # imm = 0xFFFFFF4F
movl 0x18(%r14,%rax), %ecx
andl %ebp, %ecx
orl $0x20, %ecx
movl %ecx, 0x18(%r14,%rax)
leaq 0x5107(%rip), %rsi      # 0x2ef8e
movq %r14, %rdi
callq 0x4300
leaq 0x51ed(%rip), %r15      # 0x2f083
movq %rax, %rdi
movq %r15, %rsi
callq 0x4300
movl 0xc8(%rbx), %esi
movq %rax, %rdi
callq 0x4520
movq %rax, %rdi
callq 0x4180
movl 0x78(%rbx), %r12d
movq (%r14), %rax
movq -0x18(%rax), %rcx
movq %r13, 0x10(%r14,%rcx)
movq -0x18(%rax), %rax
movl 0x18(%r14,%rax), %ecx
andl %ebp, %ecx
orl $0x20, %ecx
movl %ecx, 0x18(%r14,%rax)
leaq 0x50b3(%rip), %rsi      # 0x2ef94
movq %r14, %rdi
callq 0x4300
movq %rax, %rdi
movq %r15, %rsi
callq 0x4300
movl 0x78(%rbx), %esi
movq %rax, %rdi
callq 0x4520
testl %r12d, %r12d
jne 0x29f13
leaq 0x5090(%rip), %rsi      # 0x2ef9b
movq %rax, %rdi
callq 0x4300
movq %rax, %rdi
callq 0x4180
movq (%r14), %rax
movq -0x18(%rax), %rcx
movq %r13, 0x10(%r14,%rcx)
movq -0x18(%rax), %rax
movl 0x18(%r14,%rax), %ecx
andl %ebp, %ecx
orl $0x20, %ecx
movl %ecx, 0x18(%r14,%rax)
leaq 0x5080(%rip), %rsi      # 0x2efc1
movq %r14, %rdi
callq 0x4300
leaq 0x5133(%rip), %r15      # 0x2f083
movq %rax, %rdi
movq %r15, %rsi
callq 0x4300
movl 0x7c(%rbx), %esi
movq %rax, %rdi
callq 0x4520
movq %rax, %rdi
callq 0x4180
movq (%r14), %rax
movq -0x18(%rax), %rcx
movq %r13, 0x10(%r14,%rcx)
movq -0x18(%rax), %rax
movl 0x18(%r14,%rax), %ecx
andl %ebp, %ecx
orl $0x20, %ecx
movl %ecx, 0x18(%r14,%rax)
leaq 0x5039(%rip), %rsi      # 0x2efcd
movq %r14, %rdi
callq 0x4300
movq %rax, %rdi
movq %r15, %rsi
callq 0x4300
movl 0x80(%rbx), %esi
movq %rax, %rdi
callq 0x4520
movq %rax, %rdi
callq 0x4180
movq (%r14), %rax
movq -0x18(%rax), %rcx
movq %r13, 0x10(%r14,%rcx)
movq -0x18(%rax), %rax
movl 0x18(%r14,%rax), %ecx
andl %ebp, %ecx
orl $0x20, %ecx
movl %ecx, 0x18(%r14,%rax)
leaq 0x4ff9(%rip), %rsi      # 0x2efdc
movq %r14, %rdi
callq 0x4300
movq %rax, %rdi
movq %r15, %rsi
callq 0x4300
movl 0x84(%rbx), %esi
movq %rax, %rdi
callq 0x4520
movq %rax, %rdi
callq 0x4180
movq (%r14), %rax
movq -0x18(%rax), %rcx
movq %r13, 0x10(%r14,%rcx)
movq -0x18(%rax), %rax
movl 0x18(%r14,%rax), %ecx
andl %ebp, %ecx
orl $0x20, %ecx
movl %ecx, 0x18(%r14,%rax)
leaq 0x4fb9(%rip), %rsi      # 0x2efeb
movq %r14, %rdi
callq 0x4300
movq %rax, %rdi
movq %r15, %rsi
callq 0x4300
movl 0x90(%rbx), %esi
movq %rax, %rdi
callq 0x4520
movq %rax, %rdi
callq 0x4180
movq (%r14), %rax
movq -0x18(%rax), %rcx
movq %r13, 0x10(%r14,%rcx)
movq -0x18(%rax), %rax
movl 0x18(%r14,%rax), %ecx
andl %ebp, %ecx
orl $0x20, %ecx
movl %ecx, 0x18(%r14,%rax)
leaq 0x4f7d(%rip), %rsi      # 0x2effe
movq %r14, %rdi
callq 0x4300
movq %rax, %rdi
movq %r15, %rsi
callq 0x4300
movl 0x94(%rbx), %esi
movq %rax, %rdi
callq 0x4520
movq %rax, %rdi
callq 0x4180
movq (%r14), %rax
movq -0x18(%rax), %rcx
movq %r13, 0x10(%r14,%rcx)
movq -0x18(%rax), %rax
movl 0x18(%r14,%rax), %ecx
andl %ebp, %ecx
orl $0x20, %ecx
movl %ecx, 0x18(%r14,%rax)
leaq 0x4f3e(%rip), %rsi      # 0x2f00e
movq %r14, %rdi
callq 0x4300
movq %rax, %rdi
movq %r15, %rsi
callq 0x4300
movq %rax, %r12
movq %rbx, %rdi
callq 0x2a576
movq %r12, %rdi
callq 0x44d0
movq %rax, %rdi
callq 0x4180
movq (%r14), %rax
movq -0x18(%rax), %rcx
movq %r13, 0x10(%r14,%rcx)
movq -0x18(%rax), %rax
movl 0x18(%r14,%rax), %ecx
andl %ebp, %ecx
orl $0x20, %ecx
movl %ecx, 0x18(%r14,%rax)
leaq 0x4ef9(%rip), %rsi      # 0x2f01d
movq %r14, %rdi
callq 0x4300
movq %rax, %rdi
movq %r15, %rsi
callq 0x4300
movq %rax, %r12
cvtsi2sdl 0x7c(%rbx), %xmm0
movsd %xmm0, (%rsp)
movq %rbx, %rdi
callq 0x2a576
mulsd (%rsp), %xmm0
cvtsi2sdl 0x80(%rbx), %xmm1
divsd %xmm1, %xmm0
movq %r12, %rdi
callq 0x44d0
movq %rax, %rdi
callq 0x4180
movq (%r14), %rax
movq -0x18(%rax), %rcx
movq %r13, 0x10(%r14,%rcx)
movq -0x18(%rax), %rax
movl 0x18(%r14,%rax), %ecx
andl %ebp, %ecx
orl $0x20, %ecx
movl %ecx, 0x18(%r14,%rax)
leaq 0x4e9a(%rip), %rsi      # 0x2f02d
movq %r14, %rdi
callq 0x4300
movq %rax, %rdi
movq %r15, %rsi
callq 0x4300
movl 0x9c(%rbx), %esi
movq %rax, %rdi
callq 0x4520
movq %rax, %rdi
callq 0x4180
movq (%r14), %rax
movq -0x18(%rax), %rcx
movq %r13, 0x10(%r14,%rcx)
movq -0x18(%rax), %rax
movl 0x18(%r14,%rax), %ecx
andl %ebp, %ecx
orl $0x20, %ecx
movl %ecx, 0x18(%r14,%rax)
leaq 0x4e5f(%rip), %rsi      # 0x2f041
movq %r14, %rdi
callq 0x4300
movq %rax, %rdi
movq %r15, %rsi
callq 0x4300
movl 0xa0(%rbx), %esi
movq %rax, %rdi
callq 0x4520
movq %rax, %rdi
callq 0x4180
movq (%r14), %rax
movq -0x18(%rax), %rcx
movq %r13, 0x10(%r14,%rcx)
movq -0x18(%rax), %rax
movl 0x18(%r14,%rax), %ecx
andl %ebp, %ecx
orl $0x20, %ecx
movl %ecx, 0x18(%r14,%rax)
leaq 0x4e1e(%rip), %rsi      # 0x2f04f
movq %r14, %rdi
callq 0x4300
movq %rax, %rdi
movq %r15, %rsi
callq 0x4300
movl 0xa4(%rbx), %esi
movq %rax, %rdi
callq 0x4520
movq %rax, %rdi
callq 0x4180
movq (%r14), %rax
movq -0x18(%rax), %rcx
movq %r13, 0x10(%r14,%rcx)
movq -0x18(%rax), %rax
movl 0x18(%r14,%rax), %ecx
andl %ebp, %ecx
orl $0x20, %ecx
movl %ecx, 0x18(%r14,%rax)
leaq 0x4de3(%rip), %rsi      # 0x2f063
movq %r14, %rdi
callq 0x4300
movq %rax, %rdi
movq %r15, %rsi
callq 0x4300
movl 0xa8(%rbx), %esi
movq %rax, %rdi
callq 0x4520
movq %rax, %rdi
callq 0x4180
movq (%r14), %rax
movq -0x18(%rax), %rcx
movq %r13, 0x10(%r14,%rcx)
movq -0x18(%rax), %rax
andl 0x18(%r14,%rax), %ebp
orl $0x20, %ebp
movl %ebp, 0x18(%r14,%rax)
leaq 0x4da8(%rip), %rsi      # 0x2f075
movq %r14, %rdi
callq 0x4300
movq %rax, %rdi
movq %r15, %rsi
callq 0x4300
movl 0xac(%rbx), %esi
movq %rax, %rdi
callq 0x4520
movq %rax, %rdi
addq $0x8, %rsp
popq %rbx
popq %r12
popq %r13
popq %r14
popq %r15
popq %rbp
jmp 0x4180