Friday, January 30, 2015

DAY 30 OF 100]FRIDAY ,30 JAN 2015


1Python
decorators unpacking args ,passing objs 

Wednesday, January 28, 2015

DAY 28 OF 100] WEDNESDAY ,28 JAN 2015


1Python
counter , benchmark decorator functions/examples

Tuesday, January 27, 2015

DAY 27 OF 100] TUESDAY ,27 JAN 2015


1Python

functools.wraps debug help for decorated function

Monday, January 26, 2015

DAY 26 OF 100] MONDAY ,26 JAN 2015


1Linear Algebra 

figured out the algorithm from first principles.It is imp to expand the equation A = LDLt into it's partitioned matrix form and then equate the RHS LHS terms in each partition.Now it only needs a rank1 update and a vector scaling.

implemented the LDLt algo using laff routines.looks like it takes less number of flops since sqrt(alpha11) call is not needed ..

tested for 3x3 and 4x4 matrices ..

will do the triangular solves (which may require 3 passes .. for L,D and Lt ) later..


implemented routines for
Lz=b
Dy=z
Ltx=y

tested for 3x3 and 4x4 matrices
Ltx=y solve does not transpose L explicitly


Sunday, January 25, 2015

DAY 25 OF 100] SUNDAY ,25 JAN 2015


1Linear Algebra

did LDLt factorization by hand for 3x3 and 4x4 matrices .Was confused by L*D  mult..
will try to figure out algo as per Geijn's notations


Saturday, January 24, 2015

DAY 24 OF 100] SATURDAY ,24 JAN 2015


1.Python
decorator maker with kwargs

Friday, January 23, 2015

DAY 23 OF 100] FRIDAY ,23 JAN 2015


1.Linear Algebra
cholesky fact with SPD -
     modified code to avoid transposing the column a21 to calculate rank1 update
Back sunbstitution implemented. No transposing of the LTM needed to do LLt = A
The algo now uses l21(which would be aa12t in the transpose) instead of  transposing L to get Lt .

All 3 routines are now tested

cholesky = takes in A which is an  SPD and converts it into an LTM with some old elements(of A) in upper triang part

solve_lzb = takes in the LTM (actually updated A )produced by cholesky , and a vector b.Updates b with the elements of z

solve_uxb = takes in the  LTM produced by cholesky, and the updated b (which now is actually z)
Originally,the L has to be transposed to get Lt and then solve Lt*x = b. Here we work with the required elements in LTM and ignore the old elements from A.The vector b is updated to contain elements of x.

This exercise helped to think about traversal thru matrix.. 

satisfying day :)

Thursday, January 22, 2015

DAY 22 OF 100] THURSDAY ,22 JAN 2015


1.Linear Algebra
cholesky fact with SPD - implementation done
Ltm_lzb solve implementation done 

need to test on more datasets
will do the impl of uxb solve tomorrow

Wednesday, January 21, 2015


DAY 21OF 100] WEDNESDAY ,21 JAN 2015


1.Linear Algebra
cholesky fact with SPD example

successfully did back subst for Lz = b and Ltx = z 

need to work out impl..

Tuesday, January 20, 2015


DAY 20 OF 100] TUESDAY ,20 JAN 2015


1.Linear Algebra
cholesky fact with SPD example

further fwd/back subst failed!

find out why

DAY 19 OF 100] MONDAY ,19 JAN 2015


Python
SO - deco maker with arg passing

Sunday, January 18, 2015


DAY 18 OF 100] SUNDAY ,18 JAN 2015


Python
SO article   -- decorator maker

Saturday, January 17, 2015


DAY 17 OF 100] SATURDAY ,17 JAN 2015


Tkinter
ch10/simple dialog - modified version 

Thursday, January 15, 2015


DAY 16 OF 100] FRIDAY ,16 JAN 2015


1.Linear Algebra

SPD - choelsky  factorization impl
need more work here.. 
tried LU fact/and solves 
similar on SPD failed when cholesky was attempted

2.Python
SO article    -- manual and by syntax deco with arbit/args

3.Tkinter
ch10/simple dialog - modified version  transient and grab_set

Wednesday, January 14, 2015


DAY 15 OF 100] THURSDAY ,15 JAN 2015


1.Linear Algebra

SPD - choelsky  factorization

2.Python
SO article    -passing args to method s

3.Tkinter
ch10/simple dialog - problems ,

Tuesday, January 13, 2015



DAY 14 OF 100] WEDNESDAY ,14 JAN 2015


1.Linear Algebra


8.3 (Almost) Never, Ever Invert a Matrix
8.3.1 Solving Ax = b

2.Python

