physical_objects.mdl 7.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379
  1. // box_def
  2. box1 BOX
  3. {
  4. CORNERS = [0, 0, 0], [1, 1, 1]
  5. ASPECT_RATIO = 6.0
  6. DEFINE_SURFACE_REGIONS
  7. {
  8. r1
  9. {
  10. INCLUDE_ELEMENTS = [ LEFT, RIGHT ]
  11. INCLUDE_PATCH = [ 0.2, 0.2, 1 ], [ 0.4, 0.4, 1]
  12. SURFACE_CLASS = s_sc_0
  13. MOLECULE_DENSITY
  14. {
  15. s_g_0' = 0.1
  16. s_g_1, = 0.2
  17. s_g_2; = 0.1
  18. }
  19. MOLECULE_NUMBER
  20. {
  21. s_g_3' = 100
  22. s_g_4, = 200
  23. s_g_5; = 100
  24. }
  25. VIZ_VALUE = 5
  26. }
  27. r2
  28. {
  29. INCLUDE_ELEMENTS = [ BACK ]
  30. INCLUDE_REGION = r1
  31. SURFACE_CLASS = s_sc_1
  32. }
  33. r3
  34. {
  35. INCLUDE_ELEMENTS = [ 0 TO 5 ]
  36. EXCLUDE_ELEMENTS = [ 4 ]
  37. SURFACE_CLASS = s_sc_2
  38. }
  39. r4
  40. {
  41. INCLUDE_ELEMENTS = [ ALL_ELEMENTS ]
  42. EXCLUDE_ELEMENTS = [ BACK ]
  43. SURFACE_CLASS = s_sc_4
  44. }
  45. r5
  46. {
  47. INCLUDE_ELEMENTS = [ FRONT ]
  48. INCLUDE_REGION = r1
  49. EXCLUDE_REGION = r1
  50. SURFACE_CLASS = s_sc_1
  51. }
  52. }
  53. TRANSLATE = [0.1, 0.1, 2.1]
  54. SCALE = [0.75, 0.75, 0.75]
  55. ROTATE = [0.1, 0.2, 0.3], 37
  56. }
  57. box2 BOX
  58. {
  59. CORNERS = [2, 0, 0], [3, 1, 1]
  60. ASPECT_RATIO = 2.0
  61. REMOVE_ELEMENTS
  62. {
  63. TOP, BOTTOM, FRONT, BACK, LEFT
  64. }
  65. DEFINE_SURFACE_REGIONS
  66. {
  67. r5
  68. {
  69. INCLUDE_PATCH = [ 3, 0.35, 0.35], [ 3, 0.65, 0.65]
  70. SURFACE_CLASS = s_sc_3
  71. }
  72. }
  73. }
  74. box3 BOX
  75. {
  76. CORNERS = [-2, 0, 0], [-1, 1, 1]
  77. ASPECT_RATIO = 5.0
  78. DEFINE_SURFACE_REGIONS
  79. {
  80. r1
  81. {
  82. INCLUDE_ELEMENTS = [ LEFT, RIGHT ]
  83. /* INCLUDE_PATCH = [-1.4, 0.2, 1 ], [-1.2, 0.4, 1] */
  84. SURFACE_CLASS = m_sc_0
  85. }
  86. r2
  87. {
  88. INCLUDE_ELEMENTS = [ BACK ]
  89. INCLUDE_REGION = r1
  90. SURFACE_CLASS = m_sc_1
  91. }
  92. r3
  93. {
  94. INCLUDE_ELEMENTS = [ 0 TO 5 ]
  95. EXCLUDE_ELEMENTS = [ 4 ]
  96. SURFACE_CLASS = m_sc_2
  97. }
  98. r4
  99. {
  100. INCLUDE_ELEMENTS = [ ALL_ELEMENTS ]
  101. EXCLUDE_ELEMENTS = [ BACK ]
  102. SURFACE_CLASS = m_sc_3
  103. }
  104. r5
  105. {
  106. INCLUDE_ELEMENTS = [ ALL_ELEMENTS ]
  107. EXCLUDE_PATCH = [ -2,0.25,1], [-1,0.75,1]
  108. SURFACE_CLASS = m_sc_3
  109. }
  110. }
  111. }
  112. // polygon_list_def
  113. poly1 POLYGON_LIST
  114. {
  115. VERTEX_LIST
  116. {
  117. [5, 5, 5]
  118. [5, 7, 5]
  119. [5, 5, 7]
  120. [7, 5, 5]
  121. }
  122. ELEMENT_CONNECTIONS
  123. {
  124. [0, 1, 2]
  125. [1, 0, 3]
  126. [2, 1, 3]
  127. [0, 2, 3]
  128. }
  129. }
  130. poly2 POLYGON_LIST
  131. {
  132. VERTEX_LIST
  133. {
  134. [15, 15, 15]
  135. [15, 17, 15]
  136. [15, 15, 17]
  137. [17, 15, 15]
  138. }
  139. ELEMENT_CONNECTIONS
  140. {
  141. [0, 1, 2]
  142. [1, 0, 3]
  143. [2, 1, 3]
  144. [0, 2, 3]
  145. }
  146. REMOVE_ELEMENTS { 1 }
  147. DEFINE_SURFACE_REGIONS
  148. {
  149. r1
  150. {
  151. INCLUDE_ELEMENTS = [ ALL_ELEMENTS ]
  152. }
  153. }
  154. }
  155. // voxel_list_def
  156. vox1 VOXEL_LIST
  157. {
  158. VERTEX_LIST
  159. {
  160. [15, 15, 15] // 000
  161. [15, 17, 15] // 001
  162. [15, 17, 15] // 010
  163. [15, 17, 17] // 011
  164. [17, 15, 15] // 100
  165. [17, 17, 15] // 101
  166. [17, 17, 15] // 110
  167. [17, 17, 17] // 111
  168. }
  169. TET_ELEMENT_CONNECTIONS
  170. {
  171. [0, 1, 2, 4]
  172. [7, 6, 5, 3]
  173. }
  174. TRANSLATE = [-1, -1, -1]
  175. SCALE = [0.5, 0.5, 0.5]
  176. }
  177. radius = 0.25
  178. diameter = [0.4, 0.5, 0.6]
  179. // release_site_def
  180. rs1 RELEASE_SITE
  181. {
  182. SHAPE = SPHERICAL
  183. LOCATION = [0.1, 0.1, 0.1]
  184. MOLECULE = s_v_0
  185. NUMBER_TO_RELEASE = 1000
  186. SITE_RADIUS = radius
  187. RELEASE_PROBABILITY = 1.0
  188. }
  189. rs2 RELEASE_SITE
  190. {
  191. SHAPE = CUBIC
  192. LOCATION = [1.1, 0.1, 0.1]
  193. MOLECULE = s_v_1
  194. GAUSSIAN_RELEASE_NUMBER { MEAN_NUMBER = 1000 }
  195. SITE_DIAMETER = 0.5
  196. RELEASE_PROBABILITY = 0.99
  197. }
  198. rs3 RELEASE_SITE
  199. {
  200. SHAPE = ELLIPTIC
  201. LOCATION = [2.1, 0.1, 0.1]
  202. MOLECULE = s_v_2
  203. CONCENTRATION = 1. / 25225.5
  204. SITE_DIAMETER = [0.2, 0.5, 0.8]
  205. RELEASE_PROBABILITY = 0.98
  206. }
  207. rs4 RELEASE_SITE
  208. {
  209. SHAPE = RECTANGULAR
  210. LOCATION = [3.1, 0.1, 0.1]
  211. MOLECULE = s_v_3
  212. VOLUME_DEPENDENT_RELEASE_NUMBER { MEAN_DIAMETER = 0.01 STANDARD_DEVIATION = 0.0005 CONCENTRATION = 1. / .26 }
  213. SITE_DIAMETER = diameter
  214. RELEASE_PROBABILITY = 0.97
  215. }
  216. rs5 RELEASE_SITE
  217. {
  218. SHAPE = SPHERICAL_SHELL
  219. LOCATION = [4.1, 0.1, 0.1]
  220. MOLECULE = s_v_4
  221. GAUSSIAN_RELEASE_NUMBER { MEAN_NUMBER = 1000 STANDARD_DEVIATION = 50 }
  222. SITE_DIAMETER = [0.1, 0.5, 0.9]
  223. RELEASE_PROBABILITY = 0.96
  224. }
  225. rs6 RELEASE_SITE
  226. {
  227. SHAPE = LIST
  228. LOCATION = [5.1, 0.1, 0.1]
  229. MOLECULE = s_v_5
  230. SITE_DIAMETER = 0.5
  231. RELEASE_PROBABILITY = 0.95
  232. MOLECULE_POSITIONS
  233. {
  234. s_v_5 [5.1, 0.1, 0.1]
  235. s_v_5 [5.2, 0.1, 0.1]
  236. s_v_5 [5.1, 0.2, 0.1]
  237. s_v_5 [5.1, 0.1, 0.2]
  238. }
  239. MOLECULE_POSITIONS
  240. {
  241. s_v_5 [5.1, 0.2, 0.2]
  242. s_v_5 [5.2, 0.1, 0.2]
  243. s_v_5 [5.2, 0.2, 0.1]
  244. }
  245. MOLECULE_POSITIONS
  246. {
  247. s_v_5 [5.2, 0.2, 0.2]
  248. }
  249. TRANSLATE = [0, 0, -2]
  250. }
  251. rs6_2 RELEASE_SITE
  252. {
  253. SHAPE = LIST
  254. SITE_DIAMETER = 0.5
  255. RELEASE_PROBABILITY = 0.95
  256. MOLECULE_POSITIONS
  257. {
  258. s_v_5 [5.3, 0.2, 0.2]
  259. }
  260. TRANSLATE = [0, 0, -2]
  261. }
  262. /*
  263. rs7 RELEASE_SITE
  264. {
  265. SHAPE = existing_object
  266. LOCATION = [6.1, 0.1, 0.1]
  267. MOLECULE = s_v_6
  268. SITE_DIAMETER = 0.5
  269. RELEASE_PROBABILITY = 0.94
  270. RELEASE_PATTERN = rp9
  271. }
  272. rs8 RELEASE_SITE
  273. {
  274. SHAPE = release_region_expr
  275. LOCATION = [7.1, 0.1, 0.1]
  276. MOLECULE = s_v_7
  277. SITE_DIAMETER = 0.5
  278. RELEASE_PROBABILITY = 0.93
  279. RELEASE_PATTERN = rp9
  280. }
  281. */
  282. rs9 SPHERICAL_RELEASE_SITE
  283. {
  284. LOCATION = [0.1, 3.1, 9.1]
  285. MOLECULE = s_v_0
  286. NUMBER_TO_RELEASE = 1000
  287. SITE_RADIUS = 0.25
  288. RELEASE_PROBABILITY = 1.0
  289. }
  290. rs10 CUBIC_RELEASE_SITE
  291. {
  292. LOCATION = [1.1, 3.1, 9.1]
  293. MOLECULE = s_v_1
  294. GAUSSIAN_RELEASE_NUMBER { MEAN_NUMBER = 1000 }
  295. SITE_DIAMETER = 0.5
  296. RELEASE_PROBABILITY = 0.99
  297. TRANSLATE = [1, 1, 1]
  298. }
  299. rs11 ELLIPTIC_RELEASE_SITE
  300. {
  301. LOCATION = [2.1, 3.1, 9.1]
  302. MOLECULE = s_v_2
  303. CONCENTRATION = 1. / 25225.5
  304. SITE_DIAMETER = [0.2, 0.5, 0.8]
  305. RELEASE_PROBABILITY = 0.98
  306. }
  307. rs12 RECTANGULAR_RELEASE_SITE
  308. {
  309. LOCATION = [3.1, 3.1, 9.1]
  310. MOLECULE = s_v_3
  311. VOLUME_DEPENDENT_RELEASE_NUMBER { MEAN_DIAMETER = 0.01 STANDARD_DEVIATION = 0.0005 CONCENTRATION = 1. / .26 }
  312. SITE_DIAMETER = [0.4, 0.5, 0.6]
  313. RELEASE_PROBABILITY = 0.97
  314. }
  315. rs13 SPHERICAL_SHELL_SITE
  316. {
  317. LOCATION = [4.1, 3.1, 9.1]
  318. MOLECULE = s_v_4
  319. GAUSSIAN_RELEASE_NUMBER { MEAN_NUMBER = 1000 STANDARD_DEVIATION = 50 }
  320. SITE_DIAMETER = [0.1, 0.5, 0.9]
  321. RELEASE_PROBABILITY = 0.96
  322. }
  323. // meta_object_def
  324. big_object OBJECT
  325. {
  326. box1 OBJECT box1 { }
  327. box2 OBJECT box2 { }
  328. box3 OBJECT box3 { }
  329. poly1 OBJECT poly1 { }
  330. poly2 OBJECT poly2 { }
  331. newbox BOX
  332. {
  333. CORNERS = [-20, -20, -20], [20, 20, 20]
  334. ROTATE = [0, 0, 1], 10
  335. }
  336. all_release_sites OBJECT
  337. {
  338. rs1 OBJECT rs1 { }
  339. rs2 OBJECT rs2 { }
  340. rs3 OBJECT rs3 { }
  341. rs4 OBJECT rs4 { }
  342. rs5 OBJECT rs5 { }
  343. rs6 OBJECT rs6 { }
  344. /*
  345. rs7 OBJECT rs7 { }
  346. rs8 OBJECT rs8 { }
  347. */
  348. rs9 OBJECT rs9 { }
  349. rs10 OBJECT rs10 { }
  350. rs11 OBJECT rs11 { }
  351. rs12 OBJECT rs12 { }
  352. rs13 OBJECT rs13 { }
  353. }
  354. }