cape.cfdx.options.aflr3: AFLR3 mesh generation options

This module provides a class to access command-line options to the AFLR3 mesh-generation program. It is specified in the "RunControl" section for modules that utilize the solver, which includes FUN3D.

The options in this module are among the command-line options to AFLR3. Other AFLR3 options that do not have specific methods defined in the cape.options.aflr3.aflr3 options class can be accessed using two generic functions:

class cape.cfdx.options.aflr3.aflr3

Class for AFLR3 command-line settings

Call:
>>> opts = aflr3(**kw)
Inputs:
kw: dict

Dictionary of AFLR3 command-line options

Outputs:
opts: cape.options.aflr3.aflr3

AFLR3 options interface

Versions:
  • 2016-04-04 @ddalle: First version

get_aflr3_BCFile(j=0)

Get the AFLR3 boundary condition file

Call:
>>> fname = opts.get_aflr3_BCFile()
Inputs:
opts: cape.options.Options

Options interface

Outputs:
fname: str

Name of file used to map BCs to AFLR3 surface file

Versions:
  • 2016-04-05 @ddalle: First version

get_aflr3_angblisimx(j=None)

Get the maximum angle between BL intersecting faces

Call:
>>> angbli = opts.get_aflr3_angblisimx(j=None)
Inputs:
opts: cape.options.Options

Options interface

j: int | None

Phase number

Outputs:
angbli: float (100 <= angbli < 180)

Max BL intersecting face angle

Versions:
  • 2016-04-04 @ddalle: First version

get_aflr3_angqbf(j=None)

Get the AFLR3 option angqbf

Setting this option to 0 will allow for mesh generation from lower-quality surface meshes.

Call:
>>> angqbf = opts.get_aflr3_angqbf(j=None)
Inputs:
opts: cape.options.Options

Options interface

j: {None} | int

Phase number

Outputs:
angqbf: {None} | float >= 0

AFLR3 option

Versions:
  • 2017-06-13 @ddalle: First version

get_aflr3_blc(j=None)

Get the AFLR3 BL option with prism layers

Call:
>>> blc = opts.get_aflr3_blc(j=None)
Inputs:
opts: cape.options.Options

Options interface

j: int | None

Phase number

Outputs:
blc: bool

Whether or not to create BL grid with prisms

Versions:
  • 2016-04-04 @ddalle: First version

get_aflr3_blds(j=None)

Get the initial boundary-layer spacing

Call:
>>> blds = opts.get_aflr3_blds(j=None)
Inputs:
opts: cape.options.Options

Options interface

j: int | None

Phase number

Outputs:
blds: float

Initial boundary layer spacing

Versions:
  • 2016-04-04 @ddalle: First version

get_aflr3_bli(j=None)

Get the number of AFLR3 prism layers

Call:
>>> bli = opts.get_aflr3_bli(j=None)
Inputs:
opts: cape.options.Options

Options interface

j: int | None

Phase number

Outputs:
bli: int > 0

Number of prism layers

Versions:
  • 2017-04-26 @ddalle: First version

get_aflr3_blr(j=None)

Get the AFLR3 boundary layer stretching ratio

Call:
>>> blr = opts.get_aflr3_blr(j=None)
Inputs:
opts: cape.options.Options

Options interface

j: int | None

Phase number

Outputs:
blr: float (1.0 < blr < 4.0)

Stretching ratio

Versions:
  • 2016-04-04 @ddalle: First version

get_aflr3_cdfr(j=None)

Get the maximum geometric growth rate in the volume region

Call:
>>> cdfr = opts.get_aflr3_cdfr(j=None)
Inputs:
opts: cape.options.Options

Options interface

j: int | None

Phase number

Outputs:
cdfr: {1.1} | float; 1 < cdfr <= 3

Max geometric growth rate

Versions:
  • 2016-05-06 @ddalle: First version

get_aflr3_cdfs(j=None)

Get the geometric growth exclusion zone

Call:
>>> cdfs = opts.get_aflr3_cdfr(j=None)
Inputs:
opts: cape.options.Options

Options interface

j: int | None

Phase number

Outputs:
cdfs: {None} | float; 0 <= cdfs <= 10

Exclusion zone size

Versions:
  • 2017-04-26 @ddalle: First version

get_aflr3_flags()

Get additional AFLR3 options using -key val format

Call:
>>> flags = opts.get_aflr3_flags()
Inputs:
opts: cape.options.Options

Options interface

Outputs:
flags: dict

Dictionary of additional AFLR3 options

