test_region_release.mdl 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889
  1. /* This example demonstrates the creation of a release site */
  2. /* that fills an unusual geometry at a specified concentration */
  3. time_step = 1.0e-6
  4. total_time = 1.0e-3
  5. TIME_STEP = time_step
  6. ITERATIONS = total_time/time_step
  7. EFFECTOR_GRID_DENSITY = 10000
  8. INTERACTION_RADIUS = 0.005
  9. PARTITION_X = [ [-0.15 TO 0.15 STEP 0.03] ]
  10. PARTITION_Y = [ [-0.15 TO 0.15 STEP 0.03] ]
  11. PARTITION_Z = [ [-0.15 TO 0.15 STEP 0.03] ]
  12. DEFINE_MOLECULES
  13. {
  14. A { D_3D = 100e-8 }
  15. B { D_3D = 100e-8 }
  16. C { D_3D = 100e-8 }
  17. D { D_2D = 0 }
  18. }
  19. /* Your basic reversable binding reaction */
  20. DEFINE_REACTIONS
  21. {
  22. A + B -> C [1e7]
  23. C -> A + B [1e2]
  24. }
  25. /* Create geometry with release site in here */
  26. bag OBJECT
  27. {
  28. small_box BOX
  29. {
  30. CORNERS = [-0.1,-0.1,-0.1] , [0.1,0.1,0.1]
  31. ASPECT_RATIO = 3
  32. DEFINE_SURFACE_REGIONS
  33. {
  34. silly { INCLUDE_ELEMENTS = [TOP,LEFT] }
  35. solly { INCLUDE_ELEMENTS = [TOP,RIGHT] }
  36. }
  37. }
  38. bad_box BOX
  39. {
  40. CORNERS = [-0.05,-0.05,-0.2] , [0.05,0.05,0.2]
  41. }
  42. surf_release RELEASE_SITE { SHAPE=bag.small_box[silly]*bag.small_box[solly] MOLECULE=D NUMBER_TO_RELEASE=150 }
  43. vol_release RELEASE_SITE { SHAPE=bag.small_box[ALL]-bag.bad_box[ALL] MOLECULE=A CONCENTRATION=1e-4 }
  44. }
  45. /* 481.76 molecules/volume = 100uM */
  46. INSTANTIATE my_world OBJECT
  47. {
  48. my_bag OBJECT bag {}
  49. B_release RELEASE_SITE { SHAPE=CUBIC LOCATION=[0,0,0] MOLECULE=B CONCENTRATION=1e-4 SITE_DIAMETER=0.19999 }
  50. C_release RELEASE_SITE { SHAPE=CUBIC LOCATION=[0,0,0] MOLECULE=C NUMBER_TO_RELEASE=482 SITE_DIAMETER=0.1999 }
  51. }
  52. /* This just dumps molecule positions in text as state_value X Y Z orient */
  53. VIZ_DATA_OUTPUT
  54. {
  55. MODE=ASCII
  56. MOLECULE_FILE_PREFIX = "box"
  57. STATE_VALUES {
  58. A = 1
  59. B = 2
  60. C = 3
  61. D = 4
  62. }
  63. ITERATION_LIST = [0e0,1e0,1e1,1e2,1e3]
  64. }
  65. REACTION_DATA_OUTPUT
  66. {
  67. STEP = 1e-5
  68. { COUNT [A,WORLD] } => "count_A.dat"
  69. { COUNT [B,WORLD] } => "count_B.dat"
  70. { COUNT [C,WORLD] } => "count_C.dat"
  71. { COUNT [D,WORLD] } => "count_D.dat"
  72. }