From 817ea380a0a0f9ff7a740ac80801ec8f05ef9dfe Mon Sep 17 00:00:00 2001 From: Charles Kawczynski Date: Fri, 27 Aug 2021 07:55:43 -0700 Subject: [PATCH] Stencil order bug fix --- integration_tests/utils/mse_tables.jl | 258 +++++++++++++------------- src/Operators.jl | 4 +- 2 files changed, 131 insertions(+), 131 deletions(-) diff --git a/integration_tests/utils/mse_tables.jl b/integration_tests/utils/mse_tables.jl index 9e82fe2a8..0431ad578 100644 --- a/integration_tests/utils/mse_tables.jl +++ b/integration_tests/utils/mse_tables.jl @@ -5,157 +5,157 @@ all_best_mse = OrderedDict() # all_best_mse["ARM_SGP"] = OrderedDict() -all_best_mse["ARM_SGP"]["qt_mean"] = 0.2693897197460219 -all_best_mse["ARM_SGP"]["updraft_area"] = 2173.6793850220097 -all_best_mse["ARM_SGP"]["updraft_w"] = 293.3269698212915 -all_best_mse["ARM_SGP"]["updraft_qt"] = 12.05195754803038 -all_best_mse["ARM_SGP"]["updraft_thetal"] = 27.68723522467255 -all_best_mse["ARM_SGP"]["u_mean"] = 87.99854727781789 -all_best_mse["ARM_SGP"]["tke_mean"] = 500.0461948426373 -all_best_mse["ARM_SGP"]["temperature_mean"] = 0.00011440714280251712 -all_best_mse["ARM_SGP"]["ql_mean"] = 299.54195024913435 -all_best_mse["ARM_SGP"]["thetal_mean"] = 0.00011743895031047754 -all_best_mse["ARM_SGP"]["Hvar_mean"] = 7244.704191980796 -all_best_mse["ARM_SGP"]["QTvar_mean"] = 3851.5044576467894 +all_best_mse["ARM_SGP"]["qt_mean"] = 0.31083230679335183 +all_best_mse["ARM_SGP"]["updraft_area"] = 2129.887040081693 +all_best_mse["ARM_SGP"]["updraft_w"] = 335.65939747300877 +all_best_mse["ARM_SGP"]["updraft_qt"] = 12.908050962527675 +all_best_mse["ARM_SGP"]["updraft_thetal"] = 27.68113450321576 +all_best_mse["ARM_SGP"]["u_mean"] = 87.99854727781786 +all_best_mse["ARM_SGP"]["tke_mean"] = 514.8771310983082 +all_best_mse["ARM_SGP"]["temperature_mean"] = 0.00012673869547986125 +all_best_mse["ARM_SGP"]["ql_mean"] = 434.5076265731047 +all_best_mse["ARM_SGP"]["thetal_mean"] = 0.0001312405013265037 +all_best_mse["ARM_SGP"]["Hvar_mean"] = 1811.4318038760819 +all_best_mse["ARM_SGP"]["QTvar_mean"] = 1475.3959416614648 # all_best_mse["Bomex"] = OrderedDict() -all_best_mse["Bomex"]["qt_mean"] = 0.11696723986920135 -all_best_mse["Bomex"]["updraft_area"] = 687.5363807056209 -all_best_mse["Bomex"]["updraft_w"] = 33.45806153103777 -all_best_mse["Bomex"]["updraft_qt"] = 4.304677541359278 -all_best_mse["Bomex"]["updraft_thetal"] = 21.547432672635104 -all_best_mse["Bomex"]["v_mean"] = 67.8251542015898 -all_best_mse["Bomex"]["u_mean"] = 53.31039902619233 -all_best_mse["Bomex"]["tke_mean"] = 41.72367460893107 -all_best_mse["Bomex"]["temperature_mean"] = 5.011029859651441e-5 -all_best_mse["Bomex"]["ql_mean"] = 13.49082381898438 -all_best_mse["Bomex"]["thetal_mean"] = 5.1156380105242586e-5 -all_best_mse["Bomex"]["Hvar_mean"] = 6922.281546393689 -all_best_mse["Bomex"]["QTvar_mean"] = 5297.568101639559 +all_best_mse["Bomex"]["qt_mean"] = 0.11530291480539559 +all_best_mse["Bomex"]["updraft_area"] = 696.580444679966 +all_best_mse["Bomex"]["updraft_w"] = 32.6498436301293 +all_best_mse["Bomex"]["updraft_qt"] = 4.2825922378176005 +all_best_mse["Bomex"]["updraft_thetal"] = 21.546300155493363 +all_best_mse["Bomex"]["v_mean"] = 68.69179470764105 +all_best_mse["Bomex"]["u_mean"] = 53.30953176101998 +all_best_mse["Bomex"]["tke_mean"] = 42.30438685639641 +all_best_mse["Bomex"]["temperature_mean"] = 4.941373792118928e-5 +all_best_mse["Bomex"]["ql_mean"] = 14.703328528235684 +all_best_mse["Bomex"]["thetal_mean"] = 5.043852827032637e-5 +all_best_mse["Bomex"]["Hvar_mean"] = 5563.2477089832955 +all_best_mse["Bomex"]["QTvar_mean"] = 3919.6882782407647 # all_best_mse["DryBubble"] = OrderedDict() -all_best_mse["DryBubble"]["updraft_area"] = 537.7411995544287 -all_best_mse["DryBubble"]["updraft_w"] = 439.6450388933592 -all_best_mse["DryBubble"]["updraft_thetal"] = 6.844279472307909e-5 -all_best_mse["DryBubble"]["u_mean"] = 1.9163303873206793e-27 -all_best_mse["DryBubble"]["tke_mean"] = 1.363876230262993e6 -all_best_mse["DryBubble"]["temperature_mean"] = 4.2554884271537436e-5 -all_best_mse["DryBubble"]["thetal_mean"] = 3.458321316417488e-5 -all_best_mse["DryBubble"]["Hvar_mean"] = 8.246234946618268e10 +all_best_mse["DryBubble"]["updraft_area"] = 0.0 +all_best_mse["DryBubble"]["updraft_w"] = 0.0 +all_best_mse["DryBubble"]["updraft_thetal"] = 0.0 +all_best_mse["DryBubble"]["u_mean"] = 0.0 +all_best_mse["DryBubble"]["tke_mean"] = 0.0 +all_best_mse["DryBubble"]["temperature_mean"] = 0.0 +all_best_mse["DryBubble"]["thetal_mean"] = 0.0 +all_best_mse["DryBubble"]["Hvar_mean"] = 0.0 # all_best_mse["DYCOMS_RF01"] = OrderedDict() -all_best_mse["DYCOMS_RF01"]["qt_mean"] = 0.016846086981155667 -all_best_mse["DYCOMS_RF01"]["ql_mean"] = 4.053152970431937 -all_best_mse["DYCOMS_RF01"]["updraft_area"] = 235.0938337556774 -all_best_mse["DYCOMS_RF01"]["updraft_w"] = 4.472671688687445 -all_best_mse["DYCOMS_RF01"]["updraft_qt"] = 1.1339718422238465 -all_best_mse["DYCOMS_RF01"]["updraft_thetal"] = 12.73770544348642 -all_best_mse["DYCOMS_RF01"]["v_mean"] = 39.857612277418 -all_best_mse["DYCOMS_RF01"]["u_mean"] = 37.14543569188786 -all_best_mse["DYCOMS_RF01"]["tke_mean"] = 12.25196526021806 -all_best_mse["DYCOMS_RF01"]["temperature_mean"] = 3.580639411602e-5 -all_best_mse["DYCOMS_RF01"]["thetal_mean"] = 3.641212082495165e-5 -all_best_mse["DYCOMS_RF01"]["Hvar_mean"] = 8032.12940402278 -all_best_mse["DYCOMS_RF01"]["QTvar_mean"] = 628.128230391618 +all_best_mse["DYCOMS_RF01"]["qt_mean"] = 0.017141595263082388 +all_best_mse["DYCOMS_RF01"]["ql_mean"] = 3.9027826633491656 +all_best_mse["DYCOMS_RF01"]["updraft_area"] = 238.7715164762518 +all_best_mse["DYCOMS_RF01"]["updraft_w"] = 4.376046418525048 +all_best_mse["DYCOMS_RF01"]["updraft_qt"] = 1.1293404340913655 +all_best_mse["DYCOMS_RF01"]["updraft_thetal"] = 12.737856375819822 +all_best_mse["DYCOMS_RF01"]["v_mean"] = 39.85706430135813 +all_best_mse["DYCOMS_RF01"]["u_mean"] = 37.144800382648675 +all_best_mse["DYCOMS_RF01"]["tke_mean"] = 12.187454105253483 +all_best_mse["DYCOMS_RF01"]["temperature_mean"] = 3.68205187356337e-5 +all_best_mse["DYCOMS_RF01"]["thetal_mean"] = 3.737433465590873e-5 +all_best_mse["DYCOMS_RF01"]["Hvar_mean"] = 8002.439385600797 +all_best_mse["DYCOMS_RF01"]["QTvar_mean"] = 628.9992701382023 # all_best_mse["GABLS"] = OrderedDict() -all_best_mse["GABLS"]["updraft_thetal"] = 1.8607700597419424e-11 -all_best_mse["GABLS"]["v_mean"] = 3.663279764768892e-6 -all_best_mse["GABLS"]["u_mean"] = 1.468389368774763e-7 -all_best_mse["GABLS"]["tke_mean"] = 5.51861156240862e-6 -all_best_mse["GABLS"]["temperature_mean"] = 2.212635396532455e-10 -all_best_mse["GABLS"]["thetal_mean"] = 1.394819839636548e-11 -all_best_mse["GABLS"]["Hvar_mean"] = 7.643558866911783e-6 -all_best_mse["GABLS"]["QTvar_mean"] = 9.984936873302068e-7 +all_best_mse["GABLS"]["updraft_thetal"] = 0.0 +all_best_mse["GABLS"]["v_mean"] = 0.0 +all_best_mse["GABLS"]["u_mean"] = 0.0 +all_best_mse["GABLS"]["tke_mean"] = 0.0 +all_best_mse["GABLS"]["temperature_mean"] = 0.0 +all_best_mse["GABLS"]["thetal_mean"] = 0.0 +all_best_mse["GABLS"]["Hvar_mean"] = 0.0 +all_best_mse["GABLS"]["QTvar_mean"] = 0.0 # all_best_mse["life_cycle_Tan2018"] = OrderedDict() -all_best_mse["life_cycle_Tan2018"]["qt_mean"] = 0.005501929028909763 -all_best_mse["life_cycle_Tan2018"]["ql_mean"] = 2.2170489213439084 -all_best_mse["life_cycle_Tan2018"]["updraft_area"] = 1.129911979843718 -all_best_mse["life_cycle_Tan2018"]["updraft_w"] = 1.3284065672464727 -all_best_mse["life_cycle_Tan2018"]["updraft_qt"] = 0.12626379657690123 -all_best_mse["life_cycle_Tan2018"]["updraft_thetal"] = 6.779740706458118e-5 -all_best_mse["life_cycle_Tan2018"]["v_mean"] = 0.9194602218316783 -all_best_mse["life_cycle_Tan2018"]["u_mean"] = 0.001561972065428296 -all_best_mse["life_cycle_Tan2018"]["tke_mean"] = 0.8427629833971092 -all_best_mse["life_cycle_Tan2018"]["temperature_mean"] = 2.8490885987918525e-6 -all_best_mse["life_cycle_Tan2018"]["thetal_mean"] = 2.693754647044811e-6 -all_best_mse["life_cycle_Tan2018"]["Hvar_mean"] = 14538.597487019617 -all_best_mse["life_cycle_Tan2018"]["QTvar_mean"] = 13023.664723793392 +all_best_mse["life_cycle_Tan2018"]["qt_mean"] = 0.0 +all_best_mse["life_cycle_Tan2018"]["ql_mean"] = 0.0 +all_best_mse["life_cycle_Tan2018"]["updraft_area"] = 0.0 +all_best_mse["life_cycle_Tan2018"]["updraft_w"] = 0.0 +all_best_mse["life_cycle_Tan2018"]["updraft_qt"] = 0.0 +all_best_mse["life_cycle_Tan2018"]["updraft_thetal"] = 0.0 +all_best_mse["life_cycle_Tan2018"]["v_mean"] = 0.0 +all_best_mse["life_cycle_Tan2018"]["u_mean"] = 0.0 +all_best_mse["life_cycle_Tan2018"]["tke_mean"] = 0.0 +all_best_mse["life_cycle_Tan2018"]["temperature_mean"] = 0.0 +all_best_mse["life_cycle_Tan2018"]["thetal_mean"] = 0.0 +all_best_mse["life_cycle_Tan2018"]["Hvar_mean"] = 0.0 +all_best_mse["life_cycle_Tan2018"]["QTvar_mean"] = 0.0 # all_best_mse["Nieuwstadt"] = OrderedDict() -all_best_mse["Nieuwstadt"]["updraft_area"] = 489.9526907715387 -all_best_mse["Nieuwstadt"]["updraft_w"] = 20.7596220750589 -all_best_mse["Nieuwstadt"]["updraft_thetal"] = 30.475250589031102 -all_best_mse["Nieuwstadt"]["u_mean"] = 152.71050158276125 -all_best_mse["Nieuwstadt"]["tke_mean"] = 72.26464433116266 -all_best_mse["Nieuwstadt"]["temperature_mean"] = 1.073512089461286e-5 -all_best_mse["Nieuwstadt"]["thetal_mean"] = 1.0895947537819106e-5 -all_best_mse["Nieuwstadt"]["Hvar_mean"] = 204.60444077397446 +all_best_mse["Nieuwstadt"]["updraft_area"] = 513.0388671337554 +all_best_mse["Nieuwstadt"]["updraft_w"] = 23.151956380414088 +all_best_mse["Nieuwstadt"]["updraft_thetal"] = 30.47513824518694 +all_best_mse["Nieuwstadt"]["u_mean"] = 152.64695548930985 +all_best_mse["Nieuwstadt"]["tke_mean"] = 72.47533922092761 +all_best_mse["Nieuwstadt"]["temperature_mean"] = 1.1004662317674507e-5 +all_best_mse["Nieuwstadt"]["thetal_mean"] = 1.1168053403192467e-5 +all_best_mse["Nieuwstadt"]["Hvar_mean"] = 207.8534876488109 # all_best_mse["Rico"] = OrderedDict() -all_best_mse["Rico"]["qt_mean"] = 0.3523291649829391 -all_best_mse["Rico"]["updraft_area"] = 1951.14702483592 -all_best_mse["Rico"]["updraft_w"] = 179.12630305218923 -all_best_mse["Rico"]["updraft_qt"] = 16.150710797379027 -all_best_mse["Rico"]["updraft_thetal"] = 63.59840611508518 -all_best_mse["Rico"]["v_mean"] = 106.25285859427599 -all_best_mse["Rico"]["u_mean"] = 114.2202724281447 -all_best_mse["Rico"]["tke_mean"] = 375.22304675304326 -all_best_mse["Rico"]["temperature_mean"] = 0.0001647943154261777 -all_best_mse["Rico"]["ql_mean"] = 30.419114258979825 -all_best_mse["Rico"]["thetal_mean"] = 0.00014421978606945455 -all_best_mse["Rico"]["Hvar_mean"] = 17543.46402373834 -all_best_mse["Rico"]["QTvar_mean"] = 11213.288776530182 +all_best_mse["Rico"]["qt_mean"] = 0.39429604103275545 +all_best_mse["Rico"]["updraft_area"] = 2013.2701876832032 +all_best_mse["Rico"]["updraft_w"] = 155.5005223050154 +all_best_mse["Rico"]["updraft_qt"] = 15.287315187565602 +all_best_mse["Rico"]["updraft_thetal"] = 63.610299165920786 +all_best_mse["Rico"]["v_mean"] = 106.22389568484279 +all_best_mse["Rico"]["u_mean"] = 114.11113266820267 +all_best_mse["Rico"]["tke_mean"] = 350.8208409228491 +all_best_mse["Rico"]["temperature_mean"] = 0.0001831151724761663 +all_best_mse["Rico"]["ql_mean"] = 46.934654210777424 +all_best_mse["Rico"]["thetal_mean"] = 0.00015949425192269306 +all_best_mse["Rico"]["Hvar_mean"] = 20291.397257510616 +all_best_mse["Rico"]["QTvar_mean"] = 11655.345172764153 # all_best_mse["Soares"] = OrderedDict() -all_best_mse["Soares"]["qt_mean"] = 0.1307900956241168 -all_best_mse["Soares"]["updraft_area"] = 438.76468941085903 -all_best_mse["Soares"]["updraft_w"] = 19.379768387925118 -all_best_mse["Soares"]["updraft_qt"] = 10.991243502994012 -all_best_mse["Soares"]["updraft_thetal"] = 22.394796405255317 -all_best_mse["Soares"]["u_mean"] = 727.8223543487718 -all_best_mse["Soares"]["tke_mean"] = 62.00243646561718 -all_best_mse["Soares"]["temperature_mean"] = 1.1023482479159843e-5 -all_best_mse["Soares"]["thetal_mean"] = 1.1593214251078093e-5 -all_best_mse["Soares"]["Hvar_mean"] = 237.05037894581898 +all_best_mse["Soares"]["qt_mean"] = 0.14716663824689807 +all_best_mse["Soares"]["updraft_area"] = 435.29470113787187 +all_best_mse["Soares"]["updraft_w"] = 21.71020889226695 +all_best_mse["Soares"]["updraft_qt"] = 11.050335066054227 +all_best_mse["Soares"]["updraft_thetal"] = 22.394634477306546 +all_best_mse["Soares"]["u_mean"] = 728.8344460511609 +all_best_mse["Soares"]["tke_mean"] = 62.14546419541622 +all_best_mse["Soares"]["temperature_mean"] = 1.1527586280208458e-5 +all_best_mse["Soares"]["thetal_mean"] = 1.2114382486227884e-5 +all_best_mse["Soares"]["Hvar_mean"] = 246.76221335636998 # all_best_mse["SP"] = OrderedDict() -all_best_mse["SP"]["qt_mean"] = 1.531467094722502 -all_best_mse["SP"]["updraft_area"] = 5.674090900352873 -all_best_mse["SP"]["updraft_w"] = 1.2740455200527503 -all_best_mse["SP"]["updraft_qt"] = 1.7117808320093308 -all_best_mse["SP"]["updraft_thetal"] = 0.10513654302101921 -all_best_mse["SP"]["v_mean"] = 0.1136171869512979 -all_best_mse["SP"]["u_mean"] = 5.122416228801096e-5 -all_best_mse["SP"]["tke_mean"] = 0.1434333079461273 -all_best_mse["SP"]["temperature_mean"] = 6.579018892729269e-7 -all_best_mse["SP"]["thetal_mean"] = 4.703562233212733e-7 -all_best_mse["SP"]["Hvar_mean"] = 18691.78634557004 -all_best_mse["SP"]["QTvar_mean"] = 508.56279426887613 +all_best_mse["SP"]["qt_mean"] = 0.0 +all_best_mse["SP"]["updraft_area"] = 0.0 +all_best_mse["SP"]["updraft_w"] = 0.0 +all_best_mse["SP"]["updraft_qt"] = 0.0 +all_best_mse["SP"]["updraft_thetal"] = 0.0 +all_best_mse["SP"]["v_mean"] = 0.0 +all_best_mse["SP"]["u_mean"] = 0.0 +all_best_mse["SP"]["tke_mean"] = 0.0 +all_best_mse["SP"]["temperature_mean"] = 0.0 +all_best_mse["SP"]["thetal_mean"] = 0.0 +all_best_mse["SP"]["Hvar_mean"] = 0.0 +all_best_mse["SP"]["QTvar_mean"] = 0.0 # all_best_mse["TRMM_LBA"] = OrderedDict() -all_best_mse["TRMM_LBA"]["qt_mean"] = 1.7300195676220578 -all_best_mse["TRMM_LBA"]["updraft_area"] = 23603.653322982067 -all_best_mse["TRMM_LBA"]["updraft_w"] = 878.4974893774211 -all_best_mse["TRMM_LBA"]["updraft_qt"] = 26.81689604916568 -all_best_mse["TRMM_LBA"]["updraft_thetal"] = 110.00742534325907 -all_best_mse["TRMM_LBA"]["v_mean"] = 292.0998277637934 -all_best_mse["TRMM_LBA"]["u_mean"] = 1688.1570108460635 -all_best_mse["TRMM_LBA"]["tke_mean"] = 1222.617242714107 -all_best_mse["TRMM_LBA"]["temperature_mean"] = 0.0006964686546550397 -all_best_mse["TRMM_LBA"]["ql_mean"] = 1028.6862167230377 -all_best_mse["TRMM_LBA"]["thetal_mean"] = 0.008182533869331265 -all_best_mse["TRMM_LBA"]["Hvar_mean"] = 1567.2149219405144 -all_best_mse["TRMM_LBA"]["QTvar_mean"] = 1634.4199974383455 +all_best_mse["TRMM_LBA"]["qt_mean"] = 1.58348832185085 +all_best_mse["TRMM_LBA"]["updraft_area"] = 23661.145609241987 +all_best_mse["TRMM_LBA"]["updraft_w"] = 874.7053835685812 +all_best_mse["TRMM_LBA"]["updraft_qt"] = 27.334000033055865 +all_best_mse["TRMM_LBA"]["updraft_thetal"] = 110.0156654232232 +all_best_mse["TRMM_LBA"]["v_mean"] = 292.06873681324146 +all_best_mse["TRMM_LBA"]["u_mean"] = 1688.1637119508557 +all_best_mse["TRMM_LBA"]["tke_mean"] = 1133.0570484602802 +all_best_mse["TRMM_LBA"]["temperature_mean"] = 0.0006159543641257377 +all_best_mse["TRMM_LBA"]["ql_mean"] = 1012.4814052110991 +all_best_mse["TRMM_LBA"]["thetal_mean"] = 0.008134034386983655 +all_best_mse["TRMM_LBA"]["Hvar_mean"] = 1539.1355527815185 +all_best_mse["TRMM_LBA"]["QTvar_mean"] = 1603.3436795331029 # all_best_mse["LES_driven_SCM"] = OrderedDict() -all_best_mse["LES_driven_SCM"]["qt_mean"] = 6.955579572711767 -all_best_mse["LES_driven_SCM"]["v_mean"] = 3.7115932474857054 -all_best_mse["LES_driven_SCM"]["u_mean"] = 1.1968938524379116 -all_best_mse["LES_driven_SCM"]["temperature_mean"] = 0.004895789161917334 -all_best_mse["LES_driven_SCM"]["ql_mean"] = 335.2282274951558 -all_best_mse["LES_driven_SCM"]["thetal_mean"] = 0.003185373544782518 +all_best_mse["LES_driven_SCM"]["qt_mean"] = 7.002673544885207 +all_best_mse["LES_driven_SCM"]["v_mean"] = 3.7069751180781934 +all_best_mse["LES_driven_SCM"]["u_mean"] = 1.1960543190154145 +all_best_mse["LES_driven_SCM"]["temperature_mean"] = 0.004911981765108061 +all_best_mse["LES_driven_SCM"]["ql_mean"] = 351.37815211486225 +all_best_mse["LES_driven_SCM"]["thetal_mean"] = 0.003199788458992111 # ################################# ################################# diff --git a/src/Operators.jl b/src/Operators.jl index e0bbf9071..41eb1c2ef 100644 --- a/src/Operators.jl +++ b/src/Operators.jl @@ -179,7 +179,7 @@ function dual_faces(f::AbstractVector, grid, k::Int) elseif is_toa_center(grid, k) return SVector(f[k - 1]) else - return SVector(f[k], f[k - 1]) + return SVector(f[k - 1], f[k]) end end function dual_faces(f::AbstractMatrix, grid, k::Int, i_up::Int) @@ -188,6 +188,6 @@ function dual_faces(f::AbstractMatrix, grid, k::Int, i_up::Int) elseif is_toa_center(grid, k) return SVector(f[i_up, k - 1]) else - return SVector(f[i_up, k], f[i_up, k - 1]) + return SVector(f[i_up, k - 1], f[i_up, k]) end end