Commit c8252e01 authored by Martin Reinecke's avatar Martin Reinecke

Merge branch 'generalizediagprobing' into 'NIFTy_5'

Generalize the probing of the diagonal of an operator to MultiFields

See merge request !330
parents e50e65f4 c399b303
Pipeline #51702 passed with stages
in 9 minutes and 13 seconds
...@@ -15,9 +15,9 @@ ...@@ -15,9 +15,9 @@
# #
# NIFTy is being developed at the Max-Planck-Institut fuer Astrophysik. # NIFTy is being developed at the Max-Planck-Institut fuer Astrophysik.
from .field import Field
from .operators.endomorphic_operator import EndomorphicOperator from .operators.endomorphic_operator import EndomorphicOperator
from .operators.operator import Operator from .operators.operator import Operator
from .sugar import from_random
class StatCalculator(object): class StatCalculator(object):
...@@ -131,7 +131,6 @@ def probe_diagonal(op, nprobes, random_type="pm1"): ...@@ -131,7 +131,6 @@ def probe_diagonal(op, nprobes, random_type="pm1"):
''' '''
sc = StatCalculator() sc = StatCalculator()
for i in range(nprobes): for i in range(nprobes):
input = Field.from_random(random_type, op.domain) x = from_random(random_type, op.domain)
output = op(input) sc.add(op(x).conjugate()*x)
sc.add(output.conjugate()*input)
return sc.mean return sc.mean
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment