// File: /workspace/github_cpp_makefile_star2_O3/Cell-veto[P]postlhc/./lj.hpp
// Function: LennardJones::set_parameter(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char>> const&, double)
void set_parameter (string_ref name, double value)
    {
        if (! (value > 0.))
            rt_error ("Invalid " + name + " value");

        if (name == "strength")
            strength = value;
        else if (name == "scale")
            scale = value;
        else if (name == "cutoff")
            cutoff = value;
        else if (name == "sr_lr_split")
            sr_lr_split = value;
        else
            rt_error ("Invalid parameter: " + name);

        // after changing any parameters, the prober _must_ be re-initialized.
        prober.clear ();

        // precompute some interesting quantities
        rep_cutoff  = fmin (LJ_MINIMUM, cutoff, sr_lr_split);
        attr_cutoff = fmin (cutoff, sr_lr_split);
        lj_at_cutoff = evaluate_lj (sq (attr_cutoff));
        if (sr_lr_split > cutoff)
            probe_prefactor = 0.;
        else
            probe_prefactor = strength * 6.0001 * pow6 (scale)
                * fmax (1, fabs (2 / pow6 (sr_lr_split) - 1));
    }

// Assembly:
pushq %r14
pushq %rbx
subq $0x48, %rsp
movq %rsi, %r14
xorpd %xmm1, %xmm1
movsd %xmm0, 0x20(%rsp)
ucomisd %xmm1, %xmm0
jbe 0x42af91
movq %rdi, %rbx
leaq 0x19f406(%rip), %rsi    # 0x5ca246
movq %r14, %rdi
callq 0x4c2b40
movq %rbx, %rcx
testl %eax, %eax
je 0x42ae9c
leaq 0x1a31bf(%rip), %rsi    # 0x5ce015
movq %r14, %rdi
callq 0x4c2b40
testl %eax, %eax
je 0x42ae92
leaq 0x1a2a02(%rip), %rsi    # 0x5cd86b
movq %r14, %rdi
callq 0x4c2b40
testl %eax, %eax
je 0x42ae98
leaq 0x19e37c(%rip), %rsi    # 0x5c91f8
movq %r14, %rdi
callq 0x4c2b40
testl %eax, %eax
jne 0x42b005
leaq 0x8(%rbx), %rcx
jmp 0x42ae9c
leaq 0x10(%rbx), %rcx
jmp 0x42ae9c
leaq 0x18(%rbx), %rcx
movsd 0x20(%rsp), %xmm0
movsd %xmm0, (%rcx)
movabsq $-0x4010000000000000, %rax # imm = 0xBFF0000000000000
movq %rax, 0x40(%rbx)
movsd 0x8(%rbx), %xmm1
movsd 0x18(%rbx), %xmm2
movapd %xmm2, %xmm0
cmpunordsd %xmm2, %xmm0
movapd %xmm0, %xmm3
andpd %xmm1, %xmm3
minsd %xmm2, %xmm1
andnpd %xmm1, %xmm0
orpd %xmm3, %xmm0
movapd %xmm0, %xmm1
minsd 0x1a30b1(%rip), %xmm1   # 0x5cdf98
movsd %xmm1, 0x20(%rbx)
movlpd %xmm0, 0x28(%rbx)
mulsd %xmm0, %xmm0
movsd 0x19f2ab(%rip), %xmm1   # 0x5ca1a8
callq 0x4ecf40
movsd 0x19f22e(%rip), %xmm1   # 0x5ca138
addsd %xmm0, %xmm1
mulsd %xmm0, %xmm1
movsd %xmm1, 0x30(%rbx)
movsd 0x8(%rbx), %xmm0
xorpd %xmm1, %xmm1
ucomisd 0x18(%rbx), %xmm0
ja 0x42af84
movsd (%rbx), %xmm2
movsd 0x10(%rbx), %xmm1
mulsd 0x1a3068(%rip), %xmm2   # 0x5cdfa0
mulsd %xmm1, %xmm1
movapd %xmm1, %xmm3
mulsd %xmm1, %xmm3
mulsd %xmm1, %xmm3
mulsd %xmm0, %xmm0
movapd %xmm0, %xmm4
mulsd %xmm0, %xmm4
mulsd %xmm0, %xmm4
movsd 0x19f250(%rip), %xmm1   # 0x5ca1b0
divsd %xmm4, %xmm1
addsd 0x19f1cc(%rip), %xmm1   # 0x5ca138
andpd 0x19f0ec(%rip), %xmm1   # 0x5ca060
mulsd %xmm2, %xmm3
maxsd 0x19e098(%rip), %xmm1   # 0x5c9018
mulsd %xmm3, %xmm1
movsd %xmm1, 0x38(%rbx)
addq $0x48, %rsp
popq %rbx
popq %r14
retq
leaq 0x1a306d(%rip), %rsi    # 0x5ce005
leaq 0x28(%rsp), %rbx
movq %rbx, %rdi
movq %r14, %rdx
callq 0x407c44
leaq 0x1a305f(%rip), %rsi    # 0x5ce00e
movq %rbx, %rdi
callq 0x4c20e0
leaq 0x10(%rsp), %r14
movq %r14, -0x10(%r14)
movq (%rax), %rdx
movq %rax, %rcx
addq $0x10, %rcx
cmpq %rcx, %rdx
jne 0x42afda
movupd (%rcx), %xmm0
movupd %xmm0, (%r14)
jmp 0x42afe6
movq %rdx, (%rsp)
movq (%rcx), %rdx
movq %rdx, 0x10(%rsp)
movq 0x8(%rax), %rdx
movq %rsp, %rdi
movq %rdx, 0x8(%rdi)
movq %rcx, (%rax)
movq $0x0, 0x8(%rax)
movb $0x0, 0x10(%rax)
callq 0x43f581
leaq 0x19f284(%rip), %rsi    # 0x5ca290
movq %rsp, %rbx
movq %rbx, %rdi
movq %r14, %rdx
callq 0x407c44
movq %rbx, %rdi
callq 0x43f581
movq %rax, %rbx
leaq 0x10(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x42b073
movq 0x10(%rsp), %rsi
jmp 0x42b06b
movq %rax, %rbx
movq (%rsp), %rdi
cmpq %r14, %rdi
je 0x42b058
movq 0x10(%rsp), %rsi
incq %rsi
callq 0x442d20
jmp 0x42b058
movq %rax, %rbx
leaq 0x38(%rsp), %rax
movq -0x10(%rax), %rdi
cmpq %rax, %rdi
je 0x42b073
movq 0x38(%rsp), %rsi
incq %rsi
callq 0x442d20
movq %rbx, %rdi
callq 0x4f63f0
nop