Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and...

30
Symbolic and numeric Symbolic and numeric Symbolic and numeric Symbolic and numeric Scientific computing for Scientific computing for Scientific computing for Scientific computing for atomic phySicS atomic phySicS atomic phySicS atomic phySicS University of Delaware University of Delaware Computational Science Initiative meeting Computational Science Initiative meeting November 9, 2007 Marianna Safronova Marianna Safronova

Transcript of Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and...

Page 1: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

Symbolic and numeric Symbolic and numeric Symbolic and numeric Symbolic and numeric

Scientific computing for Scientific computing for Scientific computing for Scientific computing for

atomic phySicSatomic phySicSatomic phySicSatomic phySicS

Symbolic and numeric Symbolic and numeric Symbolic and numeric Symbolic and numeric

Scientific computing for Scientific computing for Scientific computing for Scientific computing for

atomic phySicSatomic phySicSatomic phySicSatomic phySicS

University of Delaware University of Delaware Computational Science Initiative meetingComputational Science Initiative meeting

November 9, 2007

Marianna SafronovaMarianna Safronova

Page 2: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

• Motivation

• Symbolic computing

• Numeric computing

• Computational challenges & future projects

outlineoutlineoutlineoutlineoutlineoutlineoutlineoutline

Page 3: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

Research field:Research field: development of development of highhigh --precision methodologies for precision methodologies for the calculation of the the calculation of the atomic atomic propertiesproperties and applications of and applications of such calculations. such calculations.

reSearch fieldreSearch fieldreSearch fieldreSearch fieldreSearch fieldreSearch fieldreSearch fieldreSearch field

This research involves:This research involves:

•• the study of thethe study of the fundamental physics fundamental physics problems problems

•• applications of atomic physics to future applications of atomic physics to future technological technological developmentsdevelopments

http://CPEPweb.org

Page 4: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

motivation: fundamental phySicSmotivation: fundamental phySicSmotivation: fundamental phySicSmotivation: fundamental phySicSmotivation: fundamental phySicSmotivation: fundamental phySicSmotivation: fundamental phySicSmotivation: fundamental phySicS

http://CPEPweb.org, http://public.web.cern.ch/, Cs experiment, University of Colorado

http://CPEPweb.org

Page 5: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

motivation: motivation: motivation: motivation: applicationS to applicationS to applicationS to applicationS to

variouS fieldS of phySicSvariouS fieldS of phySicSvariouS fieldS of phySicSvariouS fieldS of phySicS

motivation: motivation: motivation: motivation: applicationS to applicationS to applicationS to applicationS to

variouS fieldS of phySicSvariouS fieldS of phySicSvariouS fieldS of phySicSvariouS fieldS of phySicS

• Search for variation of the fundamental fine-structure constant with time

• Development of the high-precision methodologies , benchmark problems for understanding of atomic properties, tests of ab initio theory and experimental methods, and cross-checks of experiment

• Determination of nuclear properties such as nuclear magnetic and anapole moments

• Providing data for astrophysics studies

Page 6: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

Quantum communication, cryptography Quantum communication, cryptography Quantum communication, cryptography Quantum communication, cryptography

and Quantum information proceSSingand Quantum information proceSSingand Quantum information proceSSingand Quantum information proceSSing

motivation: motivation: motivation: motivation:

new technologieSnew technologieSnew technologieSnew technologieS

motivation: motivation: motivation: motivation:

new technologieSnew technologieSnew technologieSnew technologieS

Page 7: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

S1/2

P1/2

D5/2

Quantumbit

Quantum Computer(Innsbruck)

Page 8: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

motiation: next motiation: next motiation: next motiation: next

generation atomic clockSgeneration atomic clockSgeneration atomic clockSgeneration atomic clockS

motiation: next motiation: next motiation: next motiation: next

generation atomic clockSgeneration atomic clockSgeneration atomic clockSgeneration atomic clockS

Next - generation ultra precise atomic clock

Atoms trapped by laser light

http://CPEPweb.org

The ability to develop more precise optical frequency standards will open ways to improve global positioningsystem (GPS) measurements and tracking of deep-spaceprobes, perform more accurate measurements of the physical constants and tests of fundamental physics such as searches for gravitational waves, etc.

Page 9: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

motivationmotivationmotivationmotivationmotivationmotivationmotivationmotivation

AtomicClocks

S1/2

P1/2D5/2

„quantumbit“

Parity Violation

Quantum information

NEEDNEEDATOMIC ATOMIC PROPERTIESPROPERTIES