Versions:
  • 2017-07-06 @ddalle: First version

get_aflr3_grow(j=None)

Get the growth option for AFLR3

Call:
>>> grow = opts.get_aflr3_grow(j=None)
Inputs:
opts: cape.options.Options

Options interface

j: int | None

Phase number

Outputs:
grow: 1 < float <= 2

Growth parameter

Versions:
  • 2017-04-26 @ddalle: First version

get_aflr3_i(j=0)

Get the input file for AFLR3

Call:
>>> fname = opts.get_aflr3_i(j=0)
Inputs:
opts: cape.options.Options

Options interface

j: int | None

Phase number

Outputs:
fname: instr

Name of input file (usually .surf)

Versions:
  • 2016-04-04 @ddalle: First version

get_aflr3_key(k, j=0, vdef=None)

Get AFLR3 AFLR3 option that uses key=val format

Call:
>>> v = opts.get_aflr3_key(k, j=0, vdef=None)
Inputs:
opts: cape.options.Options

Options interface

k: str

Name of key to query

j: {0} | None | int

Phase number

vdef: {None} | any

Manually specified default

Outputs:
v: any

Value of AFLR3 key k

Versions:
  • 2019-05-11 @ddalle: First version

get_aflr3_keys()

Get additional AFLR3 options using key=val format

Call:
>>> d = opts.get_aflr3_keys()
Inputs:
opts: cape.options.Options

Options interface

Outputs:
d: dict

Dictionary of additional AFLR3 options

Versions:
  • 2017-07-06 @ddalle: First version

get_aflr3_mdf(j=None)

Get the AFLR3 volume grid distribution flag

Call:
>>> mdf = opts.get_aflr3_mdf(j=None)
Inputs:
opts: cape.options.Options

Options interface

j: int | None

Phase number

Outputs:
mdf: 1 | {2}

Volume distribution flag

Versions:
  • 2017-04-26 @ddalle: First version

get_aflr3_mdsblf(j=None)

Get the BL spacing thickness factor option

Call:
>>> mdsblf = opts.get_aflr3_mdsblf(j=None)
Inputs:
opts: cape.options.Options

Options interface

j: int | None

Phase number

Outputs:
mdsblf: 0 | {1} | 2

BL spacing flag if mdl is not 0

Versions:
  • 2017-04-26 @ddalle: First version

get_aflr3_nqual(j=None)

Get the number of mesh quality improvement passes

Call:
>>> nqual = opts.get_aflr3_nqual(j=None)
Inputs:
opts: cape.options.Options

Options interface

j: int | None

Phase number

Outputs:
nqual: {2} | int 0 <= nqual <= 10

Number of mesh quality improvement passes

Versions:
  • 2016-05-07 @ddalle: First version

get_aflr3_o(j=0)

Get the output file for AFLR3

Call:
>>> fname = opts.get_aflr3_o(j=0)
Inputs:
opts: cape.options.Options

Options interface

j: int | None

Phase number

Outputs:
fname: instr

Name of output file (.ugrid)

Versions:
  • 2016-04-04 @ddalle: First version

set_aflr3_BCFile(fname, j=0)

Set the AFLR3 boundary condition file

Call:
>>> opts.set_aflr3_BCFile(fname)
Inputs:
opts: cape.options.Options

Options interface

fname: str

Name of file used to map BCs to AFLR3 surface file

Versions:
  • 2016-04-05 @ddalle: First version

set_aflr3_angblisimx(angblisimx, j=None)

Set the maximum angle between BL intersecting faces

Call:
>>> opts.get_aflr3_angblisimx(angbli, j=None)
Inputs:
opts: cape.options.Options

Options interface

angbli: float (100 <= angbli < 180)

Max BL intersecting face angle

j: int | None

Phase number

Versions:
  • 2016-04-04 @ddalle: First version

set_aflr3_angqbf(angqbf, j=None)

Get the AFLR3 option angqbf

Setting this option to 0 will allow for mesh generation from lower-quality surface meshes.

Call:
>>> opts.set_aflr3_angqbf(angqbf, j=None)
Inputs:
opts: cape.options.Options

Options interface

angqbf: {None} | float >= 0

AFLR3 option

j: {None} | int

Phase number

Versions:
  • 2017-06-13 @ddalle: First version

set_aflr3_blc(blc, j=None)

Get the AFLR3 BL option with prism layers

Call:
>>> opts.set_aflr3_blc(blc, j=None)
Inputs:
opts: cape.options.Options

Options interface

blc: bool

Whether or not to create BL grid with prisms

