View matrices in interface

Hi guys,

I have a weird question regarding implementing linear solver. After some discussion we decide to use (rho’, rho*u’, p’) as our variables ( ’ here means perturbation and without ’ is baseflow). So we need to deal with a term which operating gradient of baseflow. So far we have implemented these and changed everything in flux calculation and etc… But now we have a question when calculating interface: from what I understand, there will be a view matrix to separate flux point from elements and this is from mesh and stored in something like _scal_lhs. But I want to know where exactly it gets solution on those points. Since I need to do the same operation on baseflow but directly call this will only operate on perturbed flow variables. Is this operation depends on different backends?

I am not sure if I have express myself clear enough. Our flow variables are chosen that different from the paper that Niki sent to me because it is easier for our analysis but harder to implementation. So I have create new arrays to store baseflow variables along with perturbation variables. Do you have any idea of this view matrices? Especially where does it get solution values.

Best wishes,
Zhenyang

The views used by the interface flux calculation are views onto data at flux points. You can think of them as arrays of pointers where each element points to a flux point. This is what enables us to pair up flux points even though the mesh itself is unstructured.

Thus, the quantities you want to change at those at the fpts.

In general, for performance, you really only want to keep one set of variables around. Anything else will likely have a negative impact on performance/memory use.

Regards, Freddie.

Thanks Freddie. Yeah we are also thinking of appending baseflow variables with fluctuation variables together as one variable set. Though I don’t know how much memory usage will be improved but at least much less operations on different matrices. I will try this instead.