Markus Dittrich
|
5f11246ed4
Added code for custom binary reaction data writer.
|
11 年之前 |
Markus Dittrich
|
ec748eee1a
Need to include sys/time.h.
|
11 年之前 |
Markus Dittrich
|
fb19a4d42b
Merged in changes from trunk.
|
11 年之前 |
Jeffrey Bush
|
8a3d6f6aea
Tried to make code compile with MSVC while addressing a bunch of portability issues, including adding #include "config.h" to the start of most C files and updating the LONG_LONG_FORMAT to use the standard in inttypes.h.
|
12 年之前 |
Jeffrey Bush
|
410a20c441
Code now compiles and runs on Windows. Tested with 01-macro.mdl.
|
12 年之前 |
Jeffrey Bush
|
fbfe79173a
Changed all uses of %lld to LONG_LONG_FORMAT and surrounded all uses of checkpointing with MCELL_WITH_CHECKPOINTING. Both of these are for Windows' sake.
|
12 年之前 |
Tom Bartol
|
47ff3715be
Add a new viz output mode, "MODE = CELLBLENDER". This mode generates a
|
12 年之前 |
Boris Kaminsky
|
f2e3005253
Together with Markus wrote a document 'Policy on surface product placement in reactions between surface molecules' and placed document in src/docs. Implemented this new policy. This policy: 1) generalizes how we replace static and non-static surface reactants when we have multiple static and non-static surface products, 2) establishes rules on surface products placement in the presence of restrictive region borders. Fixed bug that allowed duplicate surface classes in the list of wall's surface classes. Fixed bug that allowed multiple SURFACE_CLASS statements inside DEFINE_SURFACE_REGIONS definition. Created multiple new test cases in the testsuite.
|
13 年之前 |
Boris Kaminsky
|
d9f2ae880e
Changed the name of the command-line option from 'no_walls_overlap_check' to the more generic 'with_checks=(yes/no)'. The default option is 'yes'. Updated QRG.
|
13 年之前 |
Boris Kaminsky
|
0597ef2cd9
Added check for the overlapped walls during initialization. Command-line option '-no_walls_overlap_check' will skip this procedure.
|
13 年之前 |
Boris Kaminsky
|
4cdc23ff7e
Removed GENERAL_SURFACE and associated species. This species was practically used only in the part of the code related to wall's multiple surface classes. But we checked for this species in multiple functions increasing overhead. The wall's multiple classes code was rewritten so that this species is not used anymore.
|
13 年之前 |
Boris Kaminsky
|
24939a85ce
Removed keyword GENERIC_MOLECULE. Implemented instead three new keywords ALL_MOLECULES, ALL_VOLUME_MOLECULES, ALL_SURFACE_MOLECULES that should be used as part of the surface property command. E.g. ABSORPTIVE=ALL_MOLECULES has the meaning that all volume molecules are absorptive on the region walls and all surface molecules are absorptive on the region borders with declared surface class. The keywords ALL_VOLUME_MOLECULES and ALL_SURFACE_MOLECULES are self-explanatory. Added new tests covering new keywords.
|
13 年之前 |
Boris Kaminsky
|
4fc11925ba
Made two enhancements. First, the message 'Reaction probabilities generated for following reactions' is printed only if there are any reactions declared. Second, added a warning at the very end of the simulation if any reaction probabilities, including ones originated from the variable reaction rates, were greater than 1.
|
13 年之前 |
Boris Kaminsky
|
b7d9356751
Removed couple memory leaks and unitialized variables. Optimized memory usage in the part of the code related to region borders. Added internal document describing the present policy on the interaction between volume molecule and wall.
|
14 年之前 |
Boris Kaminsky
|
31e5592c70
Fixed bug that disabled unimolecular reactions involving surface classes. Cleaned up and improved code related to special reactions on the region borders. Added new test '04-surface.mdl' that deals with reactions that include surface classes. Changed policy for the reaction of the type A + B + surf_class -> ... [rate], where both A and B are surface molecules. Now we will require that both A and B reside on the walls belonging to the surface class 'surf_class'. Previously we require that only target molecule reside on the wall belonging to surface_class 'surf_class'.
|
14 年之前 |
Boris Kaminsky
|
610a7270b5
Implemented COUNT and TRIGGER features for the surface molecules. The syntax is exactly the same that is used for the volume molecules but instead of the surface the statement relates now to the region border. FRONT_HITS/FRONT_CROSSINGS mean the hit is from inside out, and BACK_HITS/BACK_CROSSINGS mean the hit is from outside in. The same meaning is applied to the 'orientation' column in the TRIGGER statement.
|
14 年之前 |
Boris Kaminsky
|
13bae25818
Implemented REFLECTIVE/ABSORPTIVE properties of REGION borders. The default property is TRANSPARENT. Now if we put inside SURFACE_CLASS definition the statement ABSORPTIVE = A', it means that the region borders with the above SURFACE_CLASS are absorptive for grid molecules A', taking into account molecule orientation. If the region with above SURFACE_CLASS has ELEMENT_LIST = [ALL_ELEMENTS], the ABSORPTIVE/REFLECTIVE properties even if defined are not enforced.
|
14 年之前 |
Tom Bartol
|
d0892d26bf
Tom Bartol:
|
14 年之前 |
Boris Kaminsky
|
c3f173484a
Merged with trunk.
|
14 年之前 |
Boris Kaminsky
|
f7d3b7c9e3
Intermediate code commit.
|
14 年之前 |
Boris Kaminsky
|
5dc9ce3c40
Implemented check for the potential conflicts within the surface class definition, like (TRANSPARENT=A' and ABSORPTIVE=A;). Also implemented check for the conflicts between special reactions, like TRANSPARENT/ABSORPTIVE/REFLECTIVE/CLAMP_CONC, with the regular reactions.
|
14 年之前 |
Boris Kaminsky
|
8dd6479dde
Performed multiple changes regarding new representation of vertices through 'world->all_vertices' array and shared walls through 'world->walls_using_vertex' array.
|
14 年之前 |
Boris Kaminsky
|
aa111285ec
Changed the format of the report on the timing of MCell run. Added message about creating geometry during initialization.
|
15 年之前 |
Tom Bartol
|
19e283f967
Updated value of Avogadro constant to latest recommended value:
|
15 年之前 |
Boris Kaminsky
|
8fc48dacee
Implemented a global flag that tells whether the shared walls information is necessary to create during the initialization phase.
|
15 年之前 |
Boris Kaminsky
|
79461f7123
Changed the way how shared mesh vertices are defined that resulted in the significant speedup and improvement in the surface reaction code.
|
15 年之前 |
Boris Kaminsky
|
2cd706d4c3
Introduced notification command MOLECULE_COLLISION_REPORT and created an optional molecule collision report as part of the final summary report. Molecule collisions are counted only if the corresponding reactions exist. Changed scaling coefficient for the VM-VM-SM reaction (VM = volume molecule, SM = surface molecule).
|
15 年之前 |
Boris Kaminsky
|
5b3b8390b5
Made multiple changes relative to the trimolecular reactions.
|
15 年之前 |
Boris Kaminsky
|
4b24d995ab
Changed format of the special surface reactions (TRANSPARENT/REFLECTIVE/ABSORPTIVE) report. Made surface classes definition valid only for volume molecules. Added special case inside functions 'xyz2grid()' and 'uv2grid()'.
|
15 年之前 |
Boris Kaminsky
|
42203168e8
Added new optional keyword MAXIMUM_STEP_LENGTH to the DEFINE_MOLECULES block. Added new functionality for both volume and surface molecules such that if the keyword above is set for the species and random walk step is greater than MAXIMUM_STEP_LENGTH the random walk step is set to the value of MAXIMUM_STEP_LENGTH.
|
15 年之前 |