The OpenD Programming Language

mir_optimize_least_squares_s

Low level extern(C) wrapper instatiation.

extern (C) @safe nothrow @nogc pragma(inline, false) @system nothrow @nogc pure
mir_optimize_least_squares_s
(
scope const ref LeastSquaresSettings!float settings
,
size_t m
,
size_t n
,
float* x
,
const(float)* l
,
const(float)* u
,
Slice!(float*) work
,,
scope void* fContext
,,
scope void* gContext = null
,
scope LeastSquaresJacobianBetterC!float g = null
,
scope void* tmContext = null
,)

Parameters

settings LeastSquaresSettings!float

Levenberg-Marquardt data structure

fContext void*

context for the function

f LeastSquaresFunctionBetterC!float

n -> m function

gContext void*

context for the Jacobian (optional)

g LeastSquaresJacobianBetterC!float

m × n Jacobian (optional)

tm LeastSquaresThreadManagerBetterC

thread manager for finite difference jacobian approximation in case of g is null (optional)

m size_t

length (dimension) of y = f(x)

n size_t

length (dimension) of X

x float*

initial (in) and final (out) X value

l const(float)*

lower X bound

u const(float)*

upper X bound

f LeastSquaresFunctionBetterC!float

n -> m function

fContext void*

f context

g LeastSquaresJacobianBetterC!float

m × n Jacobian (optional)

gContext void*

g context

tm LeastSquaresThreadManagerBetterC

thread manager for finite difference jacobian approximation in case of g is null (optional)

tmContext void*

tm context

work Slice!(float*)

floating point workspace length of at least mir_least_squares_work_length

iwork Slice!(lapackint*)

floating point workspace length of at least mir_least_squares_iwork_length

Meta