Open oj-lappi opened 3 years ago
precalculate smooth kernel allocate additional vertex buffer for variable 'shock' (communicated) (DSL: v)
update ghost zones for all variables (Library: v) shock = div(u) (DSL: v)
update ghost zones for shock shock = maximum_over_cubicle(shock) (needs second buffer; Library: v)
update ghost zones for shock shock = smooth_over_cubicle(shock) (needs second buffer)
rescale: shock = shock*dxmin**2 (DSL: v)
nu_shock(shock(div(u)grad(lnrho)+grad(div(u)))+div(u)grad(shock)) (DSL: v)
Shock viscosity is there and it survives common sense level of testing.
What we will need is a way to embed it into parallel framework, as now it only work on single GPU.
Skeleton of shock_highorder (by Matthias)
Initialization:
precalculate smooth kernel allocate additional vertex buffer for variable 'shock' (communicated) (DSL: v)
Calculation of shock:
update ghost zones for all variables (Library: v) shock = div(u) (DSL: v)
update ghost zones for shock shock = maximum_over_cubicle(shock) (needs second buffer; Library: v)
update ghost zones for shock shock = smooth_over_cubicle(shock) (needs second buffer)
rescale: shock = shock*dxmin**2 (DSL: v)
Calculation of viscous force:
nu_shock(shock(div(u)grad(lnrho)+grad(div(u)))+div(u)grad(shock)) (DSL: v)