Page 10: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

calculation of atomic calculation of atomic calculation of atomic calculation of atomic

properiteSproperiteSproperiteSproperiteS

calculation of atomic calculation of atomic calculation of atomic calculation of atomic

properiteSproperiteSproperiteSproperiteS

Step 1 Derivation of the formulas

Step 2 Conducting possible analytical calculationsto simplify expressions for numeric evaluation

Step 3 Writing and debugging the programs for numeric calculations

Step 4 Numeric calculations

Page 11: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

calculation of atomic calculation of atomic calculation of atomic calculation of atomic

properiteSproperiteSproperiteSproperiteS

calculation of atomic calculation of atomic calculation of atomic calculation of atomic

properiteSproperiteSproperiteSproperiteS

Step 1 Derivation of the formulas

Step 2 Conducting possible analytical calculationsto simplify expression for numerical evaluation

Step 3 Writing and debugging the programs for numerical calculations

Step 4 Numeric computation

Steps 1 Steps 1 –– 3: Symbolic computing

3: Symbolic computing

Page 12: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

coupledcoupledcoupledcoupled----cluSter methodcluSter methodcluSter methodcluSter methodcoupledcoupledcoupledcoupled----cluSter methodcluSter methodcluSter methodcluSter method

The coupledcoupledcoupledcoupled----cluster methodcluster methodcluster methodcluster method sums infinite setsinfinite setsinfinite setsinfinite sets of many-body perturbation theory terms. The wave function of the valence electron v is represented as an expansion that includes all possible single, double, and partial triple excitations.

1s22s22p63s23p63d104s24p64d105s25p66s

1s1s22…5p…5p66 6s6scorevalenceelectron

Cs: atom with single (valence) electron outside of a closed core.

Page 13: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

coupledcoupledcoupledcoupled----cluSter methodcluSter methodcluSter methodcluSter methodcoupledcoupledcoupledcoupled----cluSter methodcluSter methodcluSter methodcluSter method

vΨ = Lowest orderCore

core

valence electron

any excited orbital

Single-particle excitations

Double-particle excitations

(0)vΨ

† (0)m m

ma a v

aa aρ+ Ψ∑

† (0)v v vm m

m va aρ

≠+ Ψ∑

† † (0) (0† † )12

...

vm n mna a aa m nmnmnmn

b b v vaab

va a aa a aa aρ ρ+ Ψ + Ψ

+

∑ ∑

Page 14: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

2 (0)2 | | 0: :

12

: cm n c adi j l k bv vr sa a aa a aa a a aaH aS a+ + + ++ ++ >→Ψ >

800 terms!800 terms!800 terms!800 terms!800 terms!800 terms!800 terms!800 terms!

Step 1: derivation of the formulaSStep 1: derivation of the formulaSStep 1: derivation of the formulaSStep 1: derivation of the formulaSStep 1: derivation of the formulaSStep 1: derivation of the formulaSStep 1: derivation of the formulaSStep 1: derivation of the formulaS

Need for symbolic computingNeed for symbolic computing

The code was developed to implement Wick’s theorem and simplify the expression.

Page 15: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

Symbolic program for coupledSymbolic program for coupledSymbolic program for coupledSymbolic program for coupled----cluSter cluSter cluSter cluSter

method & perturbation theorymethod & perturbation theorymethod & perturbation theorymethod & perturbation theory

Symbolic program for coupledSymbolic program for coupledSymbolic program for coupledSymbolic program for coupled----cluSter cluSter cluSter cluSter

method & perturbation theorymethod & perturbation theorymethod & perturbation theorymethod & perturbation theory

Input: expression of the type

in ASCII format.

Output: simplified resulting formula in the LaTex format, ASCII output is also generated.

:: : :ijkl mnwa i j l m wak ng a a aaa aaaρ + ++ + +

Page 16: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

program featureSprogram featureSprogram featureSprogram featureSprogram featureSprogram featureSprogram featureSprogram featureS

1) The code is set to work with two or three normal products (all possible cases) with large number of operators.

2) The code differentiates between different types of indices, i.e.core (a,b,c,…), valence (v,w,x,y,...), excited orbitals (m,n,r,s,…), and general case (i, j, k, l,…).

3) The operators are ordered as required in the same order for all terms.

4) The expression is simplified to account for the identical terms and symmetry rules, .

5) The direct and exchange terms are joined together, .

ijkl jilkgg =

ijkl ijkl ijlkg gg = −%

mnba rswc m n r s a c wbg a a a a a a a aρ + + + + +

