source: inundation/ga/storm_surge/pyvolution/wiki/issues.txt @ 1427

Last change on this file since 1427 was 1427, checked in by duncan, 19 years ago

update

File size: 6.0 KB
Line 
1
2OPEN ISSUES:
3------------
4
5Issue: finaltime should be renamed 'duration'
6
7Issue (interpolate_sww (new functionality): Give a warning if points
8 are outside the mesh.
9Importance: Mid
10Who: DSG
11
12Issue (interpolate_sww (new functionality)): Be able to specify at
13what times data is needed e.g. input a start, finish and period.
14Importance: low
15
16Issue (least_squares): Do a bug report to sci py
17Importance: low to don't do
18Who: Stephen
19
20Issue (least_squares): Code to not product D matrix (if it isn't
21needed) isn't working.
22Importance: Mid - low
23Suggested Action: Fix
24
25Issue: Parameters specified in config.py must be tranferred to C code
26and it should be possible to override them when setting up a domain.
27Background: N/A
28Importance: Mid
29Suggested Action:
30          1: Let domain read the config file to provide default values.
31          2: Write getters and setters to override them.
32          3: Pass pertinent values from domain into the c-extensions.
33Status: Largely resolved. action 2 ongoing
34
35
36Issue: Checkpointing - needs to respect changes in script.
37Importance: Low
38
39
40Issue: Adding unknown quantities cause a KeyError.  Known quantities
41are given in the list other_quantities, in shallow_water.  Do we want
42unknown quantities attached to domain in the future?  If so, it
43shouldn't cause a key error.
44Importance: low
45Suggested Action:
46Who: OLE
47
48
49Issue: The water level can not be less than the bed elevation, as an
50assert. 
51Importance: Medium
52Suggested Action: How about having the functionality that water levels are set
53to == the bed elevation, if level < bed elevation.  This will make
54setting things up easier.  A following suggestion is don't initialise
55quantities without values, eg in quantity __init__.
56Status: resolved.  Needs unit test though
57
58Issue: Transmissive boundary condition can cause unphysical momentums if
59material is not moving out of the domain.
60Importance: Med
61Suggested Action: Comment in transmissive boundary code.  look into
62sponge boundary.
63
64
65
66       
67CLOSED ISSUES:
68--------------
69
70Issue (least_squares): The current is-a-point-in-a-triangle algorithm
71is slow if a point is outside of the mesh.  It will check each
72triangle 3 times to see if the point is in that triangle.
73Importance: low
74Suggested Action: Form a polygon of the mesh boundary (by constructing
75the neigbour structure) and throw out points not in the polygon (this
76algorithm is there).
77Who: DSG
78Comment (OLE): I have done this (I think)
79
80
81Issue: Get the reservoir example working for the 'new' pyvolution
82Issue: Mid
83Who: DSG
84Status: Done 
85
86Issue (least_squares): datapoints outside the mesh are not used in
87least squares.
88Importance: Mid - low
89Suggested Action: Talk to Steve about including them
90Status: Talked to Steve, it was dicided not to use them
91
92Issue (least_squares): Do a test that the number of attribute titles and number
93of attributes match
94Importance: Mid
95Who: DSG
96Status: closed, this is checked when loading points files now
97
98Issue (Malpasset example):
99Pmesh no longer takes care of attributes but still accepts xya with attributes.
100
101Background:
102Chris imported xya file into pmesh. It contained x, y, bed elevation
103The tsh thus generated did add bed elevation, but didn't produce the proper
104tsh file.
105
106Importance: mid
107Suggested actions: Either spit out an error message or generate a proper
108tsh-header.
109Status:  The story of this is wrong.  Pmesh does produce a proper tsh file
110
111Issue: Second order limiters may cause numerical problems
112manifesting themselves as QNAN (Quiet NANs_ or INF)
113Background: The second order gradient limiter is not robust enough -
114especially with shallow water depths. Heighs and momentum are
115limited independently and high speeds may result.
116Importance: Mid
117Suggested Action:
118          1: Try to incorporate a weighted averaging process between
119          shallow depths and large depths as in the first order scheme.
120          2: Look at limiting height and momentum together, by keeping
121          an eye on the speeds
122          (e.g make speed constant across a volume and recompute momentum)
123          3: Catch errors resulting from these instabilities as early
124          as possibly and produce and throw an appropriate exception
125          4: Make small example that reveals this bug.
126Status: 1 succesfully implemented by Ole and Stephen 12/5/4.
127        2 Didn't work but using the weighted average for momentums seemed
128        to work well.
129        3 and 4 not done.
130        June 2004: With the new limiter (item 1 and 2) 3 and 4 are probably
131        not necessary now.
132
133
134
135Issue: Tags for specifying boundary conditions should be arbitrary
136Background: Domain has the functionality for using arbitrary keys
137when associating boundary objects to boundary values.
138Triangle, which pmesh is based on, uses integers only.
139It would be nice to have mnemonic names for boundaries throughout.
140Importance: Mid
141Status: Duncan resolved this in early June.
142
143
144
145
146
147Issue: Checkpointing - needs to always back one timestep up in
148       case output wasn't written
149Background:
150       Data at latest checkpoint may be incomplete or even corrupted
151       depending on when and how program was stopped.
152Importance: Mid
153Suggested Action: Always try second latest checkpoint first.
154Status: Done (Ole 14/5/4)
155             
156
157               
158Issue: interpolated_conserved_quantities in shallow_water.py
159Background: Was computed by flux functions and used by bed_slope.
160It turns out to be unneccessary as conserved quantities at centroid works just as well.
161Importance: Mid
162Suggested Action: Get rid of it everywhere
163Status: Was done when whole things was refactored in April 2004 by OMN
164
165
166Issue: Exceptions thrown by Python functions called from C don't get caughts
167Background: Have a look at gravity in shallow_water. It calls a C function, gradient, which may throw an exception if arguments are scalars.
168However, it doesn't get caught becuase gravity itself is called from within C
169Importance: Low
170Suggested Action: Have a look at the calling convention from C (David Beasley)
171Status: Unresolved - but no longer relevant as we don't call Python from C
172
Note: See TracBrowser for help on using the repository browser.