Changeset 3876 for anuga_core/source/anuga/shallow_water
- Timestamp:
- Oct 26, 2006, 5:31:27 PM (19 years ago)
- Location:
- anuga_core/source/anuga/shallow_water
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
anuga_core/source/anuga/shallow_water/shallow_water_domain.py
r3848 r3876 92 92 from anuga.config import g, beta_h, beta_w, beta_w_dry,\ 93 93 beta_uh, beta_uh_dry, beta_vh, beta_vh_dry 94 from anuga.config import alpha_balance 94 95 95 96 … … 143 144 self.beta_vh_dry = beta_vh_dry 144 145 self.beta_h = beta_h 146 self.alpha_balance = alpha_balance 145 147 146 148 self.flux_function = flux_function_central … … 1212 1214 1213 1215 from shallow_water_ext import balance_deep_and_shallow 1214 balance_deep_and_shallow( wc, zc, hc, wv, zv, hv, hvbar,1216 balance_deep_and_shallow(domain, wc, zc, hc, wv, zv, hv, hvbar, 1215 1217 xmomc, ymomc, xmomv, ymomv) 1216 1218 -
anuga_core/source/anuga/shallow_water/shallow_water_ext.c
r3789 r3876 423 423 double* ymomc, 424 424 double* xmomv, 425 double* ymomv) { 425 double* ymomv, 426 double alpha_balance) { 426 427 427 428 int k, k3, i; … … 463 464 //else 464 465 // alpha = max( min( hc[k]/dz, 1.0), 0.0 ); 465 alpha = max( min( 2.0*hmin/dz, 1.0), 0.0 );466 alpha = max( min( alpha_balance*hmin/dz, 1.0), 0.0 ); 466 467 else 467 468 alpha = 1.0; //Flat bed … … 1569 1570 *xmomv, 1570 1571 *ymomv; 1572 1573 PyObject *domain, *Tmp; 1574 1575 double alpha_balance = 2.0; 1571 1576 1572 1577 int N; //, err; 1573 1578 1574 1579 // Convert Python arguments to C 1575 if (!PyArg_ParseTuple(args, "OOOOOOOOOOO", 1580 if (!PyArg_ParseTuple(args, "OOOOOOOOOOOO", 1581 &domain, 1576 1582 &wc, &zc, &hc, 1577 1583 &wv, &zv, &hv, &hvbar, … … 1581 1587 } 1582 1588 1589 // Pull out parameters 1590 Tmp = PyObject_GetAttrString(domain, "alpha_balance"); 1591 if (!Tmp) { 1592 PyErr_SetString(PyExc_RuntimeError, "shallow_water_ext.c: balance_deep_and_shallow could not obtain object alpha_balance from domain"); 1593 return NULL; 1594 } 1595 alpha_balance = PyFloat_AsDouble(Tmp); 1596 Py_DECREF(Tmp); 1597 1583 1598 1584 1599 N = wc -> dimensions[0]; … … 1592 1607 (double*) hv -> data, 1593 1608 (double*) hvbar -> data, 1594 1609 (double*) xmomc -> data, 1595 1610 (double*) ymomc -> data, 1596 1611 (double*) xmomv -> data, 1597 (double*) ymomv -> data); 1612 (double*) ymomv -> data, 1613 alpha_balance); 1598 1614 1599 1615
Note: See TracChangeset
for help on using the changeset viewer.