cape.pykes.case
: Kestrel individual-case module¶
This module provides interfaces to run a single case of Kestrel from
the case folder. It also provides tools such as GetCurrentIter()
,
which determines how many cases have been run.
The functions of this module expect to be run from a Kestrel case folder
created by cape.pykes
.
- class cape.pykes.casecntl.CaseRunner(fdir=None)¶
- extend_case(m: int = 1, nmax: int | None = None) int | None ¶
Extend the case by one execution of final phase
The
cape.pykes
version is customized because the XML file must know the final iteration, not just the number of additional iters.- Call:
>>> nnew = runner.extend_case(m=1, nmax=None)
- Inputs:
- runner:
CaseRunner
Controller to run one case of solver
- m: {
1
} |int
Number of additional times to execute final phase
- nmax: {
None
} |int
Do not exceed this iteration
- runner:
- Outputs:
- nnew:
None
|int
Number of iters after extension, if changed
- nnew:
- Versions:
2024-08-26
@ddalle
: v1.0
- finalize_files(j: int)¶
Clean up files after running one cycle of phase j
- Call:
>>> runner.finalize_files(j)
- Inputs:
- runner:
CaseRunner
Controller to run one case of solver
- j:
int
Phase number
- runner:
- Versions:
2021-11-05
@ddalle
: v1.02023-07-10
@ddalle
: v1.1; instance method
- getx_iter()¶
Get the most recent iteration number
- Call:
>>> n = runner.getx_iter()
- Inputs:
- runner:
CaseRunner
Controller to run one case of solver
- runner:
- Outputs:
- n:
int
|None
Last iteration number
- n:
- Versions:
2021-11-05
@ddalle
: v1.02023-07-10
@ddalle
: v1.1; instance method
- getx_restart_iter()¶
Get the iteration at which a case would restart
- Call:
>>> n = runner.getx_restart_iter()
- Inputs:
- runner:
CaseRunner
Controller to run one case of solver
- runner:
- Outputs:
- n:
int
|None
Last iteration number
- n:
- Versions:
2024-04-18
@ddalle
: v1.0
- init_post()¶
Custom initialization for pyfun
- Call:
>>> runner.init_post()
- Inputs:
- runner:
CaseRunner
Controller to run one case of solver
- runner:
- Versions:
2023-07-10
@ddalle
: v1.0
- prepare_files(j: int)¶
Prepare files appropriate to run phase j
- Call:
>>> runner.prepare_files(j)
- Inputs:
- runner:
CaseRunner
Controller to run one case of solver
- j:
int
Phase number
- runner:
- Versions:
2021-11-02
@ddalle
: v1.02023-07-10
@ddalle
: v1.1; instance method
- read_xml(j=None)¶
Read Kestrel
.xml
control file for one phase- Call:
>>> xml = read_xml(rc=None, j=None)
- Inputs:
- runner:
CaseRunner
Controller to run one case of solver
- j: {
None
} |int
Phase number
- runner:
- Outputs:
- xml:
JobXML
XML control file interface
- xml:
- Versions:
2021-11-02
@ddalle
: v1.02023-07-10
@ddalle
: v1.1; instance method
- run_phase(j: int)¶
Run one pass of one phase
- Call:
>>> runner.run_phase(j)
- Inputs:
- runner:
CaseRunner
Controller to run one case of solver
- j:
int
Phase number
- runner:
- Versions:
2021-11-02
@ddalle
: v1.02023-07-10
@ddalle
: v1.1; instance method
- cape.pykes.casecntl.get_glob_latest(fglb)¶
Find the most recently edited file matching a glob
- cape.pykes.casecntl.link_glob_latest(fname, fglb)¶
Link the most recent file to a generic Tecplot file name