Page 17: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

Step 2: analytical calculationSStep 2: analytical calculationSStep 2: analytical calculationSStep 2: analytical calculationSStep 2: analytical calculationSStep 2: analytical calculationSStep 2: analytical calculationSStep 2: analytical calculationS

Certain summations can be carried out analytically

Two symbolic programs are currently available:

1) KENTARO – currently interfaced with the previousprogram.

2) RACAH Maple code – very convenient to use, but hascompatibility problems.

Page 18: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

Step 3: Symbolic computing for Step 3: Symbolic computing for Step 3: Symbolic computing for Step 3: Symbolic computing for

program generationprogram generationprogram generationprogram generation

Step 3: Symbolic computing for Step 3: Symbolic computing for Step 3: Symbolic computing for Step 3: Symbolic computing for

program generationprogram generationprogram generationprogram generation

The resulting expressions that need to be evaluated numerically contain very large number of terms, resulting in tedious coding and debugging.

The symbolic program generator was developed for this purpose to automatically generate efficient numerical codes for coupled-cluster or perturbation theory terms.

( )

1 2 3 '

2 ' ' 3 11 2 3

1 2 3

' '

( 1)

( ) ( ' ' ) ( )

c d a b c dJ k k k j j j jc d w w

abcd k k k w v w v b a

k k k

c d v w a b

J j j J j j J j j

k j j k j j k j j

X cdab X v w cd Z vwab

ε ε ε ε ε ε ε

+ + + + + + + − −

× + − − + −

∑ ∑

( )' 'v wε−

Page 19: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

Step 3: Symbolic computing for Step 3: Symbolic computing for Step 3: Symbolic computing for Step 3: Symbolic computing for

program generationprogram generationprogram generationprogram generation

Step 3: Symbolic computing for Step 3: Symbolic computing for Step 3: Symbolic computing for Step 3: Symbolic computing for

program generationprogram generationprogram generationprogram generation

Input: Input: list of formulas to be programmedlist of formulas to be programmedOutput: Output: corresponding FORTRAN code for corresponding FORTRAN code for

numerical evaluationnumerical evaluation

Sample input:Sample input:

1 subroutine term1d(nvp,kvp,nwp,kwp,nv,kv,nw,kw,jtot,res)2 X[k1](c,d,a,b) X[k2](vp,wp,c,d) Z[k3](v,w,a,b) 3 none4 4xx z1=(-1)**(1+jtot+k1+k2+k3+kapc+kapd+kapw+kapwp) xx z2=d6j(2*jtot,jc,jd,2*k2,jwp,jvp)xx z3=d6j(ja,jb,2*jtot,jw,jv,2*k3)xx z4=d6j(jc,jd,2*jtot,jb,ja,2*k1)5 (e[c,d]-e[vp,wp]) (e[a,b]-e[vp,wp])6 No

( )

1 2 3 '

2 ' ' 3 11 2 3

1 2 3

' '

( 1)

( ) ( ' ' ) ( )

c d a b c dJ k k k j j j jc d w w

abcd k k k w v w v b a

k k k

c d v w a b

J j j J j j J j j

k j j k j j k j j

X cdab X v w cd Z vwab

ε ε ε ε ε ε ε

+ + + + + + + − −

× + − − + −

∑ ∑

( )' 'v wε−

Page 20: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

Step 3: Symbolic computing for Step 3: Symbolic computing for Step 3: Symbolic computing for Step 3: Symbolic computing for

program generationprogram generationprogram generationprogram generation

Step 3: Symbolic computing for Step 3: Symbolic computing for Step 3: Symbolic computing for Step 3: Symbolic computing for

program generationprogram generationprogram generationprogram generation

Features: Simple input, essentially just type in a formula.Efficient codes are producedOther constructs can be easily addedSafety features are build inWorks for most formulasFuture plans: interface with formula-writing codes

Page 21: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

Step 4: numerical computationStep 4: numerical computationStep 4: numerical computationStep 4: numerical computationStep 4: numerical computationStep 4: numerical computationStep 4: numerical computationStep 4: numerical computation

1. Coupled-cluster method: iterative solution of very large number of equations

2. Relativistic many-body perturbation theory: evaluation of terms such as example considered before

3. Configuration-interaction (CI) method: finding a few eigenvalues of large matrices

4. Combination of coupled-cluster and CI: general super CI code* (in progress)

Page 22: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

coupledcoupledcoupledcoupled----cluSter methodcluSter methodcluSter methodcluSter methodcoupledcoupledcoupledcoupled----cluSter methodcluSter methodcluSter methodcluSter method

