Changeset 5442
- Timestamp:
- Jun 26, 2008, 1:21:05 PM (16 years ago)
- Files:
-
- 74 edited
Legend:
- Unmodified
- Added
- Removed
-
anuga_core/source/anuga/abstract_2d_finite_volumes/domain.py
r5421 r5442 180 180 181 181 # Defaults 182 from anuga.config import max_smallsteps, beta_w, beta_h,epsilon182 from anuga.config import max_smallsteps, beta_w, epsilon 183 183 from anuga.config import CFL 184 184 from anuga.config import timestepping_method 185 185 from anuga.config import protect_against_isolated_degenerate_timesteps 186 186 self.beta_w = beta_w 187 self.beta_h = beta_h188 187 self.epsilon = epsilon 189 188 self.protect_against_isolated_degenerate_timesteps = protect_against_isolated_degenerate_timesteps 190 189 191 190 192 193 # FIXME: Maybe have separate orders for h-limiter and w-limiter? 194 # Or maybe get rid of order altogether and use beta_w and beta_h 191 # Maybe get rid of order altogether and use beta_w 195 192 # FIXME (Ole): In any case, this should appear in the config file - not here 196 193 self.set_default_order(1) -
anuga_core/source/anuga/abstract_2d_finite_volumes/test_util.py
r5221 r5442 1431 1431 1432 1432 domain.default_order=2 1433 domain.beta_h = 01434 1433 1435 1434 # This test was made before tight_slope_limiters were introduced … … 1558 1557 1559 1558 domain.default_order=2 1560 domain.beta_h = 01561 1559 1562 1560 # Set some field values … … 1671 1669 1672 1670 domain.default_order=2 1673 domain.beta_h = 01674 1671 1675 1672 # This test was made before tight_slope_limiters were introduced -
anuga_core/source/anuga/config.py
r5441 r5442 52 52 # 1'st order extrapolations. 53 53 # 54 # Large values of beta_h may cause simulations to require more timesteps55 # as surface will 'hug' closer to the bed.56 # Small values of beta_h will make code faster, but one may experience57 # artificial momenta caused by discontinuities in water depths in58 # the presence of steep slopes. One example of this would be59 # stationary water 'lapping' upwards to a higher point on the coast.60 #61 # NOTE (Ole): I believe this was addressed with the introduction of62 # tight_slope_limiters. I wish to retire the beta_? parameters.63 # Can you please let me know if you disagree?64 54 65 # There are separate betas for the w, uh, vh andh limiters55 # There are separate betas for the w, uh, and vh limiters 66 56 # I think these are better SR but they conflict with the unit tests! 67 57 beta_w = 1.0 … … 71 61 beta_vh = 1.0 72 62 beta_vh_dry = 0.2 73 74 # beta_h can be safely put to zero esp if we are using75 # tight_slope_limiters = 1. This will76 # also speed things up in general77 beta_h = 0.078 63 79 64 -
anuga_core/source/anuga/damage_modelling/test_inundation_damage.py
r4742 r5442 70 70 71 71 domain.default_order=2 72 domain.beta_h = 073 72 #Set some field values 74 73 #domain.set_quantity('stage', 1.0) … … 141 140 142 141 domain.default_order=2 143 domain.beta_h = 0144 142 #Set some field values 145 143 #domain.set_quantity('stage', 1.0) … … 262 260 263 261 domain.default_order=2 264 domain.beta_h = 0265 262 266 263 #Set some field values … … 335 332 336 333 domain.default_order=2 337 domain.beta_h = 0338 334 339 335 #Set some field values -
anuga_core/source/anuga/fit_interpolate/test_interpolate.py
r5181 r5442 49 49 domain = Domain(points, vertices, boundary) 50 50 domain.default_order=2 51 domain.beta_h = 052 51 53 52 … … 1596 1595 1597 1596 domain.default_order = 2 1598 domain.beta_h = 01599 1597 1600 1598 # This test was made before tight_slope_limiters were introduced -
anuga_core/source/anuga/shallow_water/shallow_water_domain.py
r5436 r5442 99 99 from anuga.config import minimum_storable_height 100 100 from anuga.config import minimum_allowed_height, maximum_allowed_speed 101 from anuga.config import g, epsilon, beta_ h, beta_w, beta_w_dry,\101 from anuga.config import g, epsilon, beta_w, beta_w_dry,\ 102 102 beta_uh, beta_uh_dry, beta_vh, beta_vh_dry, tight_slope_limiters 103 103 from anuga.config import alpha_balance … … 169 169 self.beta_vh = beta_vh 170 170 self.beta_vh_dry = beta_vh_dry 171 self.beta_h = beta_h172 171 self.alpha_balance = alpha_balance 173 172 … … 209 208 self.quantities['ymomentum'].beta = beta 210 209 211 self.beta_h = beta212 210 213 211 … … 420 418 # self.check_integrity() 421 419 422 msg = 'Parameter beta_h must be in the interval [0, 2['423 assert 0 <= self.beta_h <= 2.0, msg424 420 msg = 'Parameter beta_w must be in the interval [0, 2[' 425 421 assert 0 <= self.beta_w <= 2.0, msg … … 859 855 860 856 861 def h_limiter(domain):862 """Limit slopes for each volume to eliminate artificial variance863 introduced by e.g. second order extrapolator864 865 limit on h = w-z866 867 This limiter depends on two quantities (w,z) so it resides within868 this module rather than within quantity.py869 870 Wrapper for c-extension871 """872 873 N = len(domain) # number_of_triangles874 beta_h = domain.beta_h875 876 # Shortcuts877 wc = domain.quantities['stage'].centroid_values878 zc = domain.quantities['elevation'].centroid_values879 hc = wc - zc880 881 wv = domain.quantities['stage'].vertex_values882 zv = domain.quantities['elevation'].vertex_values883 hv = wv - zv884 885 #Call C-extension886 from shallow_water_ext import h_limiter_sw887 hvbar = h_limiter_sw(domain, hc, hv)888 889 return hvbar890 891 857 892 858 def balance_deep_and_shallow(domain): … … 904 870 """ 905 871 906 # FIXME (Ole): I reckon this can be simplified significantly:907 #908 # Always use beta_h == 0, and phase it out.909 # Compute hc and hv in the c-code910 # Omit updating xmomv911 #912 872 from shallow_water_ext import balance_deep_and_shallow as balance_deep_and_shallow_c 913 873 914 874 915 #print 'calling balance depth and shallow'916 875 # Shortcuts 917 876 wc = domain.quantities['stage'].centroid_values … … 929 888 ymomv = domain.quantities['ymomentum'].vertex_values 930 889 931 # Limit h 932 if domain.beta_h > 0: 933 hvbar = h_limiter(domain) 934 935 balance_deep_and_shallow_c(domain, domain.beta_h, 936 wc, zc, wv, zv, hvbar, 937 xmomc, ymomc, xmomv, ymomv) 938 else: 939 # print 'Using first order h-limiter' 940 # FIXME: Pass wc in for now - it will be ignored. 941 942 # This is how one would make a first order h_limited value 943 # as in the old balancer (pre 17 Feb 2005): 944 # If we wish to hard wire this, one should modify the C-code 945 # from Numeric import zeros, Float 946 # hvbar = zeros( (len(wc), 3), Float) 947 # for i in range(3): 948 # hvbar[:,i] = wc[:] - zc[:] 949 950 balance_deep_and_shallow_c(domain, domain.beta_h, 951 wc, zc, wv, zv, wc, 952 xmomc, ymomc, xmomv, ymomv) 890 balance_deep_and_shallow_c(domain, 891 wc, zc, wv, zv, wc, 892 xmomc, ymomc, xmomv, ymomv) 953 893 954 894 -
anuga_core/source/anuga/shallow_water/shallow_water_ext.c
r5315 r5442 538 538 539 539 int _balance_deep_and_shallow(int N, 540 double beta_h,541 540 double* wc, 542 541 double* zc, … … 623 622 alpha = 1.0; 624 623 for (i=0; i<3; i++) { 625 626 // FIXME (Ole): Simplify (remove) when (if) hvbar gets retired627 if (beta_h > epsilon) {628 hc_k = hvbar[k3+i]; // Depth to be used at vertices629 }630 624 631 625 h_diff = hc_k - hv[i]; … … 674 668 for (i=0; i<3; i++) { 675 669 676 // FIXME (Ole): Simplify when (if) hvbar gets retired 677 if (beta_h > epsilon) { 678 wv[k3+i] = zv[k3+i] + (1-alpha)*hvbar[k3+i] + alpha*hv[i]; 679 } else { 680 wv[k3+i] = zv[k3+i] + (1-alpha)*hc_k + alpha*hv[i]; 681 } 670 wv[k3+i] = zv[k3+i] + (1-alpha)*hc_k + alpha*hv[i]; 682 671 683 672 // Update momentum at vertices … … 2332 2321 // modes. 2333 2322 // 2334 // balance_deep_and_shallow( beta_h,wc, zc, wv, zv,2323 // balance_deep_and_shallow(wc, zc, wv, zv, 2335 2324 // xmomc, ymomc, xmomv, ymomv) 2336 2325 … … 2350 2339 2351 2340 double alpha_balance = 2.0; 2352 double H0 , beta_h;2341 double H0; 2353 2342 2354 2343 int N, tight_slope_limiters, use_centroid_velocities; //, err; 2355 2344 2356 2345 // Convert Python arguments to C 2357 if (!PyArg_ParseTuple(args, "O dOOOOOOOOO",2346 if (!PyArg_ParseTuple(args, "OOOOOOOOOO", 2358 2347 &domain, 2359 &beta_h,2360 2348 &wc, &zc, 2361 2349 &wv, &zv, &hvbar, … … 2411 2399 N = wc -> dimensions[0]; 2412 2400 _balance_deep_and_shallow(N, 2413 beta_h,2414 2401 (double*) wc -> data, 2415 2402 (double*) zc -> data, … … 2432 2419 2433 2420 2434 PyObject *h_limiter(PyObject *self, PyObject *args) {2435 2436 PyObject *domain, *Tmp;2437 PyArrayObject2438 *hv, *hc, //Depth at vertices and centroids2439 *hvbar, //Limited depth at vertices (return values)2440 *neighbours;2441 2442 int k, i, n, N, k3;2443 int dimensions[2];2444 double beta_h; // Safety factor (see config.py)2445 double *hmin, *hmax, hn;2446 2447 // Convert Python arguments to C2448 if (!PyArg_ParseTuple(args, "OOO", &domain, &hc, &hv)) {2449 PyErr_SetString(PyExc_RuntimeError, "shallow_water_ext.c: h_limiter could not parse input arguments");2450 return NULL;2451 }2452 2453 neighbours = get_consecutive_array(domain, "neighbours");2454 2455 //Get safety factor beta_h2456 Tmp = PyObject_GetAttrString(domain, "beta_h");2457 if (!Tmp) {2458 PyErr_SetString(PyExc_RuntimeError, "shallow_water_ext.c: h_limiter could not obtain object beta_h from domain");2459 return NULL;2460 }2461 beta_h = PyFloat_AsDouble(Tmp);2462 2463 Py_DECREF(Tmp);2464 2465 N = hc -> dimensions[0];2466 2467 //Create hvbar2468 dimensions[0] = N;2469 dimensions[1] = 3;2470 hvbar = (PyArrayObject *) PyArray_FromDims(2, dimensions, PyArray_DOUBLE);2471 2472 2473 //Find min and max of this and neighbour's centroid values2474 hmin = malloc(N * sizeof(double));2475 hmax = malloc(N * sizeof(double));2476 for (k=0; k<N; k++) {2477 k3=k*3;2478 2479 hmin[k] = ((double*) hc -> data)[k];2480 hmax[k] = hmin[k];2481 2482 for (i=0; i<3; i++) {2483 n = ((long*) neighbours -> data)[k3+i];2484 2485 // Initialise hvbar with values from hv2486 ((double*) hvbar -> data)[k3+i] = ((double*) hv -> data)[k3+i];2487 2488 if (n >= 0) {2489 hn = ((double*) hc -> data)[n]; // Neighbour's centroid value2490 2491 hmin[k] = min(hmin[k], hn);2492 hmax[k] = max(hmax[k], hn);2493 }2494 }2495 }2496 2497 // Call underlying standard routine2498 _limit_old(N, beta_h, (double*) hc -> data, (double*) hvbar -> data, hmin, hmax);2499 2500 // // //Py_DECREF(domain); //FIXME: Necessary?2501 free(hmin);2502 free(hmax);2503 2504 // Return result using PyArray to avoid memory leak2505 return PyArray_Return(hvbar);2506 }2507 2508 PyObject *h_limiter_sw(PyObject *self, PyObject *args) {2509 //a faster version of h_limiter above2510 PyObject *domain, *Tmp;2511 PyArrayObject2512 *hv, *hc, //Depth at vertices and centroids2513 *hvbar, //Limited depth at vertices (return values)2514 *neighbours;2515 2516 int k, i, N, k3,k0,k1,k2;2517 int dimensions[2];2518 double beta_h; //Safety factor (see config.py)2519 double hmin, hmax, dh[3];2520 // Convert Python arguments to C2521 if (!PyArg_ParseTuple(args, "OOO", &domain, &hc, &hv)) {2522 PyErr_SetString(PyExc_RuntimeError, "shallow_water_ext.c: h_limiter_sw could not parse input arguments");2523 return NULL;2524 }2525 neighbours = get_consecutive_array(domain, "neighbours");2526 2527 //Get safety factor beta_h2528 Tmp = PyObject_GetAttrString(domain, "beta_h");2529 if (!Tmp) {2530 PyErr_SetString(PyExc_RuntimeError, "shallow_water_ext.c: h_limiter_sw could not obtain object beta_h from domain");2531 return NULL;2532 }2533 beta_h = PyFloat_AsDouble(Tmp);2534 2535 Py_DECREF(Tmp);2536 2537 N = hc -> dimensions[0];2538 2539 //Create hvbar2540 dimensions[0] = N;2541 dimensions[1] = 3;2542 hvbar = (PyArrayObject *) PyArray_FromDims(2, dimensions, PyArray_DOUBLE);2543 for (k=0;k<N;k++){2544 k3=k*3;2545 //get the ids of the neighbours2546 k0 = ((long*) neighbours -> data)[k3];2547 k1 = ((long*) neighbours -> data)[k3+1];2548 k2 = ((long*) neighbours -> data)[k3+2];2549 //set hvbar provisionally2550 for (i=0;i<3;i++){2551 ((double*) hvbar -> data)[k3+i] = ((double*) hv -> data)[k3+i];2552 dh[i]=((double*) hvbar -> data)[k3+i]-((double*) hc -> data)[k];2553 }2554 hmin=((double*) hc -> data)[k];2555 hmax=hmin;2556 if (k0>=0){2557 hmin=min(hmin,((double*) hc -> data)[k0]);2558 hmax=max(hmax,((double*) hc -> data)[k0]);2559 }2560 if (k1>=0){2561 hmin=min(hmin,((double*) hc -> data)[k1]);2562 hmax=max(hmax,((double*) hc -> data)[k1]);2563 }2564 if (k2>=0){2565 hmin=min(hmin,((double*) hc -> data)[k2]);2566 hmax=max(hmax,((double*) hc -> data)[k2]);2567 }2568 hmin-=((double*) hc -> data)[k];2569 hmax-=((double*) hc -> data)[k];2570 limit_gradient(dh,hmin,hmax,beta_h);2571 for (i=0;i<3;i++)2572 ((double*) hvbar -> data)[k3+i] = ((double*) hc -> data)[k]+dh[i];2573 }2574 return PyArray_Return(hvbar);2575 }2576 2421 2577 2422 PyObject *assign_windfield_values(PyObject *self, PyObject *args) { … … 2637 2482 {"balance_deep_and_shallow", balance_deep_and_shallow, 2638 2483 METH_VARARGS, "Print out"}, 2639 {"h_limiter", h_limiter,2640 METH_VARARGS, "Print out"},2641 {"h_limiter_sw", h_limiter_sw,2642 METH_VARARGS, "Print out"},2643 2484 {"protect", protect, METH_VARARGS | METH_KEYWORDS, "Print out"}, 2644 2485 {"assign_windfield_values", assign_windfield_values, -
anuga_core/source/anuga/shallow_water/test_data_manager.py
r5420 r5442 562 562 self.domain.smooth = False 563 563 self.domain.store = True 564 self.domain.beta_h = 0565 564 566 565 self.domain.tight_slope_limiters = True -
anuga_core/source/anuga/shallow_water/test_shallow_water_domain.py
r5441 r5442 1436 1436 domain.tight_slope_limiters = 0 # Backwards compatibility (14/4/7) 1437 1437 domain.H0 = 0 # Backwards compatibility (6/2/7) 1438 domain.beta_h = 0.0 # Backwards compatibility (14/2/7)1439 1438 domain.use_centroid_velocities = 0 # Backwards compatibility (7/5/8) 1440 1439 … … 1489 1488 # print 1490 1489 1491 #Reference (nautilus 26/6/2008) (beta_h == 0)1490 #Reference (nautilus 26/6/2008) 1492 1491 1493 1492 G0 = [-0.20000000000000001, -0.20000000000000001, -0.19920600846161715, -0.19153647344085376, -0.19127622768281194, -0.1770671909675095, -0.16739412133181927, -0.16196038919122191, -0.15621633053131384, -0.15130021599977705, -0.13930978857215484, -0.19349274358263582, -0.19975307598803765, -0.19999897143103357, -0.1999999995532111, -0.19999999999949952, -0.19999999999949952, -0.19999999999949952, -0.19997270012494556, -0.19925805948554556, -0.19934513778450533, -0.19966484196394893, -0.1997352860102084, -0.19968260481750394, -0.19980280797303882, -0.19998804881822749, -0.19999999778075916, -0.19999999999966167, -0.19999999999966167, -0.19999999999966167, -0.19999999999966167, -0.19999999999966167, -0.19999999999966167, -0.19999999999966167, -0.19999999999966167, -0.19999999999966167, -0.19999999999966167, -0.19999999999966167, -0.19999999999966167, -0.19999999999966167, -0.19999999999966167, -0.19999999999966167, -0.19999999999966167, -0.19999999999966167, -0.19999999999966167, -0.19999999999966167, -0.19999999999966167, -0.19999999999966167, -0.19999999999966167, -0.19999999999966167, -0.19999999999966167] … … 2734 2733 domain.beta_vh = 0.9 2735 2734 domain.beta_vh_dry = 0.9 2736 domain.beta_h = 0.0 #Use first order in h-limiter2737 2735 2738 2736 # FIXME (Ole): Need tests where this is commented out … … 3218 3216 domain.smooth = False 3219 3217 domain.default_order = 2 3220 domain.beta_h = 0.03221 3218 domain.set_quantities_to_be_stored(['stage', 'xmomentum', 'ymomentum']) 3222 3219 … … 3291 3288 domain.smooth = False 3292 3289 domain.default_order=2 3293 domain.beta_h = 0.03294 3290 3295 3291 #IC … … 3955 3951 domain.smooth = False 3956 3952 domain.default_order = 1 3957 domain.beta_h = 0.0 # Use first order in h-limiter3958 3953 3959 3954 # FIXME (Ole): Need tests where these two are commented out … … 4126 4121 domain.beta_vh = 0.9 4127 4122 domain.beta_vh_dry = 0.9 4128 domain.beta_h = 0.0 #Use first order in h-limiter4129 4123 4130 4124 # FIXME (Ole): Need tests where this is commented out … … 4230 4224 domain.beta_vh = 0.9 4231 4225 domain.beta_vh_dry = 0.9 4232 domain.beta_h = 0.0 #Use first order in h-limiter4233 4226 4234 4227 # FIXME (Ole): Need tests where this is commented out … … 4330 4323 domain.beta_vh = 0.9 4331 4324 domain.beta_vh_dry = 0.9 4332 domain.beta_h = 0.0 #Use first order in h-limiter4333 4325 4334 4326 … … 4470 4462 domain.beta_vh = 0.9 4471 4463 domain.beta_vh_dry = 0.9 4472 domain.beta_h = 0.0 #Use first order in h-limiter4473 4464 domain.H0 = 0.001 4474 4465 domain.tight_slope_limiters = 1 … … 4597 4588 domain.beta_vh = 0.9 4598 4589 domain.beta_vh_dry = 0.9 4599 domain.beta_h = 0.0 #Use first order in h-limiter4600 4590 4601 4591 # FIXME (Ole): Need tests where these two are commented out … … 5502 5492 domain.smooth = False 5503 5493 domain.store = True 5504 domain.beta_h = 05505 5494 5506 5495 -
anuga_validation/automated_validation_tests/okushiri_tank_validation/run_okushiri.py
r5303 r5442 61 61 domain.set_quantities_to_be_monitored('stage') 62 62 63 # New slope limiter and first order h-limiter64 # (this in planned to be the default!)65 domain.beta_h = 0.066 domain.tight_slope_limiters = True # Run time invariant in this case67 63 domain.use_centroid_velocities = True 68 64 -
anuga_validation/circular_island/run_circular.py
r5147 r5442 213 213 #domain.set_maximum_allowed_speed(0.1) # Allow a little runoff (0.1 is OK) 214 214 domain.tight_slope_limiters = 1 215 domain.beta_h = 0.0216 215 217 216 sww_file=output_dir+sep+model_name+'.sww' -
anuga_validation/circular_island/sqrt_table_run_circular.py
r5131 r5442 225 225 domain.set_maximum_allowed_speed(0.1) # Allow a little runoff (0.1 is OK) 226 226 domain.tight_slope_limiters = 1 227 domain.beta_h = 0.0228 227 sww_file=output_dir+sep+model_name+'.sww' 229 228 -
anuga_validation/convergence_study/dam_break.py
r5300 r5442 71 71 domain.beta_uh = 0.6 72 72 domain.beta_vh = 0.6 73 domain.beta_h = 0.074 73 75 74 -
anuga_validation/convergence_study/tilted.py
r5180 r5442 74 74 domain.beta_vh = 0.6 75 75 domain.beta_vh_dry = 0.0 76 domain.beta_h = 0.0 76 77 77 78 78 interactive_visualisation = True -
anuga_validation/convergence_study/wave.py
r5306 r5442 77 77 domain.beta_vh = 1.0 78 78 domain.beta_vh_dry = 0.0 79 domain.beta_h = 0.080 81 79 82 80 -
anuga_validation/okushiri_2005/run_okushiri.py
r5424 r5442 57 57 domain.set_minimum_storable_height(0.001) # Don't store h < 0.001m 58 58 domain.tight_slope_limiters = True 59 domain.beta_h = 0.060 59 61 60 #Timings on AMD64-242 (beta_h=0) -
anuga_validation/performance_tests/okushiri/run_okushiri_profile.py
r4768 r5442 60 60 #domain.set_quantities_to_be_stored(None) 61 61 62 # New slope limiter and first order h-limiter63 # (this in planned to be the default!)64 domain.beta_h = 0.065 domain.tight_slope_limiters = 1 # Run time invariant in this case66 62 67 63 #------------------------- -
anuga_work/development/MISG_2008/sensitivity_study.py
r5245 r5442 49 49 domain.set_name('sensitivity') # Output to file runup.sww 50 50 domain.set_datadir('.') # Use current directory for output 51 domain.tight_slope_limiters = 152 domain.beta_h = 053 51 domain.set_minimum_storable_height(0.01) 54 52 -
anuga_work/development/Rudy_vandrie_2007/run_example.py
r4631 r5442 56 56 domain.set_all_limiters(0.9) # Max second order scheme (old lim) 57 57 domain.set_minimum_storable_height(0.001) # Don't store w < 0.001m 58 domain.set_maximum_allowed_speed(0.1) # Allow a little runoff (0.1 is OK)59 58 60 # New slope limiter and first order h-limiter61 # (this in planned to be the default!)62 domain.beta_h = 0.063 domain.tight_slope_limiters = 064 59 65 60 #------------------------- -
anuga_work/development/Rudy_vandrie_2007/run_hydro_example.py
r4631 r5442 30 30 domain.set_name('hydro_example') # Output name 31 31 domain.set_minimum_storable_height(0.0001) 32 domain.beta_h = 0.0 33 domain.tight_slope_limiters = 1 32 34 33 35 34 -
anuga_work/development/attenuation_near_shore/run_beach.py
r5155 r5442 143 143 # comment out aserts in shallow_water/shallow_water_domain.py", line 402 144 144 # if you want to use these values 145 #domain.beta_h = 1.5146 145 #domain.beta_w = 1.5 147 146 domain.set_quantities_to_be_stored(['stage', 'xmomentum', 'ymomentum']) -
anuga_work/development/attenuation_near_shore/run_beach_structured.py
r5176 r5442 149 149 domain.beta_uh = 0.6 150 150 domain.beta_vh = 0.6 151 domain.beta_h = 0.0152 153 151 154 152 domain.set_quantities_to_be_stored(['stage', 'xmomentum', 'ymomentum']) -
anuga_work/development/boxingday08/run_boxingday.py
r5247 r5442 146 146 domain.set_minimum_storable_height(0.01) 147 147 148 domain.beta_h = 0149 148 domain.tight_slope_limiters = 1 150 149 domain.set_default_order(2) -
anuga_work/development/boxingday08/run_boxingday_most.py
r5404 r5442 133 133 domain.set_minimum_storable_height(0.01) 134 134 135 domain.beta_h = 0136 135 domain.tight_slope_limiters = 1 137 136 domain.set_default_order(2) -
anuga_work/development/boxingday08/run_boxingday_polyline.py
r5401 r5442 135 135 domain.set_minimum_storable_height(0.01) 136 136 137 domain.beta_h = 0138 137 domain.tight_slope_limiters = 1 139 138 domain.set_default_order(2) -
anuga_work/development/boxingday08/run_boxingday_urs.py
r5401 r5442 135 135 domain.set_minimum_storable_height(0.01) 136 136 137 domain.beta_h = 0138 137 domain.tight_slope_limiters = 1 139 138 domain.set_default_order(2) -
anuga_work/development/cocos/grid_data.py
r4993 r5442 142 142 domain.set_quantities_to_be_stored(['stage', 'xmomentum', 'ymomentum']) 143 143 # domain.set_maximum_allowed_speed(0.1) # Allow a little runoff (0.1 is OK) 144 domain.beta_h = 0145 144 Br = Reflective_boundary(domain) 146 145 -
anuga_work/development/continental_margin_0708/con_900.py
r5066 r5442 103 103 domain.set_quantity('friction', 0) # Constant friction 104 104 domain.set_quantity('stage', 0) # Constant negative initial stage 105 domain.tight_slope_limiters = 1106 domain.beta_h = 0 105 domain.tight_slope_limiters = True 106 107 107 108 108 #------------------------------------------------------------------------------ -
anuga_work/development/continental_margin_0708/curved_down_slope.py
r5066 r5442 104 104 domain.set_quantity('stage', 0) # Constant negative initial stage 105 105 domain.tight_slope_limiters = 1 106 domain.beta_h = 0107 106 108 107 -
anuga_work/development/continental_margin_0708/curved_down_slope_large.py
r5066 r5442 104 104 domain.set_quantity('stage', 0) # Constant negative initial stage 105 105 domain.tight_slope_limiters = 1 106 domain.beta_h = 0107 106 108 107 -
anuga_work/development/continental_margin_0708/curved_linear.py
r5066 r5442 101 101 domain.set_quantity('stage', 0) # Constant negative initial stage 102 102 domain.tight_slope_limiters = 1 103 domain.beta_h = 0104 103 105 104 -
anuga_work/development/continental_margin_0708/curved_up_slope.py
r5066 r5442 102 102 domain.set_quantity('stage', 0) # Constant negative initial stage 103 103 domain.tight_slope_limiters = 1 104 domain.beta_h = 0105 104 106 105 #------------------------------------------------------------------------------ -
anuga_work/development/continental_margin_0708/curved_up_slope_large.py
r5066 r5442 74 74 domain.set_datadir(output_dir) 75 75 domain.tight_slope_limiters = 1 76 domain.beta_h = 077 76 78 77 -
anuga_work/development/continental_margin_0708/friction_0.02.py
r5066 r5442 103 103 domain.set_quantity('friction', 0.02) # Constant friction 104 104 domain.set_quantity('stage', 0) # Constant negative initial stage 105 domain.tight_slope_limiters = 1 106 domain.beta_h = 0 105 domain.tight_slope_limiters = True 107 106 108 107 #------------------------------------------------------------------------------ -
anuga_work/development/continental_margin_0708/gettimeseriesfrict.py
r5066 r5442 103 103 domain.set_quantity('stage', 0) # Constant negative initial stage 104 104 domain.tight_slope_limiters = 1 105 domain.beta_h = 0 105 106 106 #------------------------------------------------------------------------------ 107 107 # Setup boundary conditions -
anuga_work/development/continental_margin_0708/linear.py
r5066 r5442 99 99 domain.set_quantity('stage', 0) # Constant negative initial stage 100 100 domain.tight_slope_limiters = 1 101 domain.beta_h = 0102 101 103 102 -
anuga_work/development/continental_margin_0708/linear_curved.py
r5066 r5442 102 102 domain.set_quantity('stage', 0) # Constant negative initial stage 103 103 domain.tight_slope_limiters = 1 104 domain.beta_h = 0105 104 106 105 -
anuga_work/development/continental_margin_0708/linear_slope.py
r5066 r5442 103 103 domain.set_quantity('stage', 0) # Constant negative initial stage 104 104 domain.tight_slope_limiters = 1 105 domain.beta_h = 0106 105 107 106 #------------------------------------------------------------------------------ -
anuga_work/development/continental_margin_0708/linear_slope_large.py
r5066 r5442 103 103 domain.set_quantity('stage', 0) # Constant negative initial stage 104 104 domain.tight_slope_limiters = 1 105 domain.beta_h = 0106 105 107 106 -
anuga_work/development/continental_margin_0708/mesh_80000_curved_down_slope.py
r5066 r5442 104 104 domain.set_quantity('stage', 0) # Constant negative initial stage 105 105 domain.tight_slope_limiters = 1 106 domain.beta_h = 0107 106 108 107 -
anuga_work/development/continental_margin_0708/neg_con_900.py
r5066 r5442 104 104 domain.set_quantity('stage', 0) # Constant negative initial stage 105 105 domain.tight_slope_limiters = 1 106 domain.beta_h = 0107 106 108 107 #------------------------------------------------------------------------------ -
anuga_work/development/continental_margin_0708/sin_wave_900.py
r5066 r5442 104 104 domain.set_quantity('stage', 0) # Constant negative initial stage 105 105 domain.tight_slope_limiters = 1 106 domain.beta_h = 0107 106 108 107 #------------------------------------------------------------------------------ -
anuga_work/development/continental_margin_0708/sol_900.py
r5066 r5442 103 103 domain.set_quantity('stage', 0) # Constant negative initial stage 104 104 domain.tight_slope_limiters = 1 105 domain.beta_h = 0 105 106 106 107 107 #------------------------------------------------------------------------------ -
anuga_work/development/continental_margin_0708/timeseriessol.py
r5066 r5442 102 102 domain.set_quantity('friction', 0) # Constant friction 103 103 domain.set_quantity('stage', 0) # Constant negative initial stage 104 domain.tight_slope_limiters = 1105 domain.beta_h = 0 104 domain.tight_slope_limiters = True 105 106 106 #------------------------------------------------------------------------------ 107 107 # Setup boundary conditions -
anuga_work/development/continental_margin_0708/wave_value_tester_900.py
r5066 r5442 103 103 domain.set_quantity('stage', 0) # Constant negative initial stage 104 104 domain.tight_slope_limiters = 1 105 domain.beta_h = 0106 105 107 106 #------------------------------------------------------------------------------ -
anuga_work/development/convergence_okushiri_2008/run_okushiri_truescale.py
r5411 r5442 103 103 domain.set_all_limiters(0.9) # Max second order scheme (old lim) 104 104 domain.set_minimum_storable_height(0.1) # Don't store h < 0.1m 105 domain.tight_slope_limiters = 1106 domain.beta_h = 0.0107 105 108 106 -
anuga_work/development/dam_test_from_brad_2007/dam_sample.py
r4631 r5442 29 29 domain.set_name('dam_sample') # Output name 30 30 #domain.set_store_vertices_uniquely(True) # Look at the 'real' triangles 31 domain.beta_h = 0.032 domain.tight_slope_limiters = 133 31 domain.set_minimum_allowed_height(0.01) 34 32 -
anuga_work/development/demos/island.py
r5440 r5442 61 61 print domain.statistics() 62 62 63 #I tried to introduce this parameter top control the h-limiter,64 #but it doesn't remove the 'lapping water'65 #NEW (ON): I think it has been fixed (or at least reduced significantly) now66 #67 # beta_h == 1.0 means that the largest gradients (on h) are allowed68 # beta_h == 0.0 means that constant (1st order) gradients are introduced69 # on h. This is equivalent to the constant depth used previously.70 #domain.beta_h = 0.571 #domain.beta_w_dry = 0.072 #domain.alpha_balance = 10.073 #domain.minimum_allowed_height = 1.0e-474 #domain.maximum_allowed_speed = 075 #domain.minimum_storable_height = 1.0e-476 77 #------------------------78 # Combinations with creep79 #------------------------80 81 #domain.maximum_allowed_speed = 082 #domain.beta_h = 0.083 #domain.tight_slope_limiters = 084 85 #domain.maximum_allowed_speed = 086 #domain.beta_h = 0.087 #domain.H0 = 0.0188 #domain.tight_slope_limiters = 189 63 90 64 #--------------------------- … … 92 66 #--------------------------- 93 67 94 #domain.maximum_allowed_speed = 195 #domain.beta_h = 0.096 #domain.tight_slope_limiters = 097 98 68 domain.maximum_allowed_speed = 0 99 domain.beta_h = 0.0100 69 domain.tight_slope_limiters = True 101 70 -
anuga_work/development/near_shore_PMD/run_beach.py
r5236 r5442 171 171 domain.beta_uh = 0.6 172 172 domain.beta_vh = 0.6 173 domain.beta_h = 0.0174 173 175 174 domain.set_quantities_to_be_stored(['stage', 'xmomentum', 'ymomentum']) -
anuga_work/development/reef_0708/Flatgap_10000.py
r5066 r5442 137 137 domain.set_quantity('stage', 0.) # Constant negative initial stage 138 138 domain.tight_slope_limiters = 1 139 domain.beta_h = 0140 139 141 140 -
anuga_work/development/reef_0708/gradual_lgflat.py
r5066 r5442 118 118 domain.set_quantity('stage', 0.) # Constant negative initial stage 119 119 domain.tight_slope_limiters = 1 120 domain.beta_h = 0121 120 122 121 #------------------------------------------------------------------------------ -
anuga_work/development/reef_0708/transect_gap_1000.py
r5066 r5442 137 137 domain.set_quantity('stage', 0.) # Constant negative initial stage 138 138 domain.tight_slope_limiters = 1 139 domain.beta_h = 0140 139 141 140 -
anuga_work/development/solitary_waves/solitary_wave_runup.py
r4678 r5442 86 86 #domain.set_minimum_storable_height(0.01) 87 87 #domain.set_minimum_allowed_height(0.01) 88 domain.beta_h = 0.089 domain.tight_slope_limiters = 190 88 domain.set_name(simulation_name) 91 89 -
anuga_work/production/FSM/run_kolonia.py
r5205 r5442 159 159 #domain.set_maximum_allowed_speed(0.1) # Allow a little runoff (0.1 is OK) 160 160 print 'domain id', id(domain) 161 domain.beta_h = 0162 161 163 162 #------------------------------------------------------------------------------ -
anuga_work/production/broome/run_broome_urs.py
r5001 r5442 173 173 domain.set_maximum_allowed_speed(0.1) # Allow a little runoff (0.1 is OK) 174 174 print 'domain id', id(domain) 175 domain.beta_h = 0176 #domain.tight_slope_limiters = 1177 175 178 176 #------------------------------------------------------------------------- -
anuga_work/production/busselton/run_busselton.py
r5415 r5442 160 160 #domain.set_maximum_allowed_speed(0.1) # Allow a little runoff (0.1 is OK) 161 161 print 'domain id', id(domain) 162 domain.beta_h = 0163 162 164 163 #------------------------------------------------------------------------- -
anuga_work/production/carnarvon/run_carnarvon.py
r5005 r5442 159 159 domain.set_maximum_allowed_speed(0.1) # Allow a little runoff (0.1 is OK) 160 160 print 'domain id', id(domain) 161 domain.beta_h = 0 162 #domain.tight_slope_limiters = 1 161 163 162 164 163 #------------------------------------------------------------------------- -
anuga_work/production/dampier_2006/run_dampier.py
r4631 r5442 159 159 domain.set_maximum_allowed_speed(0.1) # Allow a little runoff (0.1 is OK) 160 160 print 'domain id', id(domain) 161 domain.beta_h = 0162 #domain.tight_slope_limiters = 1163 161 164 162 #------------------------------------------------------------------------- -
anuga_work/production/dampier_2006/run_dampier_simple.py
r4631 r5442 232 232 domain.set_maximum_allowed_speed(0.1) # Allow a little runoff (0.1 is OK) 233 233 print 'domain id', id(domain) 234 domain.beta_h = 0235 domain.tight_slope_limiters = 1236 234 ''' 237 235 #------------------------------------------------------------------------- -
anuga_work/production/dampier_2006/run_dampier_urs.py
r4631 r5442 168 168 domain.set_maximum_allowed_speed(0.1) # Allow a little runoff (0.1 is OK) 169 169 print 'domain id', id(domain) 170 domain.beta_h = 0 171 #domain.tight_slope_limiters = 1 170 172 171 173 172 #------------------------------------------------------------------------- -
anuga_work/production/exmouth_2006/run_exmouth.py
r5408 r5442 167 167 #domain.set_maximum_allowed_speed(0.1) # Allow a little runoff (0.1 is OK) 168 168 #print 'domain id', id(domain) 169 domain.beta_h = 0 #sets the surface of the triangle to follow the bathy 169 170 170 #domain.H0=0.01 #controls the flux limiter (limiter2007) 171 171 domain.tight_slope_limiters = 0 #minimises creep -
anuga_work/production/galle_2007/run_gal5.py
r4547 r5442 78 78 domain.set_store_vertices_uniquely(False) 79 79 domain.set_quantities_to_be_stored(['stage', 'xmomentum', 'ymomentum']) 80 domain.set_maximum_allowed_speed(0.1) # Allow a little runoff (0.1 is OK) 81 domain.beta_h = 0 # Use first order near bathymetry (faster) 80 82 81 83 82 #------------------------------------------------------------------------------ -
anuga_work/production/geraldton/run_geraldton.py
r5150 r5442 157 157 domain.set_store_vertices_uniquely(False) 158 158 domain.set_quantities_to_be_stored(['stage', 'xmomentum', 'ymomentum']) 159 domain.set_maximum_allowed_speed(0.1) # Allow a little runoff (0.1 is OK)160 159 print 'domain id', id(domain) 161 domain.beta_h = 0 162 #domain.tight_slope_limiters = 1 160 163 161 164 162 #------------------------------------------------------------------------- -
anuga_work/production/onslow_2006/run_onslow_grad.py
r5381 r5442 172 172 domain.set_maximum_allowed_speed(0.1) # Allow a little runoff (0.1 is OK) 173 173 print 'domain id', id(domain) 174 domain.beta_h = 0 174 175 175 domain.tight_slope_limiters = 0 176 176 -
anuga_work/production/onslow_2006/run_onslow_urs.py
r5151 r5442 167 167 domain.set_store_vertices_uniquely(False) 168 168 domain.set_quantities_to_be_stored(['stage', 'xmomentum', 'ymomentum']) 169 # domain.set_maximum_allowed_speed(0.1) # Allow a little runoff (0.1 is OK) 170 domain.beta_h = 0 #sets the surface of the triangle to follow the bathy 171 #domain.H0=0.01 #controls the flux limiter (limiter2007) 172 #domain.tight_slope_limiters = 1 #minimises creep 169 173 170 174 171 #------------------------------------------------------------------------- -
anuga_work/production/onslow_2006/ticket160_run.py
r4631 r5442 181 181 domain.set_quantities_to_be_stored(['stage', 'xmomentum', 'ymomentum']) 182 182 domain.set_maximum_allowed_speed(0.1) # Allow a little runoff (0.1 is OK) 183 domain.beta_h = 0184 domain.tight_slope_limiters = 1185 183 domain.H0=0.01 186 184 -
anuga_work/production/perth/run_perth.py
r5415 r5442 158 158 #domain.set_maximum_allowed_speed(0.1) # Allow a little runoff (0.1 is OK) 159 159 print 'domain id', id(domain) 160 domain.beta_h = 0 160 161 161 162 162 #------------------------------------------------------------------------- -
anuga_work/production/pt_hedland_2006/run_pt_hedland_urs.py
r4943 r5442 159 159 domain.set_store_vertices_uniquely(False) 160 160 domain.set_quantities_to_be_stored(['stage', 'xmomentum', 'ymomentum']) 161 domain.set_maximum_allowed_speed(0.1) # Allow a little runoff (0.1 is OK) 162 domain.beta_h = 0 #sets the surface of the triangle to follow the bathy 163 #domain.H0=0.01 #controls the flux limiter (limiter2007) 164 domain.tight_slope_limiters = 1 #minimises creep 161 165 162 166 163 #------------------------------------------------------------------------- -
anuga_work/production/shark_bay_2007/run_shark_bay.py
r4689 r5442 169 169 domain.set_maximum_allowed_speed(0.1) # Allow a little runoff (0.1 is OK) 170 170 print 'domain id', id(domain) 171 domain.beta_h = 0172 #domain.tight_slope_limiters = 1173 171 174 172 -
anuga_work/production/shark_bay_2007/run_shark_bay_embayment_study.py
r4885 r5442 118 118 domain.set_quantities_to_be_stored(['stage', 'xmomentum', 'ymomentum']) 119 119 120 domain.beta_h = 0 121 domain.tight_slope_limiters = 1 120 domain.tight_slope_limiters = True 122 121 123 122 -
anuga_work/production/shark_bay_2007/run_shark_bay_frequency_sweep.py
r4884 r5442 162 162 domain.set_maximum_allowed_speed(0.1) # Allow a little runoff (0.1 is OK) 163 163 print 'domain id', id(domain) 164 domain.beta_h = 0 165 domain.tight_slope_limiters = 1 164 domain.tight_slope_limiters = True 166 165 167 166 -
anuga_work/production/tonga/run_fangauta.py
r5212 r5442 160 160 #domain.set_maximum_allowed_speed(0.1) # Allow a little runoff (0.1 is OK) 161 161 print 'domain id', id(domain) 162 domain.beta_h = 0163 162 164 163 -
anuga_work/production/tonga/tongatapu.py
r5194 r5442 159 159 #domain.set_maximum_allowed_speed(0.1) # Allow a little runoff (0.1 is OK) 160 160 print 'domain id', id(domain) 161 domain.beta_h = 0 161 162 162 163 163 #------------------------------------------------------------------------------ -
anuga_work/production/west_tas_2008/run_west_tas_smf.py
r5245 r5442 118 118 domain.set_quantities_to_be_stored(['stage', 'xmomentum', 'ymomentum']) 119 119 domain.set_minimum_storable_height(0.01) 120 domain.beta_h = 0121 domain.tight_slope_limiters = 1122 120 domain.set_store_vertices_uniquely(False) 123 domain.set_maximum_allowed_speed(0.1) 121 124 122 125 123 #-------------------------------------------------------------------------------
Note: See TracChangeset
for help on using the changeset viewer.