/[ascend]/trunk/base/generic/packages/sensitivity.h
ViewVC logotype

Annotation of /trunk/base/generic/packages/sensitivity.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1169 - (hide annotations) (download) (as text)
Wed Jan 17 12:17:25 2007 UTC (15 years, 7 months ago) by johnpye
File MIME type: text/x-chdr
File size: 3163 byte(s)
Fixed EXTERNAL do_solve(instance)
Improved error message in ascParse.
Added collapsingcan2 model that uses freesteam steam properties.
1 johnpye 975 /* ASCEND modelling environment
2 johnpye 187 Copyright (C) 1990-2006 Carnegie-Mellon University
3 jds 54
4 johnpye 187 This program is free software; you can redistribute it and/or modify
5     it under the terms of the GNU General Public License as published by
6     the Free Software Foundation; either version 2 of the License, or
7     (at your option) any later version.
8 aw0a 27
9 johnpye 187 This program is distributed in the hope that it will be useful,
10     but WITHOUT ANY WARRANTY; without even the implied warranty of
11     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12     GNU General Public License for more details.
13 aw0a 27
14 johnpye 187 You should have received a copy of the GNU General Public License
15     along with this program; if not, write to the Free Software
16     Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
17     This file is part of the SLV solver.
18 johnpye 975 *//** @file
19     Sensitivity add-on for ASCEND
20     by Tom Epperly, Kirk Abbot
21 aw0a 27
22 johnpye 1163 -- notes here have been moved to models/sensitivity/sensitivity.c --
23 johnpye 187 */
24    
25 johnpye 669 #ifndef ASC_SENSITIVITY_H
26     #define ASC_SENSITIVITY_H
27    
28 johnpye 399 #include <utilities/ascConfig.h>
29     #include <compiler/instance_enum.h>
30     #include <compiler/compiler.h>
31     #include <general/list.h>
32     #include <compiler/extfunc.h>
33 johnpye 669 #include <solver/mtx.h>
34     #include <solver/mtx_basic.h>
35     #include <solver/mtx_perms.h>
36     #include <solver/mtx_query.h>
37     #include <solver/linsol.h>
38     #include <solver/linsolqr.h>
39     #include <solver/slv_types.h>
40     #include <solver/var.h>
41     #include <solver/rel.h>
42     #include <solver/discrete.h>
43     #include <solver/conditional.h>
44     #include <solver/logrel.h>
45     #include <solver/bnd.h>
46     #include <solver/calc.h>
47     #include <solver/relman.h>
48     #include <solver/slv_common.h>
49     #include <solver/slv_stdcalls.h>
50     #include <solver/system.h>
51     #include <solver/slv_client.h>
52 jds 54
53 johnpye 669 /*--------------------------------------------------
54 johnpye 1132 The following functions are provided only for use by LSODE. We want to
55 johnpye 669 phase this out and replace with a new solver like IDA.
56     */
57 johnpye 1162 ASC_DLLSPEC int Compute_J(slv_system_t sys);
58     ASC_DLLSPEC int NumberFreeVars(slv_system_t sys);
59 johnpye 669 int NumberIncludedRels(slv_system_t sys);
60     int LUFactorJacobian(slv_system_t sys);
61 johnpye 1162 ASC_DLLSPEC int Compute_dy_dx_smart(slv_system_t sys, real64 *rhs, real64 **dy_dx,
62 johnpye 1132 int *inputs, int ninputs, int *outputs, int noutputs
63     );
64 johnpye 669
65 johnpye 1162 /*--------------------------------------------------
66     The following are provided to the external module 'sensitivity'. We want
67     to move all of these out into the external shared object, but can't until
68     the LSODE dependency goes away.
69     */
70    
71     ASC_DLLSPEC int finite_difference(struct gl_list_t *arglist);
72     ASC_DLLSPEC struct Instance *FetchElement(struct gl_list_t *arglist,
73     unsigned long whichbranch,
74     unsigned long whichelement);
75     ASC_DLLSPEC int NumberRels(slv_system_t sys);
76     ASC_DLLSPEC int LUFactorJacobian1(slv_system_t sys,int rank);
77     ASC_DLLSPEC struct Instance *FetchElement(struct gl_list_t *arglist,
78     unsigned long whichbranch,
79     unsigned long whichelement);
80    
81     /* I *think* that we can probably replace these with 'densemtx.h' functions. */
82    
83     ASC_DLLSPEC real64 **make_matrix(int nrows, int ncols);
84     ASC_DLLSPEC void free_matrix(real64 **matrix, int nrows);
85    
86 johnpye 187 #endif /* ASC_SENSITIVITY_H */
87 jds 54

john.pye@anu.edu.au
ViewVC Help
Powered by ViewVC 1.1.22