{"id":"2f758ef4-b49f-4282-8b1f-369b1820e0cd","arxiv_id":"1908.00587","paper_version":3,"verdict":"ACCEPT","confidence":"HIGH","novelty_score":6.0,"correctness_risk":"low","formal_verification":"none","parameter_count":0,"one_line_summary":"nsCouette is a publicly available, hybrid MPI-OpenMP and GPU-accelerated pseudospectral DNS code for Taylor-Couette flow with optional heat transfer.","lead":"This paper introduces nsCouette, an open-source code that directly simulates turbulent fluid flow between rotating and heated cylinders, the Taylor-Couette geometry. It is designed to be fast, parallel, and easy to use, so turbulence researchers can run high-resolution simulations on anything from a laptop to a large supercomputer.","discovery_kind":"new_method","skeptic_critique":{"model":"deepseek-v4-flash","headline":"The new predictor-corrector and Boussinesq paths are validated only by an isothermal wave-speed test and low-Ra examples, so the advertised high-Re/high-Ra turbulent heat-transfer capability is not yet supported.","rationale":"The reader's weakest assumption points to the same area, so my agreement is 'agree'. I do not think the paper should be rejected: the code is public, has CI regression tests, and the architecture is sound. But the central claim is stronger than the evidence: a tool advertised for high-Re/high-Ra turbulent DNS is validated only in an isothermal transitional regime and a low-Ra transition sequence. That is exactly the kind of missing support that should be flagged. A single targeted benchmark, turbulent TC heat transfer compared with a published reference at two resolutions, would settle whether the gap is real. I would therefore adjust the verdict from ACCEPT to CONDITIONAL: accept the software-description paper, but require either that benchmark or an explicit softening of the validation claims for the thermal and high-Ra regime. The scalability claim, while also inherited from [5], is less load-bearing because Figure 1 and Refs. [5,10] support it and the new features do not alter the parallel architecture.","tokens_in":7751,"tokens_out":5858,"duration_ms":64564,"concrete_test":"Run nsCouette on a published turbulent Taylor–Couette heat-transfer configuration in the advertised regime, for example the Ra ~ 10^8, Re_i ~ 10^4 case of Lopez, Marques & Avila [15]; integrate to statistical stationarity and compare the time- and wall-averaged Nusselt number against the reference at two radial resolutions (e.g. Nr = 257 and Nr = 513) so that both quantitative agreement and grid convergence of the thermal path are tested. In the same run, reproduce the case with the older fixed-step scheme and with the dynamic predictor–corrector stepping; if the time-averaged Nui differs by more than the reference uncertainty or changes with resolution, the high-Ra validation claim is not supported.","verdict_should_be":"CONDITIONAL","load_bearing_attack":"The paper's central claim is that nsCouette is a verified and validated DNS code for Taylor–Couette flow, 'designed to compute turbulent flows at high Reynolds and Rayleigh numbers' (Abstract). The only independent validation described in the paper (Section 2.5) is a comparison of the wave speed in wavy vortex flow with the experiment of King et al. [12], matched to 10^-4. That case is isothermal and transitional; it does not exercise the Boussinesq/heat-transfer path at all and exercises the new predictor–corrector time stepping only indirectly. The illustrative example (Section 3) covers Ra = 2130–3550 at Re_i = 50, from the conductive basic state to a low-dimensional spiral state; it confirms the qualitative onset of convection but provides no quantitative turbulent heat-transfer benchmark. No Nusselt-number comparison to published turbulent data, no high-Rayleigh grid-convergence study, and no accuracy check of the new dynamic time-stepping is reported. Since 'V&V documented in [5]' predates the heat-transfer and predictor–corrector upgrades, the verified/validated claim is not established in the high-Re/high-Ra regime that is the code's stated purpose. This is a scoping and evidence gap, not evidence of an error.","agreement_with_reader":"agree"},"referee_report":{"model":"deepseek-v4-flash","summary":"The paper presents nsCouette, a publicly available pseudospectral DNS code for incompressible Taylor–Couette flow between independently rotating, optionally differentially heated concentric cylinders. The code uses Fourier–Galerkin discretization in the azimuthal and axial directions, high-order finite differences in the radial direction, a predictor–corrector time stepper with dynamic step-size control, and a hybrid MPI–OpenMP parallelization. The manuscript claims high scalability (Nr = O(10^3) on O(10^4) cores, citing prior work), provides runtime benchmarks on several HPC architectures and a GPU implementation, and describes a quality-assurance pipeline based on continuous integration, regression tests, and one quantitative validation of the wave speed in wavy vortex flow against the experiments of King et al. An illustrative simulation shows the onset of natural convection at Ra = 2130–3550 and Re_i = 50. The paper also introduces nsPipe as a pipe-flow derivative of the code.","tokens_in":8041,"tokens_out":8143,"duration_ms":75107,"significance":"If the stated claims hold, nsCouette is a valuable community resource: it fills the Taylor–Couette slot among publicly available spectral DNS solvers alongside channelflow and openpipeflow, and its hybrid MPI–OpenMP design is a sensible compromise for modern HPC systems. The paper's concrete strengths are the open-source release with user guide and example Makefiles, the reproducible input-file and checkpoint/restart workflow, the HDF5/xdmf visualization interface, the CI-based regression testing, and the 10^-4 wave-speed match to experiment for wavy vortex flow. The performance data over multiple architectures are useful. The novelty relative to the authors' earlier method paper [5] is primarily in the software engineering and new physical modules, not in numerical methodology. For users, the code's value depends on the validity of the new heat-transfer and time-stepping modules, which is exactly where the presented evidence is thinnest; a targeted validation would materially strengthen the paper.","major_comments":[{"comment":"The verification and validation evidence presented for the upgraded code does not cover the two main new features advertised in §2.1. The only quantitative external comparison is the isothermal wavy-vortex wave-speed test against King et al. [12], described in §2.5; this case does not exercise the Boussinesq heat-transfer implementation and only indirectly tests the predictor–corrector time stepping. The illustrative example in §3 spans Ra = 2130–3550 at Re_i = 50, and its sole quantitative check is that the initial Nui ≈ 1 matches the analytic conductive solution; no grid-convergence study, no Nusselt-number comparison for turbulent heat transfer, and no accuracy test of the dynamic time-step control are reported. Because the Abstract states that the code is 'designed to compute turbulent flows at high Reynolds and Rayleigh numbers', and Section 4 advertises this as the main purpose, the missing validation is load-bearing. I request either (i) an additional quantitative validation of the heated path at higher Ra (e.g., comparison of Nui with published experimental or numerical data, or with a known linear-stability threshold, including a resolution study) and a test of the predictor–corrector step-size controller, or (ii) a careful re-scoping of the claims to indicate the parameter regimes and code paths for which validation currently exists, with the missing benchmarks described as planned work.","section":"§2.5 and Abstract"},{"comment":"The claim that nsCouette 'enables highly resolved DNS with Nr = O(10^3) using O(10^4) cores' is attributed to [5], which describes the version before the predictor–corrector and heat-transfer upgrades. In the present paper, all new performance data in Figure 1 use at most 2560 cores (64 nodes) at Nr = 512, and the sentence 'the upgraded version presented here exhibits the same scalability' is an assertion without supporting measurements. Since high performance is a central selling point of the paper, the authors should either include strong- or weak-scaling data for the upgraded version at O(10^4) cores (even at a moderate Nr) or explicitly state that the scalability of the present version inherits from the unchanged parallel architecture of [5] and has not been re-measured at the largest scale.","section":"§2.3, Figure 1"}],"minor_comments":[{"comment":"Please specify whether the 'match up to 10^-4' tolerance in the wave-speed regression test is relative or absolute, and report the actual measured difference for the final validation run.","section":"§2.5"},{"comment":"The parameters Rei and Ra are not defined in the text; please define them (inner Reynolds number and Rayleigh number based on temperature difference and gap width) and define the symbols d and ν used in the time axis, or give the definitions explicitly in the user guide with a cross-reference.","section":"§3"},{"comment":"Please state explicitly whether the GPU implementation (C-CUDA) is included in the continuous-integration regression tests, and add a sentence on its numerical validation (e.g., comparison of representative flow statistics against the Fortran/CPU version) so users know it produces equivalent results, not only similar runtimes.","section":"§2.2"},{"comment":"The statement that CI configuration and V&V results are 'publicly accessible through the web interface of our development site' should be accompanied by a confirmation that the GitLab repository at gitlab.mpcdf.mpg.de can be viewed without registration, and a stable URL or CI status badge should be included.","section":"§2.5"},{"comment":"There is a typo in the first paragraph: 'Additionaly' should be 'Additionally'.","section":"§2.1"}],"recommendation":"major_revision","confidential_remarks":"The paper is a solid software release note with clear community value. My main reservation is the mismatch between the advertised capability (turbulent DNS at high Re and Ra, including heat transfer) and the quantitative validation presented for the new code paths. I do not see this as an error in the code or a fatal flaw, but it is an evidentiary gap that should be closed or explicitly acknowledged before publication. The manuscript is suitable for SoftwareX once the claims are tightened or a targeted validation is added."},"author_rebuttal":null,"desk_editor":{"model":"deepseek-v4-flash","letter":"Quick take: this is a useful, honest software paper. The new artifact is the public release of nsCouette with heat transfer, dynamic time stepping, GPU support, and nsPipe, and on the evidence here the code does what it says for the cases it shows. The gap worth noting is that the newly added thermal and time-stepping paths are only validated indirectly, so the high-Ra turbulent heat-transfer capability is advertised rather than demonstrated.\n\nWhat's genuinely good: the paper is not overselling. It clearly points to Shi et al. 2015 for the method and V&V, and describes the upgrades as upgrades. The CI regression setup is real quality assurance, and the one independent validation — wave speed in wavy vortex flow matching King et al. to 10^-4 — is a meaningful check. The illustrative example at low Ra reproduces the expected conductive-to-convective transition and provides a laptop-runnable starting point. The GPU comparison and nsPipe are useful extras. For a software paper, the citation pattern is fine; self-citations are to the prior method paper and a scaling report, both appropriate.\n\nSoft spots: the stress-test note gets the main one right. Section 2.5 validates an isothermal transitional flow; that exercises the spatial discretization and the old time integration more than the new predictor-corrector, and it doesn't touch the Boussinesq/heat-transfer implementation at all. The Ra = 2130–3550 examples are low-dimensional and offer no quantitative Nusselt comparison. So if someone wants to use the code for turbulent heat transfer at high Ra, they are taking the thermal path on trust plus whatever regression tests exist. That is a real scoping gap, not a sign the code is wrong. Also, the extreme scalability claim is inherited from [10] and not re-demonstrated here; again, not a reason to reject, but the abstract's 'highly scalable' should be read with that caveat.\n\nVerdict: this deserves a serious referee and likely acceptance after minor revisions. The missing piece — a turbulent Rayleigh–Bénard-like benchmark or a grid-convergence study for the thermal path — should be requested, but the paper is already an honest and useful contribution.","headline":"A solid, honest software paper that releases a useful public DNS code for Taylor–Couette flow; the main gap is that the new heat-transfer and time-stepping paths are only validated in low-Ra and isothermal cases, not in the high-Ra turbulent regime they advertise.","tokens_in":8540,"tokens_out":1603,"would_cite":true,"duration_ms":15616,"reading_group":"maybe","serious_thinker":"yes","would_accept_peer_review":true},"rs_alignment":null,"lean_confirmation":null,"pith_extraction":{"msc":[],"pacs":[],"model":"deepseek-v4-flash","headline":"The paper presents nsCouette, a publicly released solver for turbulent Taylor-Couette flow between independently rotating and differentially heated cylinders, and claims it is verified, scales to tens of thousands of cores, and supports…","keywords":["Wall-bounded turbulence","Rotating shear flow","Thermal convection","Direct numerical simulation","Taylor-Couette flow","Hybrid parallelization","GPU acceleration"],"falsifier":"Run the distributed code on a Taylor-Couette case with well-measured high-$Re$ torque or Nusselt-number data — for example a rotating inner cylinder at $Re \\sim 10^5$ with a matched radius ratio — and compare the simulated wall heat flux or torque with the laboratory value; a discrepancy beyond the stated resolution error would show that the code's intended turbulent regime is not covered by its current validation.","tokens_in":7570,"feed_emoji":"🌀","tokens_out":9957,"duration_ms":86569,"temperature":0.7,"pith_summary":"The paper presents nsCouette, a publicly released Fortran code that solves the incompressible Navier-Stokes equations for flow between two concentric cylinders that may rotate independently and be heated differently. The authors claim the solver is verified and validated, that its hybrid MPI-OpenMP parallelization scales to tens of thousands of processor cores, and that new features — predictor-corrector time stepping and a Boussinesq-like buoyancy term — extend it to transient and heat-transfer regimes. If those claims hold, researchers can run highly resolved direct numerical simulations of rotating wall-bounded turbulence and of convection between rotating cylinders without building their own solver from scratch.","feed_headline":"Open source code simulates hot rotating Taylor-Couette turbulence","feed_subtitle":"It scales to 10,000 cores and runs 3-17x faster on one GPU than a CPU node.","key_machinery":"The carrying mechanism is the hybrid MPI-OpenMP parallelization built around a one-dimensional slab decomposition of Fourier modes: linear terms are computed in OpenMP-parallel loops over modes, while nonlinear terms are handled through global MPI Alltoall transpositions and task-local transposes. This scheme relaxes the natural limit set by the number of radial points, letting the code reach $N_r = O(10^3)$ on $O(10^4)$ cores. Around it sit the pseudospectral Fourier-Galerkin discretization with high-order finite differences in the radial direction, a predictor-corrector time integrator with dynamic step-size control, a Boussinesq-like buoyancy term for temperature fields, and a C-CUDA GPU port of the same numerical scheme.","core_discovery":"The central claim is that nsCouette is a working, high-performance tool for direct numerical simulation of Taylor-Couette flow with optional differential heating. The spatial discretization is pseudospectral in the azimuthal and axial directions and uses high-order finite differences in the radial direction; time integration uses a predictor-corrector scheme with dynamic step control. For buoyancy, the code implements a Boussinesq-like approximation in which a negative temperature gradient is imposed radially and gravity acts axially. Quality assurance rests on continuous-integration regression tests and on validation against an experimentally measured wave speed in wavy vortex flow, which must match to $10^{-4}$. The paper reports that the upgraded version retains the earlier scalability — highly resolved runs with $N_r = O(10^3)$ radial points on $O(10^4)$ cores — and that a single-GPU CUDA version of the same numerical scheme runs three to seventeen times faster than one CPU node for problems that fit on the card.","pith_inferences":["The modular design suggests that changing the gravity direction or temperature-gradient sign is a small code change; if so, the same solver could be reconfigured for convection in curved geometries or stably stratified rotating flows. The paper does not make this claim.","The reported 3-17x single-GPU speedup over one CPU node is for problems small enough to fit on the card; my inference is that multi-GPU scaling, listed as under development, will decide whether GPUs compete for the largest runs rather than only intermediate sizes.","Because the only direct experimental validation is a wave-speed match in wavy vortex flow, I would treat the code's high-Re and high-Ra turbulent predictions as strong but not fully certified until additional benchmarks appear; this is an editorial caution, not a paper claim."],"forward_implications":["Users can reproduce and extend published DNS of Taylor-Couette flow without writing a new solver; the input-file interface and restart mechanism support changing resolution between runs.","Predictor-corrector time stepping makes transient scenarios — imposed disturbances, sudden changes in rotation rates — tractable, since the step size is adjusted dynamically.","The Boussinesq-like implementation allows direct computation of Nusselt-number evolution for differentially heated cylinders, as the illustrative runs at $Re_i = 50$ and increasing $Ra$ show.","The nsPipe variant transfers the same parallel infrastructure to turbulent pipe flow, and polymer-additive and two-phase extensions are reported as tested and planned for release."],"supporting_citations":[{"why":"This reference supplies the original hybrid MPI-OpenMP implementation, the verification and validation baseline, and the scalability evidence that the current version inherits.","marker":"[5]"},{"why":"This reference provides the predictor-corrector time-integration scheme and dynamic time-step control that the upgraded solver adopts.","marker":"[6]"},{"why":"This reference supplies the Boussinesq-like approximation used to add buoyancy and heat transfer to the Navier-Stokes solver.","marker":"[7]"},{"why":"This reference documents extreme-scaling runs of the code that support the claim of scalability to tens of thousands of cores.","marker":"[10]"},{"why":"This reference provides the experimental wave-speed measurement used in the final validation run for wavy vortex flow.","marker":"[12]"}],"fun_headline_variants":["Taylor-Couette turbulence code scales to 10,000 cores","GPU code for Taylor-Couette flow runs 17x faster than CPU","nsCouette delivers validated turbulence on 10k cores","Pseudospectral Taylor-Couette solver: 10k cores, GPU option"],"cache_read_input_tokens":3200,"weakest_assumption_plain":"The load-bearing premise is that the new time stepping and buoyancy physics, validated only against one experimental wave speed in wavy vortex flow, are correct across the fully turbulent high-$Re$ and high-$Ra$ regimes the code is meant to serve.","fun_headline_variants_meta":{"raw":{"variants":["Taylor-Couette turbulence code scales to 10,000 cores","GPU code for Taylor-Couette flow runs 17x faster than CPU","nsCouette delivers validated turbulence on 10k cores","Pseudospectral Taylor-Couette solver: 10k cores, GPU option"]},"model":"deepseek-v4-flash","effort":"low","cost_usd":0.000466,"raw_usage":{"total_tokens":2270,"prompt_tokens":834,"completion_tokens":1436,"prompt_tokens_details":{"cached_tokens":384},"prompt_cache_hit_tokens":384,"prompt_cache_miss_tokens":450,"completion_tokens_details":{"reasoning_tokens":1358}},"tokens_in":450,"tokens_out":1436,"duration_ms":12391,"temperature":1.0,"reasoning_tokens":1358,"cache_read_input_tokens":384,"cache_creation_input_tokens":0},"cache_creation_input_tokens":0},"created_at":"2026-08-14T15:45:13.668006+00:00","model_set":{"reader":"deepseek-v4-flash"},"falsifier":"Run the distributed code on a Taylor-Couette case with well-measured high-$Re$ torque or Nusselt-number data — for example a rotating inner cylinder at $Re \\sim 10^5$ with a matched radius ratio — and compare the simulated wall heat flux or torque with the laboratory value; a discrepancy beyond the stated resolution error would show that the code's intended turbulent regime is not covered by its current validation.","supporting_citations":[{"cited_title":"Guseva, A","cited_arxiv_id":null,"evidence_quote":"This reference provides the predictor-corrector time-integration scheme and dynamic time-step control that the upgraded solver adopts."},{"cited_title":null,"cited_arxiv_id":null,"evidence_quote":"This reference supplies the Boussinesq-like approximation used to add buoyancy and heat transfer to the Navier-Stokes solver."},{"cited_title":"Rampp, J","cited_arxiv_id":null,"evidence_quote":"This reference documents extreme-scaling runs of the code that support the claim of scalability to tens of thousands of cores."},{"cited_title":null,"cited_arxiv_id":null,"evidence_quote":"This reference provides the experimental wave-speed measurement used in the final validation run for wavy vortex flow."}],"review_version":1}