1 / 64

Pavol Federl and Przemyslaw Prusinkiewicz University of Calgary

Solving Differential Equations in Developmental Models of Multicellular Structures Expressed Using L-systems. Pavol Federl and Przemyslaw Prusinkiewicz University of Calgary. Anabaena. heterocyst cells. vegetative cells. Anabaena. Anabaena – continuous model. Vegetative cells:.

Download Presentation

Pavol Federl and Przemyslaw Prusinkiewicz University of Calgary

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Solving Differential Equations in Developmental Models of Multicellular Structures Expressed Using L-systems Pavol Federl and Przemyslaw Prusinkiewicz University of Calgary

  2. Anabaena heterocyst cells vegetative cells

  3. Anabaena

  4. Anabaena – continuous model Vegetative cells: Heterocysts:

  5. Review of L-systems and L+C • L+C1 = combination of L-systems and C++ 1. Karwowski and Prusinkiewicz 2002

  6. Review of L-systems and L+C A(2) • Example: cell growth and division A(3) • module A(int); • axiom: A(2); • production: • A(s):{ • if (s<4) • produce A(s+1); • else • produce A(s/2)A(s/2); • } A(4) A(2)A(2) A(3)A(3)

  7. Standard information transfer B(n)<A : produce B(n+1); B(0)AAAAAAA

  8. Standard information transfer B(n)<A : produce B(n+1); B(0)AAAAAAA B(0)B(1)AAAAAA

  9. Standard information transfer B(n)<A : produce B(n+1); B(0)AAAAAAA B(0)B(1)AAAAAA B(0)B(1)B(2)AAAAA

  10. Standard information transfer B(n)<A : produce B(n+1); B(0)AAAAAAA B(0)B(1)AAAAAA B(0)B(1)B(2)AAAAA B(0)B(1)B(2)B(3)AAAA

  11. Standard information transfer B(n)<A : produce B(n+1); B(0)AAAAAAA B(0)B(1)AAAAAA B(0)B(1)B(2)AAAAA B(0)B(1)B(2)B(3)AAAA B(0)B(1)B(2)B(3)B(4)B(5)B(6)B(7) Time complexity: O(n2)

  12. Fast information transfer in L+C B(n)<<A : produce B(n+1); new left context

  13. Fast information transfer in L+C B(n)<<A : produce B(n+1); B(0) AA A A A A A

  14. Fast information transfer in L+C B(n)<<A : produce B(n+1); B(0) AA A A A A A B(0)

  15. Fast information transfer in L+C B(n)<<A : produce B(n+1); B(0) AA A A A A A B(0)

  16. Fast information transfer in L+C B(n)<<A : produce B(n+1); B(0) AA A A A A A B(0)

  17. Fast information transfer in L+C B(n)<<A : produce B(n+1); B(0) AA A A A A A B(0) B(1)

  18. Fast information transfer in L+C B(n)<<A : produce B(n+1); B(0) AA A A A A A B(0) B(1)

  19. Fast information transfer in L+C B(n)<<A : produce B(n+1); B(0) AA A A A A A B(0) B(1) B(2)

  20. Fast information transfer in L+C B(n)<<A : produce B(n+1); B(0) AA A A A A A B(0) B(1) B(2) B(3)

  21. Fast information transfer in L+C B(n)<<A : produce B(n+1); B(0) AA A A A A A B(0) B(1) B(2) B(3) B(4)

  22. Fast information transfer in L+C B(n)<<A : produce B(n+1); B(0) AA A A A A A B(0) B(1) B(2) B(3) B(4) B(5)

  23. Fast information transfer in L+C B(n)<<A : produce B(n+1); B(0) AA A A A A A B(0) B(1) B(2) B(3) B(4) B(5) B(6)

  24. Fast information transfer in L+C B(n)<<A : produce B(n+1); B(0) AA A A A A A B(0) B(1) B(2) B(3) B(4) B(5) B(6) B(7)

  25. Fast information transfer in L+C B(n)<<A : produce B(n+1); B(0) AA A A A A A B(0) B(1) B(2) B(3) B(4) B(5) B(6) B(7) Time complexity: O(n)

  26. Anabaena in L+C • size • concentration • het./veg. struct CD { double s, con; bool h; } module C (struct CD); Start: { CD c1; c1.s=smax; c1.con=cmax; c1.h=true; CD c2; c2.s=smax; c2.con=cmax; c2.h=false; } Axiom: C(c1) C(c2) C(c1);

  27. Anabaena in L+C • Division & differentiation C(p): { if (p.h) produce C(p); else if (p.s >= smax && p.con > cmin) { p.s /= 2; produce C(p) C(p); } else if (p.con < cmin) { p.h=true; produce C(p); }

  28. Anabaena – numerical integration • Discrete time intervals Δt • Implicit discretization scheme • Notation: • Ci denotes old value (at time t) • Ci+1 denotes new value (at time t + Δt)

  29. Implicit scheme

  30. Implicit scheme • System of linear equations • matrix form: AX=Y • Tri-diagonal coefficient matrix • Efficient solution • modified Gaussian Elimination

  31. Tri-diagonal system of LEs

  32. Gaussian elimination

  33. Gaussian elimination

  34. Gaussian elimination

  35. Gaussian elimination

  36. Gaussian elimination

  37. Gaussian elimination

  38. Gaussian elimination

  39. Gaussian elimination

  40. Gaussian elimination

  41. Gaussian elimination

  42. Gaussian elimination

  43. Gaussian elimination

  44. Gaussian elimination

  45. Gaussian elimination

  46. Gaussian elimination

  47. Gaussian elimination

  48. b a 0 0 0 y a b c 0 0 y 0 a b c 0 y … 0 0 a b c y 0 0 0 a b y … L-system implementation struct CD { double a,b,c,y; } module C (struct CD);

  49. … … L-system implementation Phase I Phase II

  50. Gaussian elimination in L+C int phase; Start: {phase=1;} StartEach: { if (phase == 1) {Forward();UseGroup(1);phase=2;} else {Backward();UseGroup(2);} } group 1: C(pl) << C(p):{ p.y=p.y-pl.y*p.a/pl.b; p.b=p.b-pl.c*p.a/pl.b; produce C(p); } group 2: C(p) >> C(pr):{ p.y=p.y-pr.y*p.c/pr.b; produce C(p); }

More Related