Skip to content

Derivatives (Laplacian, gradient) not working correctly for curvilinear coordinates

I have run the test components/03-derivatives_3d.01.inp and I have added

CurvMethod = curv_gygi
CurvGygiA = 0.80

to enable curvilinear coordinates.

The output contains

Laplacian real bsize =   1 , error =  2.8248979810E+04 , Gflops =    0.228
...
Batch gradient real bsize =   1 , error (x direction) =  2.0642621385E+03 , Gflops =    0.202

which means that the errors are very large. Without curvilinear coordinates, the errors are of the order of 1e-5. Moreover, there is an error because some functions are not implemented for curvilinear coordinates (dcoordinate_system_covector_to_cartesian).

Thus, the derivatives are not working correctly for curvilinear coordinates.