@@ -52,12 +52,18 @@ def cons_to_prim(U, gamma, ivars, myg):
5252 q = myg .scratch_array (nvar = ivars .nq )
5353
5454 q [:, :, ivars .irho ] = U [:, :, ivars .idens ]
55- q [:, :, ivars .iu ] = U [:, :, ivars .ixmom ]/ U [:, :, ivars .idens ]
56- q [:, :, ivars .iv ] = U [:, :, ivars .iymom ]/ U [:, :, ivars .idens ]
57-
58- e = (U [:, :, ivars .iener ] -
59- 0.5 * q [:, :, ivars .irho ]* (q [:, :, ivars .iu ]** 2 +
60- q [:, :, ivars .iv ]** 2 ))/ q [:, :, ivars .irho ]
55+ q [:, :, ivars .iu ] = np .divide (U [:, :, ivars .ixmom ], U [:, :, ivars .idens ],
56+ out = np .zeros_like (U [:, :, ivars .ixmom ]),
57+ where = (U [:, :, ivars .idens ] != 0.0 ))
58+ q [:, :, ivars .iv ] = np .divide (U [:, :, ivars .iymom ], U [:, :, ivars .idens ],
59+ out = np .zeros_like (U [:, :, ivars .iymom ]),
60+ where = (U [:, :, ivars .idens ] != 0.0 ))
61+
62+ e = np .divide (U [:, :, ivars .iener ] - 0.5 * q [:, :, ivars .irho ] *
63+ (q [:, :, ivars .iu ]** 2 + q [:, :, ivars .iv ]** 2 ),
64+ q [:, :, ivars .irho ],
65+ out = np .zeros_like (U [:, :, ivars .iener ]),
66+ where = (U [:, :, ivars .idens ] != 0.0 ))
6167
6268 q [:, :, ivars .ip ] = eos .pres (gamma , q [:, :, ivars .irho ], e )
6369
0 commit comments