diff --git a/matrices.py b/matrices.py index 01093da..672f64e 100644 --- a/matrices.py +++ b/matrices.py @@ -3,10 +3,13 @@ import scipy.sparse as sparse -def constructC(dxOpTemp, rhsDxOpTemp, dyOpTemp, rhsDyOpTemp, psi, dxOpPsi, dyOpPsi, sqrtRa): +def constructC(dxOpTemp, rhsDxOpTemp, dyOpTemp, rhsDyOpTemp, dlOpTemp, rhsDlOpTemp, psi, dxOpPsi, dyOpPsi, sqrtRa): - rhs = sqrtRa * (rhsDxOpTemp * (dyOpPsi * psi) - rhsDyOpTemp * (dxOpPsi * psi)) + dxPsi = sparse.diags((dxOpPsi @ psi)[:, 0], 0) + dyPsi = sparse.diags((dyOpPsi @ psi)[:, 0], 0) - return sqrtRa * ( - sparse.diags([(dxOpTemp * dyOpPsi * psi)[:, 0]], [0]) - sparse.diags([(dxOpPsi * psi)[:, 0]], [0])), rhs - # return 0 + C = sqrtRa * (dyPsi @ dxOpTemp - dxPsi @ dyOpTemp ) - dlOpTemp + + rhsC = - rhsDlOpTemp + sqrtRa * (dyPsi @ rhsDxOpTemp- dyPsi @ rhsDyOpTemp) + + return C,rhsC