vibesketch.inputs.base¶
The input-writer interface.
A writer turns one species and one program-neutral job specification into
the input files of one program. It fails closed (AGENTS.md, ground rule 5):
before rendering anything it lists everything in the request it cannot
express, and if that list is not empty it raises WriterRefusal with
the reasons instead of guessing a keyword. The vibe-qc QCSchema adapter’s
stance is the model: reject what you cannot represent, never drop it.
Subclasses implement InputWriter._refusals() and
InputWriter._render(). InputWriter.write() is the only public
entry point and always runs the checks first, so no subclass can skip them.
Functions
|
The conformer writers use: the first, the one the document ranks highest. |
|
The refusal for a species without 3D coordinates, if it has none. |
Classes
|
Everything a writer produced for one job. |
|
One file of a program input. |
Translate a job specification into one program's input, or refuse. |
Exceptions
|
The writer cannot express the request; |
- class vibesketch.inputs.base.InputBundle(program, species, files)¶
Bases:
objectEverything a writer produced for one job.
- class vibesketch.inputs.base.InputFile(name, content, media_type)¶
Bases:
objectOne file of a program input.
- class vibesketch.inputs.base.InputWriter¶
Bases:
ABCTranslate a job specification into one program’s input, or refuse.
- tasks: ClassVar[frozenset[Literal['geometry', 'sp', 'opt', 'freq', 'opt+freq', 'tddft', 'nmr']]]¶
The tasks this writer can express.
- fields: ClassVar[frozenset[str]] = frozenset({})¶
The specification fields, besides
task, this writer can express.
- refusals(species, spec)¶
Everything in the request this writer cannot express; empty if it can.
- write(species, spec)¶
The input files for
speciesandspec; raisesWriterRefusal.- Parameters:
- Return type:
- exception vibesketch.inputs.base.WriterRefusal(program, reasons)¶
Bases:
ValueErrorThe writer cannot express the request;
reasonssays what and why.