N3Sim Project
Parameter List
Overview
This document contains a short description of all the parameters used in the configuration file of N3Sim (version 0.7). For a more detailed explanation of parameters please read the User Guide.
The units of the parameters are nanometers (nm) and nanoseconds (ns), unless otherwise stated. Also the values of the parameters are assumed to be real numbers, unless specified.
In the configuration file, parameters are organized in four sections:
Simulation Parameters
- outPath: name of the folder where the result files will be stored. Both absolute and relative (to the execution directory) paths may be used.
- graphics (true/false): if the value is true, N3Sim will create a visualization file to be used with NSVideo. NSVideo is still an unreleased prototype. Therefore, this parameter should be set to false.
- infoFile (true/false): if the value is true, N3Sim will create a file with information of the simulation at each time step, i. e., number of particles, number of collisions, time instants, etc. It may be used for debugging purposes.
- activeCollision (true/false): if set to true collisions among the emitted particles are modeled. Otherwise, the emitted particles are assumed to be transparent to each other and never collide.
- BMFactor (0 to 1): the particle displacements due to Brownian motion are multiplied by this factor. The default value is 1.
- inertiaFactor (0 to 1):controls the amount of inertia of the emitted particles. If set to zero, particles have no inertia. Otherwise, at each time step, the particle speed is equal to its speed in the previous time step multiplied by inertiaFactor.
- time (integer, ns): total time of the simulation.
- timeStep (integer, ns): duration of each time step.
Space Parameters
- boundedSpace (true/false): if set to false, an unbounded space is simulated. Otherwise, a rectangular bounded space is simulated. The bottom left corner of the space has the coordinates (0,0) and the top right corner coordinates correspond to the values of the parameters xSize and ySize. If an initial background concentration is set (bgConcentration greater than zero), boundedSpace must be set to true.
- constantBGConcentration (true/false): if set to false, it has no effect on the simulation. If set to true (this can only be done when boundedSpace is also set to true), N3Sim will simulate an infinite space.
- constantBGConcentrationWidth (integer, nm): value used to adjust the simulation of infinite space when the space is bounded. Must be an integer between 0 and 10% of min(xSize, ySize). 5% is an acceptable value in most cases.
- xSize (nm, integer): horizontal size of the simulation space (see parameter boundedSpace).
- ySize (nm, integer): vertical size of the simulation space (see parameter boundedSpace).
- D (nm/ns2): diffusion coefficient.
- bgConcentration (integer): number of particles per 10000 nm2. The simulation space will be filled with this initial background concentration before the simulation starts. If boundedSpace is false, bgConcentration must be set to zero.
- sphereRadius (nm): radius of the emitted particles.
Emitter Parameters
- emitters: number of emitters in the simulation
Every emitter has the following parameters:
- emitterRadius (nm): radius of the influence area of the emitter. The influence area determines the are where particles are released/absorbed. If there are not enough particles to absorb, all the particles in the area will be absorbed and a warning message will be logged in the file error.log. Moreover, if the particles to be released do not fit within the influence area, as many as possible will be released and a message will also be logged in the file error.log.
- x (nm): horizontal position of the emitter.
- y (nm): vertical position of the emitter.
- startTime (ns): the emitter releases/absorbs particles when the current time is greater or equal than startTime.
- endTime (ns): the emitter releases/absorbs particles when the current time is less than endTime.
- initV (nm/ns): initial velocity of the released particles, in nm/ns. If the parameter punctual is set to false, the initial particle direction is the line from the emitter location to particle location. If punctual is set to true, then initV must be set to zero.
- punctual (true/false): if set to true, particles are released at exactly the emitter location. If set to false, particles are emitted in a random location within the influence area. If activeCollision is set to true, punctual must be set to false.
- concentrationEmitter (true/false): if set to false, the amplitude parameter (see below) indicates the number particles released by the emitter at every time step. If set to true, amplitude indicates the number particles present in the influence area of the emitter at every time step.
- color:color of the emitted particles. Used by the application NSVideo. Since NSVideo is still an unreleased prototype, the value white must always be used.
-
emitterType (integer, 1 to 5): there are 5 types of emitters. Depending on the emitter type, some other parameters must be included in the
configuration file. A short description of each emitter type and its additional parameters follows:
-
Type 1: emits a fixed number of particles at every time step.
Additional parameters for type 1 include:- amplitude: number of released particles every 100 ns. E.g., if the time step is of 400 ns and 1000 particles must be released at every time step, amplitude must be set to 250.
-
Type 2: emits particles following rectangular waveform.
Additional parameters for type 2 include:- amplitude: see type 1.
- period (ns): wave period.
- timeOn (ns): part of the wave period in which the particles are released (as many as the parameter amplitude indicates).
-
Type 3: emits particles following a white noise waveform.
Additional parameters for type 3 include:- amplitude: see type 1.
-
Type 4: reads the waveform of the signal to be emitted from a text file. In this text file, every line represents a
time step, beginning at startTime. At every time step, the number of particles indicated by the corresponding line
are emitted. If the total number of lines of the text file is lower than the number of time steps between startTime
and endTime, zeros are assumed.
Additional parameters for type 4 include:- file: name of the text file (including relative or absolute path).
- scaleFactor: the number of particles specified in the file is multiplied by this factor (useful to automate simulations).
-
Type 5: equivalent to type 4 emitter, but in a 3-dimensional simulation space. In addition to the parameters for type 4
emitters, the following parameter must be defined:
- z (nm): z coordinate of the emitter location.
-
Type 1: emits a fixed number of particles at every time step.
Receiver Parameters
- receivers: number of receivers in the simulation
Every receiver has the following parameters:
- name: receiver name. The measurements of this receiver will be saved to a file named name.csv.
- x (nm): horizontal position of the receiver.
- y (nm): vertical position of the receiver.
- absorb (true/false): if set to true, after the receiver measures the particles in its influence area at every time step, they will be deleted.
- accumulate (true/false): if set to true, the output signal measured by the receiver at each time step corresponds to the accumulated number of particles measured from the simulation start. If set to false, it corresponds to the number of particles measured in the current time step.
-
receiverType: (integer, 1 to 3): there are 3 types of receivers. Depending on the receiver type, some other parameters must be
included in the configuration file. A short description of each receiver type and its additional parameters follows:
- Type 1: the detection area of the receiver is a square.
Additional parameters for type 1:- side (nm): side of the square that defines the detection area.
-
Type 2: the detection area of the receiver is a circle.
Additional parameters for type 2:rradius (nm): radius of the circle that defines the detection area.
-
Type 3: the detection volume of the receiver is a sphere (to be used only in 3-dimensional simulations).
Additional parameters for type 3:- z (nm): z coordinate of the receiver location.
- rradius (nm): radius of the sphere that defines the detection volume.
- Type 1: the detection area of the receiver is a square.