Lines Matching refs:simplex
27 PetscCall(VecCopy(Xmu, nm->simplex[index])); in NelderMeadReplace()
33 PetscCall(VecAXPY(nm->Xbar, -nm->oneOverN, nm->simplex[nm->indices[nm->N]])); in NelderMeadReplace()
46 PetscCall(VecDuplicateVecs(tao->solution, nm->N + 1, &nm->simplex)); in TaoSetUp_NM()
65 PetscCall(VecDestroyVecs(nm->N + 1, &nm->simplex)); in TaoDestroy_NM()
131 PetscCall(VecCopy(tao->solution, nm->simplex[0])); in TaoSolve_NM()
132 PetscCall(TaoComputeObjective(tao, nm->simplex[0], &nm->f_values[0])); in TaoSolve_NM()
135 PetscCall(VecCopy(tao->solution, nm->simplex[i])); in TaoSolve_NM()
136 PetscCall(VecGetOwnershipRange(nm->simplex[i], &low, &high)); in TaoSolve_NM()
138 PetscCall(VecGetArray(nm->simplex[i], &x)); in TaoSolve_NM()
140 PetscCall(VecRestoreArray(nm->simplex[i], &x)); in TaoSolve_NM()
143 PetscCall(TaoComputeObjective(tao, nm->simplex[i], &nm->f_values[i])); in TaoSolve_NM()
150 for (i = 0; i < nm->N; i++) PetscCall(VecAXPY(Xbar, 1.0, nm->simplex[nm->indices[i]])); in TaoSolve_NM()
158 PetscCall(VecCopy(nm->simplex[nm->indices[0]], tao->solution)); in TaoSolve_NM()
165 PetscCall(VecAXPBYPCZ(Xmur, 1 + nm->mu_r, -nm->mu_r, 0, Xbar, nm->simplex[nm->indices[nm->N]])); in TaoSolve_NM()
177 … PetscCall(VecAXPBYPCZ(Xmue, 1 + nm->mu_e, -nm->mu_e, 0, Xbar, nm->simplex[nm->indices[nm->N]])); in TaoSolve_NM()
188 … PetscCall(VecAXPBYPCZ(Xmuc, 1 + nm->mu_oc, -nm->mu_oc, 0, Xbar, nm->simplex[nm->indices[nm->N]])); in TaoSolve_NM()
197 … PetscCall(VecAXPBYPCZ(Xmuc, 1 + nm->mu_ic, -nm->mu_ic, 0, Xbar, nm->simplex[nm->indices[nm->N]])); in TaoSolve_NM()
208 PetscCall(VecAXPBY(nm->simplex[nm->indices[i]], 1.5, -0.5, nm->simplex[nm->indices[0]])); in TaoSolve_NM()
209 … PetscCall(TaoComputeObjective(tao, nm->simplex[nm->indices[i]], &nm->f_values[nm->indices[i]])); in TaoSolve_NM()
211 PetscCall(VecAXPBY(Xbar, 1.5 * nm->oneOverN, -0.5, nm->simplex[nm->indices[0]])); in TaoSolve_NM()
214 PetscCall(VecAXPY(Xbar, nm->oneOverN, nm->simplex[nm->indices[nm->N]])); in TaoSolve_NM()
217 PetscCall(VecAXPY(Xbar, -nm->oneOverN, nm->simplex[nm->indices[nm->N]])); in TaoSolve_NM()
252 nm->simplex = NULL; in TaoCreate_NM()