// File: 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:
subq $0x78, %rsp
movq %rdi, 0x70(%rsp)
movq 0x70(%rsp), %rax
movq %rax, 0x28(%rsp)
movl $0x0, 0x6c(%rsp)
movq 0x28(%rsp), %rdi
movl 0x6c(%rsp), %eax
movq %rax, 0x20(%rsp)
addq $0xb0, %rdi
callq 0x78e0
movq %rax, %rcx
movq 0x20(%rsp), %rax
cmpq %rcx, %rax
jae 0x71ba4
movq 0x28(%rsp), %rdi
addq $0xb0, %rdi
movl 0x6c(%rsp), %eax
movl %eax, %esi
callq 0x9020
movq %rax, %rsi
movq 0x3c9435(%rip), %rdi    # 0x43afb8
callq 0x5390
movq %rax, %rdi
movq 0x3c9416(%rip), %rsi    # 0x43afa8
callq 0x5460
movl 0x6c(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x6c(%rsp)
jmp 0x71b3b
movq 0x3c940d(%rip), %rdi    # 0x43afb8
leaq -0x5ad12(%rip), %rsi    # 0x16ea0
callq 0x5160
movl $0x19, %edi
callq 0x16ec0
movl %eax, 0x68(%rsp)
movl 0x68(%rsp), %esi
movq 0x3c93e8(%rip), %rdi    # 0x43afb8
callq 0x54e0
movq %rax, %rdi
leaq -0x1afef(%rip), %rsi    # 0x56bf0
callq 0x5160
movq %rax, %rdi
leaq 0xb358(%rip), %rsi      # 0x7cf46
callq 0x53f0
movq %rax, %rdi
leaq 0xb43e(%rip), %rsi      # 0x7d03b
callq 0x53f0
movq %rax, %rdi
movq 0x28(%rsp), %rax
movl 0xc8(%rax), %esi
callq 0x56f0
movq %rax, %rdi
movq 0x3c9389(%rip), %rsi    # 0x43afa8
callq 0x5460
movq 0x28(%rsp), %rax
cmpl $0x0, 0x78(%rax)
jne 0x71caa
movl $0x19, %edi
callq 0x16ec0
movl %eax, 0x64(%rsp)
movl 0x64(%rsp), %esi
movq 0x3c9370(%rip), %rdi    # 0x43afb8
callq 0x54e0
movq %rax, %rdi
leaq -0x1b067(%rip), %rsi    # 0x56bf0
callq 0x5160
movq %rax, %rdi
leaq 0xb2e6(%rip), %rsi      # 0x7cf4c
callq 0x53f0
movq %rax, %rdi
leaq 0xb3c6(%rip), %rsi      # 0x7d03b
callq 0x53f0
movq %rax, %rdi
movq 0x28(%rsp), %rax
movl 0x78(%rax), %esi
callq 0x56f0
movq %rax, %rdi
leaq 0xb2bf(%rip), %rsi      # 0x7cf53
callq 0x53f0
movq %rax, %rdi
movq 0x3c9305(%rip), %rsi    # 0x43afa8
callq 0x5460
jmp 0x71d14
movl $0x19, %edi
callq 0x16ec0
movl %eax, 0x60(%rsp)
movl 0x60(%rsp), %esi
movq 0x3c92f5(%rip), %rdi    # 0x43afb8
callq 0x54e0
movq %rax, %rdi
leaq -0x1b0e2(%rip), %rsi    # 0x56bf0
callq 0x5160
movq %rax, %rdi
leaq 0xb26b(%rip), %rsi      # 0x7cf4c
callq 0x53f0
movq %rax, %rdi
leaq 0xb34b(%rip), %rsi      # 0x7d03b
callq 0x53f0
movq %rax, %rdi
movq 0x28(%rsp), %rax
movl 0x78(%rax), %esi
callq 0x56f0
movq %rax, %rdi
movq 0x3c9299(%rip), %rsi    # 0x43afa8
callq 0x5460
movl $0x19, %edi
callq 0x16ec0
movl %eax, 0x5c(%rsp)
movl 0x5c(%rsp), %esi
movq 0x3c928b(%rip), %rdi    # 0x43afb8
callq 0x54e0
movq %rax, %rdi
leaq -0x1b14c(%rip), %rsi    # 0x56bf0
callq 0x5160
movq %rax, %rdi
leaq 0xb22e(%rip), %rsi      # 0x7cf79
callq 0x53f0
movq %rax, %rdi
leaq 0xb2e1(%rip), %rsi      # 0x7d03b
callq 0x53f0
movq %rax, %rdi
movq 0x28(%rsp), %rax
movl 0x7c(%rax), %esi
callq 0x56f0
movq %rax, %rdi
movq 0x3c922f(%rip), %rsi    # 0x43afa8
callq 0x5460
movl $0x19, %edi
callq 0x16ec0
movl %eax, 0x58(%rsp)
movl 0x58(%rsp), %esi
movq 0x3c9221(%rip), %rdi    # 0x43afb8
callq 0x54e0
movq %rax, %rdi
leaq -0x1b1b6(%rip), %rsi    # 0x56bf0
callq 0x5160
movq %rax, %rdi
leaq 0xb1d0(%rip), %rsi      # 0x7cf85
callq 0x53f0
movq %rax, %rdi
leaq 0xb277(%rip), %rsi      # 0x7d03b
callq 0x53f0
movq %rax, %rdi
movq 0x28(%rsp), %rax
movl 0x80(%rax), %esi
callq 0x56f0
movq %rax, %rdi
movq 0x3c91c2(%rip), %rsi    # 0x43afa8
callq 0x5460
movl $0x19, %edi
callq 0x16ec0
movl %eax, 0x54(%rsp)
movl 0x54(%rsp), %esi
movq 0x3c91b4(%rip), %rdi    # 0x43afb8
callq 0x54e0
movq %rax, %rdi
leaq -0x1b223(%rip), %rsi    # 0x56bf0
callq 0x5160
movq %rax, %rdi
leaq 0xb172(%rip), %rsi      # 0x7cf94
callq 0x53f0
movq %rax, %rdi
leaq 0xb20a(%rip), %rsi      # 0x7d03b
callq 0x53f0
movq %rax, %rdi
movq 0x28(%rsp), %rax
movl 0x84(%rax), %esi
callq 0x56f0
movq %rax, %rdi
movq 0x3c9155(%rip), %rsi    # 0x43afa8
callq 0x5460
movl $0x19, %edi
callq 0x16ec0
movl %eax, 0x50(%rsp)
movl 0x50(%rsp), %esi
movq 0x3c9147(%rip), %rdi    # 0x43afb8
callq 0x54e0
movq %rax, %rdi
leaq -0x1b290(%rip), %rsi    # 0x56bf0
callq 0x5160
movq %rax, %rdi
leaq 0xb114(%rip), %rsi      # 0x7cfa3
callq 0x53f0
movq %rax, %rdi
leaq 0xb19d(%rip), %rsi      # 0x7d03b
callq 0x53f0
movq %rax, %rdi
movq 0x28(%rsp), %rax
movl 0x90(%rax), %esi
callq 0x56f0
movq %rax, %rdi
movq 0x3c90e8(%rip), %rsi    # 0x43afa8
callq 0x5460
movl $0x19, %edi
callq 0x16ec0
movl %eax, 0x4c(%rsp)
movl 0x4c(%rsp), %esi
movq 0x3c90da(%rip), %rdi    # 0x43afb8
callq 0x54e0
movq %rax, %rdi
leaq -0x1b2fd(%rip), %rsi    # 0x56bf0
callq 0x5160
movq %rax, %rdi
leaq 0xb0ba(%rip), %rsi      # 0x7cfb6
callq 0x53f0
movq %rax, %rdi
leaq 0xb130(%rip), %rsi      # 0x7d03b
callq 0x53f0
movq %rax, %rdi
movq 0x28(%rsp), %rax
movl 0x94(%rax), %esi
callq 0x56f0
movq %rax, %rdi
movq 0x3c907b(%rip), %rsi    # 0x43afa8
callq 0x5460
movl $0x19, %edi
callq 0x16ec0
movl %eax, 0x48(%rsp)
movl 0x48(%rsp), %esi
movq 0x3c906d(%rip), %rdi    # 0x43afb8
callq 0x54e0
movq %rax, %rdi
leaq -0x1b36a(%rip), %rsi    # 0x56bf0
callq 0x5160
movq %rax, %rdi
leaq 0xb05d(%rip), %rsi      # 0x7cfc6
callq 0x53f0
movq %rax, %rdi
leaq 0xb0c3(%rip), %rsi      # 0x7d03b
callq 0x53f0
movq 0x28(%rsp), %rdi
movq %rax, 0x8(%rsp)
callq 0x72840
movq 0x8(%rsp), %rdi
callq 0x5780
movq %rax, %rdi
movq 0x3c9008(%rip), %rsi    # 0x43afa8
callq 0x5460
movl $0x19, %edi
callq 0x16ec0
movl %eax, 0x44(%rsp)
movl 0x44(%rsp), %esi
movq 0x3c8ffa(%rip), %rdi    # 0x43afb8
callq 0x54e0
movq %rax, %rdi
leaq -0x1b3dd(%rip), %rsi    # 0x56bf0
callq 0x5160
movq %rax, %rdi
leaq 0xaff9(%rip), %rsi      # 0x7cfd5
callq 0x53f0
movq %rax, %rdi
leaq 0xb050(%rip), %rsi      # 0x7d03b
callq 0x53f0
movq 0x28(%rsp), %rdi
movq %rax, 0x10(%rsp)
cvtsi2sdl 0x7c(%rdi), %xmm0
movsd %xmm0, 0x18(%rsp)
callq 0x72840
movq 0x10(%rsp), %rdi
movq 0x28(%rsp), %rax
movaps %xmm0, %xmm1
movsd 0x18(%rsp), %xmm0
mulsd %xmm1, %xmm0
cvtsi2sdl 0x80(%rax), %xmm1
divsd %xmm1, %xmm0
callq 0x5780
movq %rax, %rdi
movq 0x3c8f6c(%rip), %rsi    # 0x43afa8
callq 0x5460
movl $0x19, %edi
callq 0x16ec0
movl %eax, 0x40(%rsp)
movl 0x40(%rsp), %esi
movq 0x3c8f5e(%rip), %rdi    # 0x43afb8
callq 0x54e0
movq %rax, %rdi
leaq -0x1b479(%rip), %rsi    # 0x56bf0
callq 0x5160
movq %rax, %rdi
leaq 0xaf6d(%rip), %rsi      # 0x7cfe5
callq 0x53f0
movq %rax, %rdi
leaq 0xafb4(%rip), %rsi      # 0x7d03b
callq 0x53f0
movq %rax, %rdi
movq 0x28(%rsp), %rax
movl 0x9c(%rax), %esi
callq 0x56f0
movq %rax, %rdi
movq 0x3c8eff(%rip), %rsi    # 0x43afa8
callq 0x5460
movl $0x19, %edi
callq 0x16ec0
movl %eax, 0x3c(%rsp)
movl 0x3c(%rsp), %esi
movq 0x3c8ef1(%rip), %rdi    # 0x43afb8
callq 0x54e0
movq %rax, %rdi
leaq -0x1b4e6(%rip), %rsi    # 0x56bf0
callq 0x5160
movq %rax, %rdi
leaq 0xaf14(%rip), %rsi      # 0x7cff9
callq 0x53f0
movq %rax, %rdi
leaq 0xaf47(%rip), %rsi      # 0x7d03b
callq 0x53f0
movq %rax, %rdi
movq 0x28(%rsp), %rax
movl 0xa0(%rax), %esi
callq 0x56f0
movq %rax, %rdi
movq 0x3c8e92(%rip), %rsi    # 0x43afa8
callq 0x5460
movl $0x19, %edi
callq 0x16ec0
movl %eax, 0x38(%rsp)
movl 0x38(%rsp), %esi
movq 0x3c8e84(%rip), %rdi    # 0x43afb8
callq 0x54e0
movq %rax, %rdi
leaq -0x1b553(%rip), %rsi    # 0x56bf0
callq 0x5160
movq %rax, %rdi
leaq 0xaeb5(%rip), %rsi      # 0x7d007
callq 0x53f0
movq %rax, %rdi
leaq 0xaeda(%rip), %rsi      # 0x7d03b
callq 0x53f0
movq %rax, %rdi
movq 0x28(%rsp), %rax
movl 0xa4(%rax), %esi
callq 0x56f0
movq %rax, %rdi
movq 0x3c8e25(%rip), %rsi    # 0x43afa8
callq 0x5460
movl $0x19, %edi
callq 0x16ec0
movl %eax, 0x34(%rsp)
movl 0x34(%rsp), %esi
movq 0x3c8e17(%rip), %rdi    # 0x43afb8
callq 0x54e0
movq %rax, %rdi
leaq -0x1b5c0(%rip), %rsi    # 0x56bf0
callq 0x5160
movq %rax, %rdi
leaq 0xae5c(%rip), %rsi      # 0x7d01b
callq 0x53f0
movq %rax, %rdi
leaq 0xae6d(%rip), %rsi      # 0x7d03b
callq 0x53f0
movq %rax, %rdi
movq 0x28(%rsp), %rax
movl 0xa8(%rax), %esi
callq 0x56f0
movq %rax, %rdi
movq 0x3c8db8(%rip), %rsi    # 0x43afa8
callq 0x5460
movl $0x19, %edi
callq 0x16ec0
movl %eax, 0x30(%rsp)
movl 0x30(%rsp), %esi
movq 0x3c8daa(%rip), %rdi    # 0x43afb8
callq 0x54e0
movq %rax, %rdi
leaq -0x1b62d(%rip), %rsi    # 0x56bf0
callq 0x5160
movq %rax, %rdi
leaq 0xae01(%rip), %rsi      # 0x7d02d
callq 0x53f0
movq %rax, %rdi
leaq 0xae00(%rip), %rsi      # 0x7d03b
callq 0x53f0
movq %rax, %rdi
movq 0x28(%rsp), %rax
movl 0xac(%rax), %esi
callq 0x56f0
movq %rax, %rdi
movq 0x3c8d4b(%rip), %rsi    # 0x43afa8
callq 0x5460
addq $0x78, %rsp
retq
nopw (%rax,%rax)