New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Fix broadcast bug and add new broadcast operations #495
Conversation
* Define hastags(A::ITensor, ts) and related functions.
Benchmark resultJudge resultBenchmark Report for /home/runner/work/ITensors.jl/ITensors.jlJob Properties
ResultsA ratio greater than
Benchmark Group ListHere's a list of all the benchmark groups executed by this job:
Julia versioninfoTarget
Baseline
Target resultBenchmark Report for /home/runner/work/ITensors.jl/ITensors.jlJob Properties
ResultsBelow is a table of this job's results, obtained by running the benchmarks.
Benchmark Group ListHere's a list of all the benchmark groups executed by this job:
Julia versioninfo
Baseline resultBenchmark Report for /home/runner/work/ITensors.jl/ITensors.jlJob Properties
ResultsBelow is a table of this job's results, obtained by running the benchmarks.
Benchmark Group ListHere's a list of all the benchmark groups executed by this job:
Julia versioninfo
Runtime information
|
Benchmark resultJudge resultBenchmark Report for /home/runner/work/ITensors.jl/ITensors.jlJob Properties
ResultsA ratio greater than
Benchmark Group ListHere's a list of all the benchmark groups executed by this job:
Julia versioninfoTarget
Baseline
Target resultBenchmark Report for /home/runner/work/ITensors.jl/ITensors.jlJob Properties
ResultsBelow is a table of this job's results, obtained by running the benchmarks.
Benchmark Group ListHere's a list of all the benchmark groups executed by this job:
Julia versioninfo
Baseline resultBenchmark Report for /home/runner/work/ITensors.jl/ITensors.jlJob Properties
ResultsBelow is a table of this job's results, obtained by running the benchmarks.
Benchmark Group ListHere's a list of all the benchmark groups executed by this job:
Julia versioninfo
Runtime information
|
This PR fixes and implements a few issues:
lastindex(A::ITensor, ::Int)
to implement the interfaceA[end, end]
(Definelastindex(::ITensor)
andlastindex(::ITensor,::Int)
#489)hastags
,anyhastags
andallhastags
for IndexSets and ITensors (Addanyhastags(::ITensor, ::String)
andallhastags(::ITensor, ::String)
#491)A .+= B .^ 2
(Bug in broadcasting ITensors #494)1 ./ A
(the same asA ^ -1
) andA ./ B
, (Hadamard division) (Add1 ./ A
broadcasting operation for ITensor #493)A ⊙ B
, as well as an in-place versionA .= A .⊙ B
(Add1 ./ A
broadcasting operation for ITensor #493)A reminder that standard Julia Array notation dictates that
C .= A .* B
is the Hadamard product, but we are using that for in-place tensor contractions.