From 8874157746332f042450be719eeb6e9dfb41e715 Mon Sep 17 00:00:00 2001 From: Francis Russell Date: Thu, 1 Nov 2012 18:22:46 +0000 Subject: [PATCH] Add analytic_to_psinc operator to second-level AST. --- OFC/SecondLevel.hs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/OFC/SecondLevel.hs b/OFC/SecondLevel.hs index 3f28048..1c9a1a0 100644 --- a/OFC/SecondLevel.hs +++ b/OFC/SecondLevel.hs @@ -103,6 +103,7 @@ data Expression e where Integrate :: Expression PsincE -> Expression ScalarE AnalyticMomentum :: OperatorExpr (Complex Double) MomentumTerminal -> Expression PsincReciprocalE AnalyticPosition :: OperatorExpr Double PositionTerminal -> Expression PsincE + AnalyticToPsinc :: Expression PsincE -> Integer -> Expression PsincE Sum :: Expression e -> String -> Expression e Add :: Expression e -> Expression e -> Expression e Sub :: Expression e -> Expression e -> Expression e @@ -136,6 +137,7 @@ instance PrettyPrintable (Expression e) where Sub a b -> binaryToDoc "-" a b AnalyticPosition e -> text "position_operator" <> (parens $ toDoc e) AnalyticMomentum e -> text "momentum_operator" <> (parens $ toDoc e) + AnalyticToPsinc e i -> functionToDoc "analytic_to_psinc" [toDoc e, toDoc i] MulScalar a b -> binaryToDoc "*" a b DivScalar a b -> binaryToDoc "/" a b Power a b -> binaryToDoc "^" a b -- 2.47.3