#481 `iszero` workaround
Mantenedores costumam responder em até 1 dia
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 4/5
- Tempo estimado
- 3-5 dias
- Facilidade para iniciantes
- 25/100
Direção de pesquisa
Comece com a chamada relatada em BesselK.jl, src/besk_temme.jl por volta da linha 43, e inspecione como ForwardDiff.Dual interage atualmente com iszero e ForwardDiff.value. Esclareça se está previsto um teste genérico compatível para valor zero ou um acessor público. Considera-se concluído quando houver uma API acordada ou uma abordagem documentada que evite exigir que os usuários dependam de detalhes internos do ForwardDiff.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Like a couple other people here, I am experiencing some issues with #481. My issue is in BesselK.jl, where I have some very specific methods that branch on an iszero(x) that were broken (for example).
I understand the logic of the change and clearly an argument can be made for it, but it is disappointing that the only solution I can come up with now is to bring ForwardDiff into the dependency tree and define ugly methods
_iszero(x) = iszero(x)
_iszero(x::ForwardDiff.Dual) = _iszero(ForwardDiff.value(x))
I am sure that it's too late to argue for just reverting #481, but it would be nice if there were some way to check that ForwardDiff.value(x) is zero without having to bring ForwardDiff into the tree. Is there some other generic comparison method in Base or something that ForwardDiff can add methods to that checks for zero values? Or is there some getter function that one can use to get ForwardDiff.value(x)? I'm very happy to write a different check than iszero---but I think it would be nice for the check to be possible without bringing the internal getters of ForwardDiff.jl into scope.
Excuse me if I'm using any incorrect terminology and thanks in advance for any thoughts you can share on this.
- Linguagem predominante
- Julia
- Estrelas
- 1k
- Forks
- 165
- Merge médio
- 8d 22h
- PRs com merge (30d)
- 3
Preparar o ambiente
Este projeto não oferece contêiner de desenvolvimento, Dockerfile nem guia de contribuição, então a configuração fica por sua conta: comece pelo README e veja nosso guia da primeira contribuição para os passos gerais.
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de JuliaDiff/ForwardDiff.jl
-
missing floatmin, floatmax, and issubnormal for DualTalvez já em andamento @devmotion assumiu há 34 dias. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
JuliaDiff/ForwardDiff.jl#852 · 6 comentários ·
Mantenedores costumam responder em até 1 dia
-
`min` does not return the minimum with respect to `isless` when values tieTalvez já em andamento @devmotion assumiu há 8 dias. Aberta
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 55/100
JuliaDiff/ForwardDiff.jl#868 ·
Mantenedores costumam responder em até 1 dia
-
Enable NaN-safe mode by defaultTalvez já em andamento @devmotion assumiu há 22 dias. Aberta
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 25/100
JuliaDiff/ForwardDiff.jl#857 · 1 reação ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 52/100
JuliaDiff/ForwardDiff.jl#854 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 75/100
JuliaDiff/ForwardDiff.jl#849 ·
Mantenedores costumam responder em até 1 dia
Todas as issues de JuliaDiff/ForwardDiff.jl
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 76/100
Sienna-Platform/InfrastructureSystems.jl#675 ·
Mantenedores costumam responder em até 2 dias
-
TargetEncoder reuses the first level's shrinkage factor for all levels when m > 0Talvez já em andamento @parth-patel010 assumiu hoje. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
JuliaAI/MLJTransforms.jl#95 · 1 comentário ·
-
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 85/100
SciML/RecursiveArrayTools.jl#687 ·
Mantenedores costumam responder em até 3 dias
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 66/100
SciML/Corleone.jl#179 ·
Mantenedores costumam responder em até 1 dia
-
Setup Aqua.jlAberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
JuliaUQ/UncertaintyQuantification.jl#363 ·
Mantenedores costumam responder em até 1 dia