"""
Module mw_optimize
Defined at smash/solver/optimize/mw_optimize.f90 lines 18-779
This module `mw_optimize` encapsulates all SMASH optimize.
This module is wrapped.
contains
[1] optimize_sbs
[2] transformation
[3] inv_transformation
[4] optimize_lbfgsb
[5] var_to_control
[6] control_to_var
[7] hyper_optimize_lbfgsb
[8] normalize_descritptor
[9] denormalize_descriptor
[10] hyper_problem_initialise
[11] hyper_var_to_control
[12] hyper_control_to_var
"""
from __future__ import print_function, absolute_import, division
from smash.solver._f90wrap_decorator import char_array_getter_handler, char_array_setter_handler
from smash.solver._f90wrap_decorator import char_getter_handler
from smash.solver._f90wrap_decorator import getter_index_handler, setter_index_handler
from smash.solver import _solver
import f90wrap.runtime
import logging
import numpy
_arrays = {}
_objs = {}
[docs]def optimize_sbs(self, mesh, input_data, parameters, states, output):
"""
optimize_sbs(self, mesh, input_data, parameters, states, output)
Defined at smash/solver/optimize/mw_optimize.f90 lines 46-200
Parameters
----------
setup : Setupdt
mesh : Meshdt
input_data : Input_Datadt
parameters : Parametersdt
states : Statesdt
output : Outputdt
Notes
-----
Step By Step optimization subroutine.
"""
_solver.f90wrap_optimize_sbs(setup=self._handle, mesh=mesh._handle, \
input_data=input_data._handle, parameters=parameters._handle, \
states=states._handle, output=output._handle)
[docs]def optimize_lbfgsb(self, mesh, input_data, parameters, states, output):
"""
optimize_lbfgsb(self, mesh, input_data, parameters, states, output)
Defined at smash/solver/optimize/mw_optimize.f90 lines 313-450
Parameters
----------
setup : Setupdt
mesh : Meshdt
input_data : Input_Datadt
parameters : Parametersdt
states : Statesdt
output : Outputdt
Notes
-----
L-BFGS-B optimization subroutine.
"""
_solver.f90wrap_optimize_lbfgsb(setup=self._handle, mesh=mesh._handle, \
input_data=input_data._handle, parameters=parameters._handle, \
states=states._handle, output=output._handle)
[docs]def optimize_hyper_lbfgsb(self, mesh, input_data, parameters, states, output):
"""
optimize_hyper_lbfgsb(self, mesh, input_data, parameters, states, output)
Defined at smash/solver/optimize/mw_optimize.f90 lines 512-642
Parameters
----------
setup : Setupdt
mesh : Meshdt
input_data : Input_Datadt
parameters : Parametersdt
states : Statesdt
output : Outputdt
Notes
-----
L-BFGS-B hyper optimization subroutine.
"""
_solver.f90wrap_optimize_hyper_lbfgsb(setup=self._handle, mesh=mesh._handle, \
input_data=input_data._handle, parameters=parameters._handle, \
states=states._handle, output=output._handle)
_array_initialisers = []
_dt_array_initialisers = []
try:
for func in _array_initialisers:
func()
except ValueError:
logging.debug('unallocated array(s) detected on import of module \
"mw_optimize".')
for func in _dt_array_initialisers:
func()