[petsc-users] petscfe_type opencl, variable_coefficient field

Karl Rupp rupp at iue.tuwien.ac.at
Tue Apr 22 09:42:32 CDT 2014


Hi David,

 > Thanks. Also, the physics seems to be controlled by the "op" variable?
> Is there an interface to change the physics from the user code ?

I know that our intention is to provide the user with control over the 
physics in the long run, but (unless Matt implemented something 
recently) this is still work in progress...

Best regards,
Karli



>
> https://bitbucket.org/petsc/petsc/src/fb3a4ffdea0449562fb0f58dad4b44552b6d3589/src/dm/dt/interface/dtfe.c?at=master#cl-5028
>
> switch (op) {
>    case LAPLACIAN:
>      if (useF0) {ierr = PetscSNPrintfCount(string_tail, end_of_buffer - string_tail, "      f_0[fidx] = 4.0;\n", &count);STRING_ERROR_CHECK("Message to short");}
>      if (useF1) {
>        if (useAux) {ierr = PetscSNPrintfCount(string_tail, end_of_buffer - string_tail, "      f_1[fidx] = a[cell]*gradU[cidx];\n", &count);STRING_ERROR_CHECK("Message to short");}
>        else        {ierr = PetscSNPrintfCount(string_tail, end_of_buffer - string_tail, "      f_1[fidx] = gradU[cidx];\n", &count);STRING_ERROR_CHECK("Message to short");}
>      }
>      break;
>    case ELASTICITY:
>      if (useF0) {i
>
>
>
>
> On Tue, Apr 22, 2014 at 5:03 AM, Karl Rupp <rupp at iue.tuwien.ac.at
> <mailto:rupp at iue.tuwien.ac.at>> wrote:
>
>     Hi David,
>
>
>      > I'm trying to use
>
>
>         -variable_coefficient field  with -petscfe_type opencl
>         -mat_petscfe_type
>            opencl
>
>         constant coefficients "-variable_coefficient none" works fine,
>         but I am
>         getting NaN in my residual vector for spatially varying
>         coefficients.
>
>         I tried changing N_t manually for N_comp_aux =1, also tried
>         setting my
>         variable coefficient field to a constant at each quadrature
>         point to see
>         if any difference.
>
>
>     This is - unfortunately - a known issue, where we currently don't
>     know whether this is a race condition in the OpenCL kernel, or
>     something goes wrong with the data setup. I expect this to require
>     rather more elaborate debugging, so unfortunately I can only advise
>     you to wait until this is fixed...
>
>     Best regards,
>     Karli
>
>



More information about the petsc-users mailing list