Skip to content
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

Skeleton updates #3

Merged
merged 3 commits into from
Dec 10, 2024
Merged

Skeleton updates #3

merged 3 commits into from
Dec 10, 2024

Conversation

lkdvos
Copy link
Contributor

@lkdvos lkdvos commented Dec 10, 2024

This PR brings the package up to date with the skeleton v0.2.0.

Note that there is a rather large amount of ambiguities related to wrapping number types like this, which I did not yet solve here. (similar to LabelledNumbers.jl)
There are also a couple type piracies that should be resolved.

As a comment for future reference: it might be easier to define GradedAxis along the following lines:

struct GradedUnitRange{Label,T,BlockLasts,GBU<:AbstractGradedBlockUnitRange{T,BlockLasts}} <: AbstractGradedBlockUnitRange{T,BlockLasts}
  blockunitrange::GBU
  labels::Label
end

This avoids the need of having the labels being integers etc, thus circumventing the invalidations/ambiguities.

Copy link

codecov bot commented Dec 10, 2024

Welcome to Codecov 🎉

Once you merge this PR into your default branch, you're all set! Codecov will compare coverage reports and display results in all future pull requests.

Thanks for integrating Codecov - We've got you covered ☂️

@mtfishman
Copy link
Member

mtfishman commented Dec 10, 2024

As a comment for future reference: it might be easier to define GradedAxis along the following lines:

We can try that again, that is closer to the original design from a while ago but I moved to the latest design with the hope that we could take advantage of generic range code in Base and BlockArrays, while preserving the sector information to use it when it is needed (i.e. the sector information is "along for the ride" through generic code). I think it is still up for debate if the tradeoffs of the current design are worth it, but what I like about the current design is that when you index into a GradedUnitRange, i.e. g[2], it outputs the range value along with information about the sector. That is consistent with the fact that we want slices like g[Block.(2:3)], g[2:5], g[Block(2)], etc. to preserve the sector information.

@mtfishman mtfishman merged commit 4f628c4 into ITensor:main Dec 10, 2024
11 checks passed
@lkdvos lkdvos deleted the skeleton branch December 10, 2024 09:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants