Sweep 2.1.0: OpenFOAM case sets - #21
Merged
Merged
Conversation
A case set is a second job input beside the study (SweepOpenFOAMSetData, one SweepOpenFOAMCaseData per variant: name, tree, recipe, size), run by its own script SweepOpenFOAMSet.wit through Sweep.Plan(opts, cases). The study's OpenFOAM block carries what the cases share (threads, responses, artifacts); the variants carry no values. The study's layout is untouched, so a host without case sets refuses the unknown script, not every study. The plan carries the set (SweepPlanData member 2, host-only); the family form SweepFamilyOpenFOAMSet checks each case with the OpenFOAM model's rules under its name, refuses templated files, a tree or a recipe in the block, parameters, and any variant without exactly one case; its tasks are metadata only, each its own case. The result index labels a set variant by its case's name. Sweep.Model 2.1.0, Sweep 2.1.0. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
An OpenFOAM case set: every variant is its own ready case (a tree and a recipe of its own, no tokens), run as one sweep.
Sweep.Model2.1.0:SweepOpenFOAMSetData(oneSweepOpenFOAMCaseDataper variant: name, tree, recipe, cells, solver class);SweepPlanDatacarries the set (member 2, written and read by the host alone).Sweep2.1.0: the scriptSweepOpenFOAMSet.wittakes the set as a second job input beside the study (Sweep.Plan(opts, cases));SweepFamilyOpenFOAMSetchecks every case with the OpenFOAM model's rules under its name and refuses templated files, a tree or a recipe in the study block, parameters, and any variant without exactly one case; its tasks are metadata only, each its own case. The result index labels a set variant by its case's name.FoamTaskData.Casealready carries a whole case per task.Why a second job input
SweepOptionsDatarides default-mode MemoryPack, whose reader refuses a payload with members it does not know. A case-set member in the study would make a newer client fail every sweep on a host that has not taken this release. As a separate input under its own script, the study's layout stays what every released host reads; a host without case sets answers "Script 'SweepOpenFOAMSet' not found".Tests
Sweep tests 97 green locally, including the engine end to end on the fake kit (every variant its own case, labels by case, a broken case refused by name at the plan, a set beside a CalculiX study refused) and a plan written by an earlier host still reading.
🤖 Generated with Claude Code