00001 /* -*- Mode: C; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ 00002 /* vim:set sw=2 sts=2 et cin: */ 00003 /* 00004 * This file is part of the MUSE Instrument Pipeline 00005 * Copyright (C) 2005-2011 European Southern Observatory 00006 * 00007 * This program is free software; you can redistribute it and/or modify 00008 * it under the terms of the GNU General Public License as published by 00009 * the Free Software Foundation; either version 2 of the License, or 00010 * (at your option) any later version. 00011 * 00012 * This program is distributed in the hope that it will be useful, 00013 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00014 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00015 * GNU General Public License for more details. 00016 * 00017 * You should have received a copy of the GNU General Public License 00018 * along with this program; if not, write to the Free Software 00019 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. 00020 */ 00021 #ifndef MUSE_OPTIMIZE_H 00022 #define MUSE_OPTIMIZE_H 00023 #include <cpl.h> 00024 00032 typedef struct { 00041 double ftol; 00050 double xtol; 00060 double gtol; 00065 int maxcall; 00070 int debug; 00071 } muse_cpl_optimize_control_t; 00072 00087 typedef cpl_error_code 00088 (muse_cpl_evaluate_func)(void *aData, cpl_array *aPar, cpl_array* aRetval); 00089 00090 cpl_error_code 00091 muse_cpl_optimize_lvmq(void *aData, cpl_array *aPar, int aSize, 00092 muse_cpl_evaluate_func *aFunction, 00093 muse_cpl_optimize_control_t *aCtrl); 00096 #endif /* MUSE_OPTIMIZE_H */
1.6.1