SO article on decorators
upto accumulation and arg passing

Tkinter
ch10 / improving simple dialog

Monday, January 12, 2015


DAY 13 OF 100] TUESDAY ,13 JAN 2015

1.Linear Algebra

Challenge 8.2.5.5   -- final work / impl


8.3 (Almost) Never, Ever Invert a Matrix
8.3.1 Solving Ax = b

Sunday, January 11, 2015


DAY 12 OF 100] MONDAY ,12 JAN 2015

1.Linear Algebra

Challenge 8.2.5.5   -- figured out the updates ,need more work ,will finish tomorrow

8.2.7 Cost of Matrix Inversion review

8.3 (Almost) Never, Ever Invert a Matrix
8.3.1 Solving Ax = b



DAY 11 OF 100] SUNDAY ,11 JAN 2015

1.Linear Algebra

Algorithm: [A;B] := GJ INVERSE ALT(A;B)  review/write

challenge postponed for tomorrow

8.2.6 Pivoting

8.2.7 Cost of Matrix Inversion
need to review this tomorrow

Friday, January 9, 2015


DAY 10 OF 100] SATURDAY ,10 JAN 2015

1.Linear Algebra

Algorithm: [A;B] := GJ INVERSE ALT(A;B)
Homework 8.2.5.4

Challenge 8.2.5.5

8.2.6 Pivoting

Thursday, January 8, 2015


DAY 9 OF 100] FRIDAY ,9 JAN 2015

1.Linear Algebra


review earlier 8.2.4 material / write

8.2.5 Computing inverse via Gauss-Jordan Elimination, Alternative

Homework 8.2.5.1
Homework 8.2.5.2
Homework 8.2.5.3

Algorithm: [A;B] := GJ INVERSE ALT(A;B)
Homework 8.2.5.4

2.Python
Tkinter
ch10 / improving simple dialog

Wednesday, January 7, 2015


DAY 8 OF 100] THURSDAY ,8 JAN 2015

1.Linear Algebra

Homework 8.2.4.3
Homework 8.2.4.4
Homework 8.2.4.5

Algorithm: [A;B] := GJ INVERSE PART1(A;B)
Algorithm: [A;B] := GJ INVERSE PART2(A;B)

walk thru these algos with a sample exercise.. compare outcomes in each step

2.Python

Tkinter 
ch9:Data entry 
ColorChooser

Chapter 10. Dialog Windows
simple dialog window as a class ,problems of this design
Grid layout




  DAY 7 OF 100]WEDNESDAY ,7 JAN 2015

1.Linear Algebra
8.2.4 inverse of A via Gauss-Jordan Elimination

Tuesday, January 6, 2015


DAY 6 OF 100]TUESDAY ,6 JAN 2015


1.Linear Algebra
8.2.3 Solving Ax = b via Gauss-Jordan Elimination: Multiple Right-Hand Sides
tested algo  by hand on sample set 

2.Python
Tkinter
data entry simple dialog
filedialog

Sunday, January 4, 2015


DAY 5 OF 100] MONDAY ,5 JAN 2015


1.Linear Algebra

apply Gauss-jordan algo as given part1,2 to a sys of linear eqns

8.2.3 Solving Ax = b via Gauss-Jordan Elimination: Multiple Right-Hand Sides

Homework 8.2.3.1
Homework 8.2.3.3
Homework 8.2.3.4
Homework 8.2.3.5

2.Python

Tkinter
messagebox

DAY 4 OF 100] SUNDAY ,4 JAN 2015


1.Linear Algebra

Homework 8.2.2.3
Homework 8.2.2.4
Gauss-jordan algo outline

2.Python

Tkinter
status bars 
custom StatusBar class with set and clear methods
application with set clear buttons and statusbar

Saturday, January 3, 2015



DAY 3 OF 100] SATURDAY ,3 JAN 2015


1.Linear Algebra

Unit 8 :

try gauss jordan on a lufact/gelim  failing case


2.Python

SO article on decorators


Tkinter 

popup menu

tear-off menu item explored

toolbars

4 pomodoros

Thursday, January 1, 2015


DAY 2 OF 100] FRIDAY ,2 JAN 2015


1.Linear Algebra

Unit 8 :
review and write upto 8.2.1

 8.2.2 Solving Ax = b via Gauss-Jordan Elimination: Gauss Transforms

Homework 8.2.2.1



2.Python


SO article on python decorators.type what you learned

function as reference
manual decoration of function .. returns a  wrapper  function object
decorator syntax using @ equiv to the above

Tkinter


ch8 Application Windows
basic menu widget explored.
popup menu ? explore more tomorrow

6 pomodoros