Home My Page Projects Code Snippets Project Openings diderot
Summary Activity Tracker Tasks SCM

SCM Repository

[diderot] Diff of /trunk/src/basis/basis.sml
ViewVC logotype

Diff of /trunk/src/basis/basis.sml

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 75, Mon May 24 20:41:18 2010 UTC revision 78, Mon May 24 22:31:49 2010 UTC
# Line 6  Line 6 
6   * Type definitions for Basis functions.   * Type definitions for Basis functions.
7   *)   *)
8    
9  structure Basis =  structure Basis : sig
10    struct  
11        val env : Env.env
12    
13      end = struct
14      local      local
15        structure N = BasisNames        structure N = BasisNames
16        structure Ty = Types        structure Ty = Types
# Line 69  Line 72 
72                  in                  in
73                    [field(k, d, dd), tensor[d]] --> Ty.T_Tensor dd                    [field(k, d, dd), tensor[d]] --> Ty.T_Tensor dd
74                  end)),                  end)),
75            (N.op_at, all([DK, NK, SK],            (N.op_D, all([DK, NK, SK],
76              fn [Ty.DIFF k, Ty.DIM d, Ty.SHAPE dd] => let              fn [Ty.DIFF k, Ty.DIM d, Ty.SHAPE dd] => let
77                  val k0 = Ty.DiffVar(k, 0)                  val k0 = Ty.DiffVar(k, 0)
78                  val km1 = Ty.DiffVar(k, ~1)                  val km1 = Ty.DiffVar(k, ~1)
# Line 121  Line 124 
124            (N.kn_tent,   ty(Ty.T_Kernel(Ty.DiffConst 0)))            (N.kn_tent,   ty(Ty.T_Kernel(Ty.DiffConst 0)))
125          ]          ]
126    
127        (* seed the basis environment *)
128          val env = let
129                fun ins ((name, ty), env) = let
130                      val x = Var.newPoly (name, AST.BasisVar, ty)
131                      in
132                        Env.insertGlobal (env, name, x)
133                      end
134                in
135                  List.foldl ins (Env.new()) basis
136                end
137    
138      end (* local *)      end (* local *)
139    end    end

Legend:
Removed from v.75  
changed lines
  Added in v.78

root@smlnj-gforge.cs.uchicago.edu
ViewVC Help
Powered by ViewVC 1.0.0