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

# SCM Repository

[diderot] Annotation of /branches/pure-cfg/TODO
 [diderot] / branches / pure-cfg / TODO

# Annotation of /branches/pure-cfg/TODO

Revision 789 - (view) (download)

 1 : glk 781 ======================== 2 : SHORT TERM ============= (for curvature-based VR) 3 : ======================== 4 : 5 : glk 789 For RGB color output of 2D transfer function (indexed by 6 : kappa1,kappa2), or for a 1D transfer function, will need 7 : something akin to convolution on vector images 8 : 9 : jhr 788 IL support for higher-order tensor values (matrices, etc). 10 : tensor construction 11 : tensor indexing and slicing 12 : verify that hessians work correctly 13 : 14 : jhr 763 Outer products 15 : syntax [DONE] 16 : typechecking 17 : IL and codegen 18 : 19 : Add M dot v, v dot M, and M dot N 20 : 21 : Identity matrix [DONE up to code generation] 22 : 23 : trace [DONE] 24 : 25 : glk 785 extend norm (|exp|) to tensor[3,3] 26 : jhr 763 27 : jhr 788 Use ∇⊗ etc. syntax 28 : jhr 763 syntax [DONE] 29 : typechecking 30 : IL and codegen 31 : 32 : Add sequence types 33 : syntax 34 : types: ty '{' INT '}' 35 : value construction: '{' e1 ',' … ',' en '}' 36 : indexing: e '{' e '}' 37 : 38 : jhr 784 Infix dot product and cross product [DONE] 39 : glk 781 40 : jhr 784 lerp on scalars and vectors [DONE] 41 : 42 : glk 781 ============================== 43 : glk 785 other SHORT TERM ============= (including needed for LIC) 44 : glk 781 ============================== 45 : 46 : glk 785 determinant ("det") for tensor[3,3] 47 : 48 : Decide if we want to allow redefinitions of variables 49 : (as in vr-lite-cam.diderot) 50 : 51 : extend norm (|exp|) to all tensor types 52 : 53 : extend normalize to all tensor types 54 : 55 : glk 781 vector fields: convolution on vector images 56 : 57 : jhr 788 expand trace in mid to low translation 58 : 59 : value-numbering optimization 60 : 61 : Add type aliases for color types 62 : rgb = real{3} 63 : rgba = real{4} 64 : 65 : glk 781 ============================== 66 : MEDIUM TERM ================== (needed for streamlines & tractography) 67 : ============================== 68 : 69 : ability to emit/track/record variables into dynamically re-sized 70 : runtime buffer 71 : 72 : evals & evecs for symmetric tensor[3,3] 73 : 74 : tensor fields: convolution on general tensor images 75 : 76 : ============================== 77 : other MEDIUM TERM ============ (needed for particles) 78 : ============================== 79 : 80 : run-time birth and death of strands 81 : 82 : "initially" supports lists 83 : 84 : "initially" supports lists of positions output from 85 : different initalization Diderot program 86 : 87 : spatial data structure that permits strands' queries of neighbors 88 : 89 : jhr 784 proper handling of stabilize method 90 : 91 : glk 781 ============================== 92 : LONG TERM ==================== 93 : ============================== 94 : 95 : co- vs contra- index distinction 96 : 97 : glk 783 add ":" for tensor dot product (contracts out two indices 98 : instead of one like •), valid for all pairs of tensors with 99 : at least two indices 100 : 101 : glk 781 some indication of tensor symmetry 102 : (have to identify the group of index permutations that are symmetries) 103 : 104 : dot works on all tensors 105 : 106 : outer works on all tensors 107 : 108 : Einstein summation notation 109 : 110 : "tensor comprehension" (like list comprehension) 111 : jhr 784 112 : ====================== 113 : BUGS ================= 114 : ====================== 115 : 116 : test/mip-cam.diderot: 117 : // generated C code looks like "(float)p_ui_0--0.5e0f" 118 : //real rayU = 2.0*camUmax*(real(ui) - -0.5)/real(imgResU) - camUmax; 119 : 120 : test/vr-kcomp.diderot: 121 : // HEY (scoping BUG): the strand parameters (e.g. ui, vi) ... 122 : 123 : test/zslice2.diderot: 124 : // but is this not valid syntax for creating field in one shot? 125 : //field#2(3)[] F = (load("../data/zimg112.nrrd")) ⊛ bspln3; 126 : // It is valid syntax, but there is a bug in the conversion from HighIL to MidIL 127 : 128 : test/zslice2.diderot: 129 : // HEY (bug) bspln5 leads to problems ... 130 : // uncaught exception Size [size] 131 : // raised at c-target/c-target.sml:47.15-47.19 132 : //field#4(3)[] F = img ⊛ bspln5; 133 : 134 :

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