{"kind":"task","effective_mode":"full","benchmark":{"kind":"benchmark","effective_mode":"full","slug":"scicode","formal_name":"SciCode","introduction":"科学研究の問題をコードで解く能力を評価するベンチマークです。親問題を複数の小問題に分けており、今回のdev取得では15親問題と50小問題の関係を保持します。\n\nSciCode evaluates the ability to solve scientific research problems through code. Problems are decomposed into subproblems; this dev import preserves the relationships between 15 parent problems and 50 subproblems.","introduction_ja":"","introduction_en":"","category":"Category not supplied","task_count":null,"acquisition_status":"Acquisition status not supplied","official_url":"https://huggingface.co/datasets/SciCode1/SciCode","indexing_mode":"noindex"},"task_id":"9e0bddec-b588-5334-9498-52b36b700052","task_key":"dev--2d432c99-259b-563a-bf78-fa4494054eb0--51~2e3","task_revision_id":"2","upstream_id":"51.3","short_description":"This function runs Velocity Verlet algorithm to integrate the positions and…","config":"","split":"dev","body":"{\"step_background\":\"Background\\nvelocity Verlet algorithm, similar to the leapfrog method, except that the velocity and position are calculated at the same value of the time variable (leapfrog does not, as the name suggests). This uses a similar approach, but explicitly incorporates velocity, solving the problem of the first time step in the basic Verlet algorithm:\\n\\n$\\\\begin{aligned} & \\\\mathbf{x}(t+\\\\Delta t)=\\\\mathbf{x}(t)+\\\\mathbf{v}(t) \\\\Delta t+\\\\frac{1}{2} \\\\mathbf{a}(t) \\\\Delta t^2 \\\\\\\\ & \\\\mathbf{v}(t+\\\\Delta t)=\\\\mathbf{v}(t)+\\\\frac{\\\\mathbf{a}(t)+\\\\mathbf{a}(t+\\\\Delta t)}{2} \\\\Delta t\\\\end{aligned}$\\n\\nIt can be shown that the error in the velocity Verlet is of the same order as in the basic Verlet. Note that the velocity algorithm is not necessarily more memory-consuming, because, in basic Verlet, we keep track of two vectors of position, while in velocity Verlet, we keep track of one vector of position and one vector of velocity. The standard implementation scheme of this algorithm is:\\nCalculate $\\\\mathbf{v}\\\\left(t+\\\\frac{1}{2} \\\\Delta t\\\\right)=\\\\mathbf{v}(t)+\\\\frac{1}{2} \\\\mathbf{a}(t) \\\\Delta t$.\\n2. Calculate $\\\\mathbf{x}(t+\\\\Delta t)=\\\\mathbf{x}(t)+\\\\mathbf{v}\\\\left(t+\\\\frac{1}{2} \\\\Delta t\\\\right) \\\\Delta t$.\\n3. Derive $\\\\mathbf{a}(t+\\\\Delta t)$ from the interaction potential using $\\\\mathbf{x}(t+\\\\Delta t)$.\\n4. Calculate $\\\\mathbf{v}(t+\\\\Delta t)=\\\\mathbf{v}\\\\left(t+\\\\frac{1}{2} \\\\Delta t\\\\right)+\\\\frac{1}{2} \\\\mathbf{a}(t+\\\\Delta t) \\\\Delta t$.\",\"step_description_prompt\":\"This function runs Velocity Verlet algorithm to integrate the positions and velocities of atoms interacting through Lennard Jones Potential forward for one time step according to Newton's Second Law. The function that aggregates the net forces on each atom for a system of atoms interacting through Lennard Jones Potential is given. The inputs of the function contain a float sigma, a float epsilon, positions, which is a N (N is the nubmer of atoms) by 3 array of float numbers, velocities, which is a N by 3 array of float, a float dt, and a float m. The outputs are new_positions and new_velosities, which are both N by 3 array of float numbers.\"}","display_format":"scicode-step","language":"","answer_status":"published","assets":[],"source_url":"https://huggingface.co/datasets/SciCode1/SciCode","history":"initial import","indexing_mode":"noindex","subproblems":[],"grids":[]}