Page 23: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

The excitation coefficients ρ are obtained by the iterative solution of the corresponding equations. Owing to the very large number of the equations the code needs to be very efficient. The inclusion of the triple excitations require new approaches owing to substantially larger memory and computer time requirements.

Cs: a,b = 1s22s22p63s23p63d104s24p64d105s25p6

m,n : finite basis set = (35 ×××× 13) ×××× (35 ×××× 13)19 000 000 equations

Extra index r gives at least a factor of (35 ×××× 13).

bmnaρ

bmnrvaρ

coupledcoupledcoupledcoupled----cluSter methodcluSter methodcluSter methodcluSter methodcoupledcoupledcoupledcoupled----cluSter methodcluSter methodcluSter methodcluSter method

Page 24: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

These are really complicated equations !!!

• “Quadruple” term:

• Program has to be exceptionally efficient!

rsmnrs rsabg ρ∑

IndicesIndices mnrsmnrs can be can be ANYANY orbitalsorbitals

Basis set: Basis set: nnmaxmax==3535, , llmaxmax==66

17x17x(17x17x(3535xx1313))44=5 x 10=5 x 101212!!

a,b core(17 shells)

coupledcoupledcoupledcoupled----cluSter methodcluSter methodcluSter methodcluSter methodcoupledcoupledcoupledcoupled----cluSter methodcluSter methodcluSter methodcluSter method

bmnaρ

Page 25: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

computational challengeScomputational challengeScomputational challengeScomputational challengeScomputational challengeScomputational challengeScomputational challengeScomputational challengeS

I. Efficiency of the most complicated terms

II. Efficient parallelization

III. Numerical methods

IV. Keeping up with new hardware/software and corresponding compatibility problems

Page 26: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

computational challengeScomputational challengeScomputational challengeScomputational challengeScomputational challengeScomputational challengeScomputational challengeScomputational challengeS

1) Efficiency of the most complicated terms:

• Can it be improved further?• Is any time being wasted owing to imperfect

loop ordering?• Automated code optimization?

2) Efficient parallelization, especially for triple excitations

How to do efficient parallelization of iterative procedures with large local files?

rsmnrs rsabg ρ∑

Page 27: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

computational challengeScomputational challengeScomputational challengeScomputational challengeScomputational challengeScomputational challengeScomputational challengeScomputational challengeS

3) Efficient parallel codes for configuration interaction method (finding few eigenvalues of large matrices)

4) New approaches for the numerical basis sets (currently using B splines)

5) Resolving convergence issues for the iterative procedure in the cases of large excitations from nearby core shells.

6) Computing on multicore machines

Page 28: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

concluSionconcluSionconcluSionconcluSionconcluSionconcluSionconcluSionconcluSion

AtomicClocks

S1/2

P1/2D5/2

Quantumbit

Fundamental Physics

Quantum information

Symbolic and Numeric Symbolic and Numeric Computing for Computing for Atomic CalculationsAtomic Calculations

Page 29: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

other theory collaborationS:other theory collaborationS:other theory collaborationS:other theory collaborationS:

Charles Clark and Carl Williams (NIST)Walter Johnson (University of Notre Dame)Ulyana Safronova (University of Nevada-Reno)Michael Kozlov (Petersburg Nuclear Physics Institut e)Victor Flambaum and Vladimir Dzuba (UNSW, Australia )

graduate StudentS:graduate StudentS:graduate StudentS:graduate StudentS:

bindiya arorabindiya arorabindiya arorabindiya arora

rupSi palrupSi palrupSi palrupSi pal

Jenny tchoukovaJenny tchoukovaJenny tchoukovaJenny tchoukova

danSha JiangdanSha JiangdanSha JiangdanSha Jiang

Group web site: http://www.physics.udel.edu/~msafrono

Page 30: Symbolic and numeric Scientific computing for atomic …msafrono/Safronova2007.pdf · Symbolic and numeric Scientific computing for atomic phySicS Symbolic and numeric Scientific

nSf workShopnSf workShopnSf workShopnSf workShop

on cyberon cyberon cyberon cyber----enabled diScovery enabled diScovery enabled diScovery enabled diScovery

and innovationand innovationand innovationand innovation ( cdi )( cdi )( cdi )( cdi )

NSF solicitationhttp://www.nsf.gov/pubs/2007/nsf07603/nsf07603.htm

Workshop pagehttp://www4.ncsu.edu/~kaltofen/CDI_SYMNUM_Itinerary.html