xref: /petsc/src/tao/unconstrained/impls/neldermead/neldermead.h (revision 9dd11ecf0918283bb567d8b33a92f53ac4ea7840)
1 #pragma once
2 #include <petsc/private/taoimpl.h>
3 
4 typedef struct {
5   PetscReal mu_ic;
6   PetscReal mu_oc;
7   PetscReal mu_r;
8   PetscReal mu_e;
9 
10   PetscReal lambda; /*  starting point delta for finding starting simplex */
11 
12   PetscInt  N;
13   PetscReal oneOverN;
14   Vec       Xbar, Xmuc, Xmur, Xmue;
15   Vec       G;
16   Vec      *simplex;
17 
18   PetscReal *f_values;
19   PetscInt  *indices;
20 
21   PetscInt nshrink;
22   PetscInt nexpand;
23   PetscInt nreflect;
24   PetscInt nincontract;
25   PetscInt noutcontract;
26 
27 } TAO_NelderMead;
28