-
Notifications
You must be signed in to change notification settings - Fork 120
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
[FTheoryTools] Added more checks for G4 fluxes #4044
Conversation
emikelsons
commented
Aug 26, 2024
•
edited
Loading
edited
- Added verticality check for G4 fluxes
- Changed zero_section method to now return a cohomology class in the toric ambient space. Old version of the method is now under zero_section_coordinates(this is outdated, see below)
- Added D3-tadpole cancellation check for G4 fluxes.
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #4044 +/- ##
=======================================
Coverage 84.61% 84.61%
=======================================
Files 612 612
Lines 83156 83200 +44
=======================================
+ Hits 70359 70402 +43
- Misses 12797 12798 +1
|
I have just merged #3979. It seems this leads to to merge conflicts (see below the CI test results). @emikelsons , could you please rebase to the current master. |
I would think that the two test failures are unrelated to your changes, but we could see this more clearly once the tests are executed with your PR rebase to the current master. |
b47d807
to
3ac3986
Compare
numb = integrate(cohomology_class(ambient_space(m), twist_g4 * cy * c_ds[i] * c_ds[j]); check = false) | ||
numb = integrate(cohomology_class(ambient_space(m), twist_g4 * c_ds[i] * c_ds[j] * cy); check = false) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I suppose this an unrelated change? Is it critical?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not really critical. This happened as a result of some testing, but I left it as it made sense to me to have the hyperplane class at the end so that the expression is more readily comparable to the doc description.
"hypersurface_equation": "s1*e1^2*e2^2*e3*e4^4*u^3+s2*e1*e2^2*e3^2*e4^2*u^2*v+s3*e2^2*e3^3*u*v^2+s5*e1^2*e2*e4^3*u^2*w+s6*e1*e2*e3*e4*u*v*w+s9*e1*v*w^2", | ||
"zero_section": "v" |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Is the zero section for this model really v? I do not recall it at the top of my head, just want to double-check. (Probably you already did that.)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I saw it mentioned in the paper, it passed all of the tests and that was good enough for me
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I found two missing ensure_artifacts_installed
. Please make sure to always include this line in doctests accessing the QSMDB: As the order of doctests in non-deterministic, any doctest might be the first one accessing the QSMDB. And if this setup is then missing, it will make the doctest fail. See e.g. of such an instance.
experimental/FTheoryTools/src/AbstractFTheoryModels/attributes.jl
Outdated
Show resolved
Hide resolved
Thank you for catching this @lgoettgens ! |
experimental/FTheoryTools/src/AbstractFTheoryModels/attributes.jl
Outdated
Show resolved
Hide resolved
e8d3d2f
to
35f9b27
Compare
Thank you for working on this @emikelsons . This looks good to me! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I approve this PR modulo the above changes to the used references.
@emikelsons please adjust these references and ping me once you have done. Then this can be merged.
@@ -63,7 +63,7 @@ end | |||
@doc raw""" | |||
passes_verticality_checks(gf::G4Flux) | |||
|
|||
G4-fluxes are subject to verticality conditions described in [Lin16](@cite). | |||
G4-fluxes are subject to verticality conditions described in [Lin16](@cite) and [KMW12](@cite). |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I would suggest to link to Timo Weigand F-theory TASI lectures instead. Maybe in fact, replace those two references with this?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@apturner also suggests to reference instead of Ling's thesis the historically first paper that ever talked about these conditions. For this, just check which papers the above Tasi lectures reference.
docs/oscar_references.bib
Outdated
@Article{KMW12, | ||
author = {Krause, Sven and Mayrhofer, Christoph and Weigand, Timo}, | ||
title = {Gauge fluxes in F-theory and type IIB orientifolds}, | ||
journal = {Journal of High Energy Physics}, | ||
volume = {2012}, | ||
number = {8}, | ||
publisher = {Springer Science and Business Media LLC}, | ||
year = {2012}, | ||
month = {8}, | ||
doi = {10.1007/jhep08(2012)119}, | ||
eprint = {1202.3138} | ||
} | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Presumably we do not need this reference? See comment below.
@@ -1245,7 +1248,7 @@ function euler_characteristic(m::AbstractFTheoryModel; check::Bool = true) | |||
|
|||
# Check if the answer is known | |||
if has_attribute(m, :euler_characteristic) | |||
return get_attribute(m, :euler_characteristic)::CohomologyClass | |||
return get_attribute(m, :euler_characteristic)::Int |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a great change. We need this!
Another point raised just now is about the global naming scheme within
Bonus points: |
julia> h = euler_characteristic(qsm_model; check = false) | ||
378 | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
julia> h = euler_characteristic(qsm_model; check = false) | |
378 |
these three lines are already there right below
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I added these lines twice on purpose to function as an additional test
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just to elaborate a bit: Once euler_characteristic
is called for the 2nd time, it fetches the saved value of the attribute. This process failed in the past, because of the wrong type cast. Now this will be tested.
fb72e59
to
38520cd
Compare
I have changed the references though I was not able to find the historically first paper that mentions the verticality conditions. I also reverted back to zero_section for the original zero_section and introduced the method zero_section_class that return the cohomology class. @HereAround @apturner |
The historically first paper regarding the verticality conditions seems to be https://arxiv.org/abs/1111.1232 (cf. https://arxiv.org/pdf/1806.01854, page 86, below equation 9.8). |
38520cd
to
96eb31c
Compare
96eb31c
to
79dc60c
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for working on this @emikelsons . This looks good to me now.