Parent Directory | Revision Log

Revision **1487** -
(**show annotations**)
(**download**)
(**as text**)

*Sun Jun 10 05:09:34 2007 UTC*
(13 years, 2 months ago)
by *jpye*

File MIME type: text/x-chdr

File size: 2137 byte(s)

File MIME type: text/x-chdr

File size: 2137 byte(s)

Changes to the way in which sovlers are registered, to facilitate dynamically-loaded solvers. Also split much of the 'solver' stuff from slv.c (in the system directory) out into new file solver/solver.c and added matching solver/solver.h. Solver IDs are now fixed-- they don't change, and are stored in a list instead of in an array.

1 | /* |

2 | * SLV: Ascend Nonlinear Solver |

3 | * by Karl Michael Westerberg |

4 | * Created: 2/6/90 |

5 | * Version: $Revision: 1.7 $ |

6 | * Version control file: $RCSfile: slv7.h,v $ |

7 | * Date last modified: $Date: 1997/07/18 12:16:33 $ |

8 | * Last modified by: $Author: mthomas $ |

9 | * |

10 | * This file is part of the SLV solver. |

11 | * |

12 | * Copyright (C) 1990 Karl Michael Westerberg |

13 | * Copyright (C) 1993 Joseph Zaher |

14 | * Copyright (C) 1994 Joseph Zaher, Benjamin Andrew Allan |

15 | * |

16 | * The SLV solver is free software; you can redistribute |

17 | * it and/or modify it under the terms of the GNU General Public License as |

18 | * published by the Free Software Foundation; either version 2 of the |

19 | * License, or (at your option) any later version. |

20 | * |

21 | * The SLV solver is distributed in hope that it will be |

22 | * useful, but WITHOUT ANY WARRANTY; without even the implied warranty of |

23 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |

24 | * General Public License for more details. |

25 | * |

26 | * You should have received a copy of the GNU General Public License along with |

27 | * the program; if not, write to the Free Software Foundation, Inc., 675 |

28 | * Mass Ave, Cambridge, MA 02139 USA. Check the file named COPYING. |

29 | * COPYING is found in ../compiler. |

30 | */ |

31 | |

32 | /** @file |

33 | * Nonlinear Solver (NGSlv) registration module. |

34 | * <pre> |

35 | * Contents: NGSlv module |

36 | * |

37 | * Authors: Ben Allan, Kenneth Tyner |

38 | * |

39 | * Dates: 02/96 - copy of QRSlv: Modifications Pending |

40 | * </pre> |

41 | * @todo Update Dates note when modifactions complete. |

42 | */ |

43 | |

44 | #ifndef ASC_SLV7_H |

45 | #define ASC_SLV7_H |

46 | |

47 | #include "solver.h" |

48 | |

49 | /** @addtogroup solver Solver |

50 | @{ |

51 | */ |

52 | |

53 | typedef struct slv7_system_structure *slv7_system_t; |

54 | |

55 | int slv7_register(SlvFunctionsT *f); |

56 | /**< |

57 | * Registration function for the ASCEND NGSlv solver. |

58 | * This is the function that tells the system about the NGSlv solver. |

59 | * Our index is not necessarily going to be 0. That everything here is |

60 | * named slv7* is just a historical event. |

61 | * |

62 | * @param f SlvFunctionsT to receive the solver registration info. |

63 | * @return Returns non-zero on error (e.g. f == NULL), zero if all is ok. |

64 | */ |

65 | |

66 | /* @} */ |

67 | |

68 | #endif /* ASC_SLV7_H */ |

69 |

john.pye@anu.edu.au | ViewVC Help |

Powered by ViewVC 1.1.22 |