holo basis as an argument for computation of dr basis
This commit is contained in:
parent
49cc75320d
commit
d480dda08b
@ -314,8 +314,9 @@ class as_cover:
|
||||
g = self.genus()
|
||||
return g - self.cartier_matrix().rank()
|
||||
|
||||
def cohomology_of_structure_sheaf_basis(self, threshold = 8):
|
||||
holo_diffs = self.holomorphic_differentials_basis(threshold = threshold)
|
||||
def cohomology_of_structure_sheaf_basis(self, holo_basis = 0, threshold = 8):
|
||||
if holo_basis == 0:
|
||||
holo_basis = self.holomorphic_differentials_basis(threshold = threshold)
|
||||
from itertools import product
|
||||
x_series = self.x_series
|
||||
y_series = self.y_series
|
||||
@ -341,7 +342,7 @@ class as_cover:
|
||||
for j in range(0, m):
|
||||
for k in product(*pr):
|
||||
f = as_function(self, prod(z[i1]^(k[i1]) for i1 in range(n))/x^i*y^j)
|
||||
f_products = [omega.serre_duality_pairing(f) for omega in holo_diffs]
|
||||
f_products = [omega.serre_duality_pairing(f) for omega in holo_basis]
|
||||
if vector(f_products) not in S:
|
||||
S = S+V.subspace([V(f_products)])
|
||||
result_fcts += [f]
|
||||
@ -384,11 +385,15 @@ class as_cover:
|
||||
return a*omega + fct.diffn()
|
||||
raise ValueError("Unknown.")
|
||||
|
||||
def de_rham_basis(self, threshold = 30):
|
||||
def de_rham_basis(self, holo_basis = 0, cohomology_basis = 0, threshold = 30):
|
||||
if holo_basis == 0:
|
||||
holo_basis = self.holomorphic_differentials_basis(threshold = threshold)
|
||||
if cohomology_basis == 0:
|
||||
cohomology_basis = self.cohomology_of_structure_sheaf_basis(holo_basis = holo_basis, threshold = threshold)
|
||||
result = []
|
||||
for omega in self.holomorphic_differentials_basis(threshold = threshold):
|
||||
for omega in holo_basis:
|
||||
result += [as_cech(self, omega, as_function(self, 0))]
|
||||
for f in self.cohomology_of_structure_sheaf_basis(threshold = threshold):
|
||||
for f in cohomology_basis:
|
||||
omega = self.lift_to_de_rham(f, threshold = threshold)
|
||||
result += [as_cech(self, omega, f)]
|
||||
return result
|
||||
|
@ -27,7 +27,10 @@ def group_action_matrices_dR(AS, threshold=8):
|
||||
ei = n*[0]
|
||||
ei[i] = 1
|
||||
generators += [ei]
|
||||
basis = [AS.holomorphic_differentials_basis(threshold = threshold), AS.cohomology_of_structure_sheaf_basis(threshold = threshold), AS.de_rham_basis(threshold=threshold)]
|
||||
holo_basis = AS.holomorphic_differentials_basis(threshold = threshold)
|
||||
str_basis = AS.cohomology_of_structure_sheaf_basis(holo_basis = holo_basis, threshold = threshold)
|
||||
dr_basis = AS.de_rham_basis(holo_basis = holo_basis, cohomology_basis = str_basis, threshold=threshold)
|
||||
basis = [holo_basis, str_basis, dr_basis]
|
||||
return group_action_matrices(basis[2], generators, basis = basis)
|
||||
|
||||
def group_action_matrices_old(C_AS):
|
||||
|
Loading…
Reference in New Issue
Block a user