inducer / inducer/arraycontext

DeprecationWarning when broadcasting scalar array type over DOFArray

Aberta
#292 3 comentários 0 reações 0 responsáveis Ver no GitHub
Linguagem predominante
Python
Estrelas
9
Forks
11
Merge médio
17h 12min
PRs com merge (30d)
2

Descrição

As discussed from CS meeting earlier, I am getting a `DeprecationWarning` when dividing a DOFArray by an arraycontext scalar:

```
/Users/nnytko2/Git/ceesd-nonlinear-solve/code/actx_issue.py:17: DeprecationWarning: Broadcasting over array context array type is deprecated and will no longer work in 2025. There is no replacement as of right now. See the discussion in https://github.com/inducer/arraycontext/pull/190.
y = x / flat_norm(x) # Warning occurs here
```

And minimal reproducing example:
```python
import numpy as np
import pyopencl as cl
from grudge.discretization import make_discretization_collection
from meshmode.array_context import PyOpenCLArrayContext
from meshmode.mesh.generation import generate_box_mesh
from meshmode.dof_array import flat_norm
from pytools.obj_array import flat_obj_array

ctx = cl.create_some_context()
queue = cl.CommandQueue(ctx)
actx = PyOpenCLArrayContext(queue)

mesh = generate_box_mesh((np.linspace(0, 1, 10),))
dcoll = make_discretization_collection(actx, mesh, order=1)

x = dcoll.zeros(actx) + 1.
y = x / flat_norm(x) # Warning occurs here

```

Guia de contribuição

Nenhum guia de contribuição indexado para este repositório

Direção de pesquisa

Comece com o reprodutor mínimo, especialmente com a divisão em `y = x / flat_norm(x)`, e compare o aviso com a discussão de arraycontext PR 190. Rastreie como `DOFArray` interage com o tipo escalar do contexto de arrays durante a divisão. Está concluído quando o reprodutor não emitir mais este aviso de descontinuação e a operação continuar tendo sucesso.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
python
Domínio
backend
Tipo de issue
Bug
Dificuldade
4/5
Tempo estimado
3-5 dias
Status de atividade
Estagnada
Clareza
Razoavelmente clara
Facilidade para iniciantes
35/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.