j: int | None

Phase number

Versions:
  • 2016-04-04 @ddalle: First version

set_aflr3_blds(blds, j=None)

Set the initial boundary-layer spacing

Call:
>>> opts.set_aflr3_blds(blds, j=None)
Inputs:
opts: cape.options.Options

Options interface

blds: float

Initial boundary layer spacing

j: int | None

Phase number

Versions:
  • 2016-04-04 @ddalle: First version

set_aflr3_bli(bli, j=None)

Set the number of AFLR3 prism layers

Call:
>>> opts.set_aflr3_bli(bli, j=None)
Inputs:
opts: cape.options.Options

Options interface

bli: int > 0

Maximum number of prism layers

j: int | None

Phase number

Versions:
  • 2017-04-26 @ddalle: First version

set_aflr3_blr(blr, j=None)

Get the AFLR3 boundary layer stretching ratio

Call:
>>> opts.set_aflr3_blr(blr, j=None)
Inputs:
opts: cape.options.Options

Options interface

blr: float (1.0 < blr < 4.0)

Stretching ratio

j: int | None

Phase number

Versions:
  • 2016-04-04 @ddalle: First version

set_aflr3_cdfr(cdfr, j=None)

Set the maximum geometric growth rate in the volume region

Call:
>>> opts.set_aflr3_cdfr(cdfr, j=None)
Inputs:
opts: cape.options.Options

Options interface

cdfr: float; 1 < cdfr <= 3

Max geometric growth rate

j: int | None

Phase number

Versions:
  • 2016-05-06 @ddalle: First version

set_aflr3_cdfs(cdfs, j=None)

Set the exclusion zone for geometric growth

Call:
>>> opts.set_aflr3_cdfs(cdfs, j=None)
Inputs:
opts: cape.options.Options

Options interface

cdfs: float; 0 <= cdfr <= 10

Geometric growth exclusion zone size

j: int | None

Phase number

Versions:
  • 2017-04-26 @ddalle: First version

set_aflr3_grow(grow, j=None)

Set the growth option for AFLR3

Call:
>>> opts.get_aflr3_grow(grow, j=None)
Inputs:
opts: cape.options.Options

Options interface

grow: 1 < float <= 2

Growth parameter

j: int | None

Phase number

Versions:
  • 2017-04-26 @ddalle: First version

set_aflr3_i(fname, j=None)

Set the input file for AFLR3

Call:
>>> opts.set_aflr3_i(fname, j=0)
Inputs:
opts: cape.options.Options

Options interface

fname: instr

Name of input file (usually .surf)

j: int | None

Phase number

Versions:
  • 2016-04-04 @ddalle: First version

set_aflr3_key(k, v, j=None)

Get AFLR3 AFLR3 option that uses key=val format

Call:
>>> opts.get_aflr3_key(k, v, j=0)
Inputs:
opts: cape.options.Options

Options interface

k: str

Name of key to query

v: any

Value of AFLR3 key k

j: {None} | int

Phase number

Versions:
  • 2019-05-11 @ddalle: First version

set_aflr3_mdf(mdf, j=None)

Set the AFLR3 volume grid distribution flag

Call:
>>> opts.set_aflr3_mdf(mdf, j=None)
Inputs:
opts: cape.options.Options

Options interface

mdf: 1 | {2}

Volume distribution flag

j: int | None

Phase number

Versions:
  • 2017-04-26 @ddalle: First version

set_aflr3_mdsblf(mdsblf, j=None)

Set the BL spacing thickness factor option

Call:
>>> opts.set_aflr3_mdsblf(mdsblf, j=None)
Inputs:
opts: cape.options.Options

Options interface

mdsblf: 0 | {1} | 2

BL spacing flag if mdl is not 0

j: int | None

Phase number

Versions:
  • 2017-04-26 @ddalle: First version

set_aflr3_nqual(nqual, j=None)

Set the number of mesh quality improvement passes

Call:
>>> opts.set_aflr3_nqual(nqual, j=None)
Inputs:
opts: cape.options.Options

Options interface

nqual: int 0 <= nqual <= 10

Number of mesh quality improvement passes

j: int | None

Phase number

Versions:
  • 2016-05-07 @ddalle: First version

set_aflr3_o(fname, j=None)

Set the output file for AFLR3

Call:
>>> opts.set_aflr3_o(fname, j=0)
Inputs:
opts: cape.options.Options

Options interface

fname: instr

Name of output file (.ugrid)

j: int | None

Phase number

Versions:
  • 2016-04-04 @ddalle: First version