// File: PeterDenton[P]Nu-Pert/src/Figures.cpp
// Function: Figures::Eigenvalues_Bases()
void Eigenvalues_Bases()
{
	double a;
	std::ofstream data[2];
	data[0].open("data/Eigenvalues_Bases_NO.txt");
	data[1].open("data/Eigenvalues_Bases_IO.txt");

	for (int i = 0; i < 2; i++)
	{
		set_ordering(i == 0);
		for (double Y = -40; Y <= 40; Y += 0.01)
		{
			a = Y * Y_to_a;

			data[i] << Y << " " << Tilde::la(a) << " " << Tilde::lb(a) << " " << Tilde::lc(a) << " ";
			data[i] << Hat::lm(a) << " " << Hat::l0(a) << " " << Hat::lp(a) << " ";
			data[i] << Check::l10(a) << " " << Check::l20(a) << " " << Check::l30(a) << " ";

			data[i] << std::endl;
		}
		data[i].close();
	}
}

// Assembly:
subq $0x568, %rsp            # imm = 0x568
leaq 0x160(%rsp), %rax
movq %rax, 0x130(%rsp)
movq %rax, %rcx
addq $0x400, %rcx            # imm = 0x400
movq %rcx, 0x138(%rsp)
movq %rax, 0x140(%rsp)
movq 0x140(%rsp), %rdi
movq %rdi, 0x128(%rsp)
callq 0x2260
jmp 0x124e8
movq 0x138(%rsp), %rcx
movq 0x128(%rsp), %rax
addq $0x200, %rax            # imm = 0x200
cmpq %rcx, %rax
movq %rax, 0x140(%rsp)
jne 0x124d1
leaq 0x296d(%rip), %rsi      # 0x14e7f
leaq 0x160(%rsp), %rdi
movl $0x10, %edx
callq 0x2040
jmp 0x12526
leaq 0x360(%rsp), %rdi
leaq 0x2968(%rip), %rsi      # 0x14e9d
movl $0x10, %edx
callq 0x2040
jmp 0x12541
movl $0x0, 0x150(%rsp)
cmpl $0x2, 0x150(%rsp)
jge 0x12a0a
movl 0x150(%rsp), %eax
testl %eax, %eax
sete %al
movzbl %al, %edi
callq 0x49d0
jmp 0x12570
movsd 0x27f0(%rip), %xmm0     # 0x14d68
movsd %xmm0, 0x148(%rsp)
movsd 0x27e7(%rip), %xmm0     # 0x14d70
ucomisd 0x148(%rsp), %xmm0
jb 0x129d7
movsd 0x148(%rsp), %xmm0
leaq 0x1d38(%rip), %rax      # 0x142e0
movsd (%rax), %xmm1
mulsd %xmm1, %xmm0
movsd %xmm0, 0x560(%rsp)
movslq 0x150(%rsp), %rax
shlq $0x9, %rax
leaq 0x160(%rsp,%rax), %rdi
movsd 0x148(%rsp), %xmm0
callq 0x22c0
movq %rax, 0x120(%rsp)
jmp 0x125e5
movq 0x120(%rsp), %rdi
leaq 0x25a2(%rip), %rsi      # 0x14b96
callq 0x2160
movq %rax, 0x118(%rsp)
jmp 0x12603
movsd 0x560(%rsp), %xmm0
callq 0xfbe0
movsd %xmm0, 0x110(%rsp)
jmp 0x1261c
movsd 0x110(%rsp), %xmm0
movq 0x118(%rsp), %rdi
callq 0x22c0
movq %rax, 0x108(%rsp)
jmp 0x1263c
movq 0x108(%rsp), %rdi
leaq 0x254b(%rip), %rsi      # 0x14b96
callq 0x2160
movq %rax, 0x100(%rsp)
jmp 0x1265a
movsd 0x560(%rsp), %xmm0
callq 0xfc30
movsd %xmm0, 0xf8(%rsp)
jmp 0x12673
movsd 0xf8(%rsp), %xmm0
movq 0x100(%rsp), %rdi
callq 0x22c0
movq %rax, 0xf0(%rsp)
jmp 0x12693
movq 0xf0(%rsp), %rdi
leaq 0x24f4(%rip), %rsi      # 0x14b96
callq 0x2160
movq %rax, 0xe8(%rsp)
jmp 0x126b1
movsd 0x560(%rsp), %xmm0
callq 0xfc60
movsd %xmm0, 0xe0(%rsp)
jmp 0x126ca
movsd 0xe0(%rsp), %xmm0
movq 0xe8(%rsp), %rdi
callq 0x22c0
movq %rax, 0xd8(%rsp)
jmp 0x126ea
movq 0xd8(%rsp), %rdi
leaq 0x249d(%rip), %rsi      # 0x14b96
callq 0x2160
jmp 0x12700
movslq 0x150(%rsp), %rax
shlq $0x9, %rax
leaq 0x160(%rsp,%rax), %rax
movq %rax, 0xc8(%rsp)
movsd 0x560(%rsp), %xmm0
callq 0x9360
movsd %xmm0, 0xd0(%rsp)
jmp 0x12735
movsd 0xd0(%rsp), %xmm0
movq 0xc8(%rsp), %rdi
callq 0x22c0
movq %rax, 0xc0(%rsp)
jmp 0x12755
movq 0xc0(%rsp), %rdi
leaq 0x2432(%rip), %rsi      # 0x14b96
callq 0x2160
movq %rax, 0xb8(%rsp)
jmp 0x12773
movsd 0x560(%rsp), %xmm0
callq 0x9510
movsd %xmm0, 0xb0(%rsp)
jmp 0x1278c
movsd 0xb0(%rsp), %xmm0
movq 0xb8(%rsp), %rdi
callq 0x22c0
movq %rax, 0xa8(%rsp)
jmp 0x127ac
movq 0xa8(%rsp), %rdi
leaq 0x23db(%rip), %rsi      # 0x14b96
callq 0x2160
movq %rax, 0xa0(%rsp)
jmp 0x127ca
movsd 0x560(%rsp), %xmm0
callq 0x9280
movsd %xmm0, 0x98(%rsp)
jmp 0x127e3
movsd 0x98(%rsp), %xmm0
movq 0xa0(%rsp), %rdi
callq 0x22c0
movq %rax, 0x90(%rsp)
jmp 0x12803
movq 0x90(%rsp), %rdi
leaq 0x2384(%rip), %rsi      # 0x14b96
callq 0x2160
jmp 0x12819
movslq 0x150(%rsp), %rax
shlq $0x9, %rax
leaq 0x160(%rsp,%rax), %rax
movq %rax, 0x80(%rsp)
movsd 0x560(%rsp), %xmm0
callq 0x2880
movsd %xmm0, 0x88(%rsp)
jmp 0x1284e
movsd 0x88(%rsp), %xmm0
movq 0x80(%rsp), %rdi
callq 0x22c0
movq %rax, 0x78(%rsp)
jmp 0x1286b
movq 0x78(%rsp), %rdi
leaq 0x231f(%rip), %rsi      # 0x14b96
callq 0x2160
movq %rax, 0x70(%rsp)
jmp 0x12883
movsd 0x560(%rsp), %xmm0
callq 0x2af0
movsd %xmm0, 0x68(%rsp)
jmp 0x12899
movsd 0x68(%rsp), %xmm0
movq 0x70(%rsp), %rdi
callq 0x22c0
movq %rax, 0x60(%rsp)
jmp 0x128b0
movq 0x60(%rsp), %rdi
leaq 0x22da(%rip), %rsi      # 0x14b96
callq 0x2160
movq %rax, 0x58(%rsp)
jmp 0x128c8
movsd 0x560(%rsp), %xmm0
callq 0x2d60
movsd %xmm0, 0x50(%rsp)
jmp 0x128de
movsd 0x50(%rsp), %xmm0
movq 0x58(%rsp), %rdi
callq 0x22c0
movq %rax, 0x48(%rsp)
jmp 0x128f5
movq 0x48(%rsp), %rdi
leaq 0x2295(%rip), %rsi      # 0x14b96
callq 0x2160
jmp 0x12908
movslq 0x150(%rsp), %rax
shlq $0x9, %rax
leaq 0x160(%rsp,%rax), %rdi
movq 0x66a5(%rip), %rsi      # 0x18fc8
callq 0x2180
jmp 0x1292a
jmp 0x1292c
movsd 0x2444(%rip), %xmm0     # 0x14d78
addsd 0x148(%rsp), %xmm0
movsd %xmm0, 0x148(%rsp)
jmp 0x12581
movq 0x130(%rsp), %rcx
movq %rax, %rsi
movq 0x128(%rsp), %rax
movq %rsi, 0x158(%rsp)
movl %edx, 0x154(%rsp)
cmpq %rax, %rcx
movq %rax, 0x40(%rsp)
je 0x129a4
movq 0x40(%rsp), %rdi
addq $-0x200, %rdi           # imm = 0xFE00
movq %rdi, 0x38(%rsp)
callq 0x2220
movq 0x130(%rsp), %rcx
movq 0x38(%rsp), %rax
cmpq %rcx, %rax
movq %rax, 0x40(%rsp)
jne 0x12977
jmp 0x12a80
movq %rax, %rcx
movl %edx, %eax
movq %rcx, 0x158(%rsp)
movl %eax, 0x154(%rsp)
leaq 0x160(%rsp), %rax
movq %rax, 0x28(%rsp)
addq $0x400, %rax            # imm = 0x400
movq %rax, 0x30(%rsp)
jmp 0x12a54
movslq 0x150(%rsp), %rax
shlq $0x9, %rax
leaq 0x160(%rsp,%rax), %rdi
callq 0x2210
jmp 0x129f2
jmp 0x129f4
movl 0x150(%rsp), %eax
addl $0x1, %eax
movl %eax, 0x150(%rsp)
jmp 0x1254c
leaq 0x160(%rsp), %rax
movq %rax, 0x18(%rsp)
addq $0x400, %rax            # imm = 0x400
movq %rax, 0x20(%rsp)
movq 0x20(%rsp), %rdi
addq $-0x200, %rdi           # imm = 0xFE00
movq %rdi, 0x10(%rsp)
callq 0x2220
movq 0x18(%rsp), %rcx
movq 0x10(%rsp), %rax
cmpq %rcx, %rax
movq %rax, 0x20(%rsp)
jne 0x12a22
addq $0x568, %rsp            # imm = 0x568
retq
movq 0x30(%rsp), %rdi
addq $-0x200, %rdi           # imm = 0xFE00
movq %rdi, 0x8(%rsp)
callq 0x2220
movq 0x28(%rsp), %rcx
movq 0x8(%rsp), %rax
cmpq %rcx, %rax
movq %rax, 0x30(%rsp)
jne 0x12a54
jmp 0x12a80
movq 0x158(%rsp), %rdi
callq 0x2290
nopl (%rax)