Simulation
Defines the global simulation parameters, such as simulation time and output settings.
simulationParameters
{
    t_begin                         0. 
    t_end                           10.
    maxitsteps                      10000000
    energy_transport                false
    surften_model                   NONE
    freesurface                     true
    velcorrScheme	             T_VCORR
    verbosityLevel                  VERBOSITY_STANDARD
    freq_log                        100
    ns_phaseinfo                    20                      
    output_type                     VTUBINARY
    dt_output                       0.01
    t_output_offset                 0.5
    t_output_file                   /path/to/outputtimes.txt
    dt_output_restart               0.1
    t_output_restart_offset         0.5
    t_output_restart_file           /path/to/outputtimes.txt
    dt_output_restart_wallclock     2.5
    dt_phaseinfo                    0.1
    restart_purge                   false
    restart_keep_count              1
    restart                         false
    restart_from_step               200
    output_vel                      false 
    output_wallvel                  false
    output_temp                     false
    output_acc                      false
    output_prtlID                   true
    output_phaseID                  true
    output_rho                      true
    output_press                    true
    output_rank                     false
    output_viscosity                false
    ignoreParticlesOutOfBounds      false                     
    ref_vel_factor                  1.5                       
    dt_simulation                   -1                          
    adhesionmodel                   false                     
    output_data_dir                 /path/to/output           
    restart_from_dir                /path/to/sim/to/restart   
    operationMode                   NORMAL                    
    damping_type                    HARMONIC                  
    interactionscheme               WEIGHTED                  
    APD_coeff                       0.001   
    APD_cutoff_factor               3.0                                            
    RM_freq_rho_reinit              20                        
    RM_rho_filtering                INSTANT
    RM_coeff_vel_limiter            1.25
    wrnFailLevel                    5
    nFXcTandemInterp                true
    valKeychains                    false
    filesys_topo                    AUTO
    print_memusage                  false
    cleandir_opt                    MODIFY
    enforce_operation_order         false
    varvisc_temperature             false
    varvisc_non_Newtonian           false                 
}- t_begin
- Time at start of simulation
- t_end
- End-time of simulation
- maxitsteps
- In nanoFluidX, the numerical time-step is calculated
                            internally based on stability criteria using input values like reference
                            velocity. Depending on the resulting time-step and the time to simulate
                                (t_end – t_begin), a huge
                            number of iterations might be necessary. In order to avoid an infinite
                            loop this parameter can be used to stop a simulation after a given
                            number of iterations.Note: This parameter is typically used for performance benchmarks where the simulation is performed for a given number of steps.
- energy_transport
- This model flag switches on/off the energy equation model. If enabled, additional fields such as temperature are included in the simulation and corresponding phase parameter. Reference values and output flags need to be set.
- surften_model
- This flag can be used to switch on the surface tension model, according to Adami et al, or enable single phase surface tension. If ADAMI or SINGLE_PHASE is chosen, additional parameter in the phase properties need to be defined.
- freesurface
- This flag essentially prevents the occurrence of negative pressure values due to lack of support in single phase cases. In single phase cases, the free surface of the fluid is in contact with a particle vacuum (absence of particles) which in classic SPH formulation would cause unphysical behavior. It is recommended to keep this option set to true. Changing this flag without an advanced understanding could have undesired consequences.
- velcorrScheme
- Particle velocity correction schemes, also referred to as reuniformization schemes or shifting schemes, are used to improve particle (discretization point) distribution in nanoFluidX and subsequently the quality of the results obtained. Specifically, nanoFluidX uses transport velocity (TV) and artificial particle displacement (APD) methods to produce well arranged particle distributions. While TV and APD themselves are not necessarily tied to a specific interaction scheme, the current implementation in nanoFluidX means that TV is more suited for Weighted interaction scheme and APD is intended for use with Riemann interaction scheme.
- verbosityLevel
- During a simulation, nanoFluidX prints some
                            log-information about the current status of the simulation. Depending on
                            this parameter the amount of output can be controlled.- VERBOSITY_NONE
- Minimum amount of output.
- VERBOSITY_STANDARD
- Current stage of the simulation, actual performance.
- VERBOSITY_EXPERT
- Additional information on particle distribution – helpful for debugging and/or experts only.
 
- freq_log
- This increment gives the frequency of log information, that is, every #freq_log steps the log output is written.
- ns_phaseinfo
- This value (integer) determines how often will the forces/torques and other phase information be measured. It is different from dt_phaseinfo, as dt_phaseinfo determines the frequency of the output. For example, you may want to output dt_phaseinfo every 0.1 s, in the meantime, there might be 10000 simulation steps in that time period. ns_phaseinfo then allows you to specify the number of measurement samples in that period (for example, 100 samples per dt_phaseinfo).
- output_type
- This parameter defines the type of the output.
- dt_output
- This is the time increment when the particle output is written.
- t_output_offset
- Time delay to start of writing particle data output.
- t_output_file
- Using the command (providing the particle output file) enables the user to specify a file in which the exact times of the desired particle output are specified.
- dt_output_restart
- Defines how often restart files are output. If you do not want to output restart files, enter -1.
- t_output_restart_offset
- Delay start of writing restart output.
- t_output_restart_file
- This is a similar command to t_output_file. Using this command enables the user to specify exact times at which the restarts will be written.
- dt_output_restart_wallclock
- A wallclock time interval to write recon files, in hours.
- dt_phaseinfo
- This is the time increment when the additional phase-info output is written (if any of the phases has print_info == true)
- restart_purge
- If this switch is set to false, it will keep all the restart files that have been output. Otherwise, if set to true, it will keep only the latest restart point.
- restart_keep_count
- If restart_purge is true, restart_keep_count is the number of restart/continue files to keep.
- restart
- Is this run a continuation of a previous simulation? Is it starting from a restart file? If it is, then set to true. If it is a new run, set it to false.
- restart_from_step
- This specifies from which point does the simulation restart. The restart numbers with the respective times can be found in the OUTPUT folder of the case, in the restart.txt file.
- output_vel
- If the particle output is written, the following flags can be used to limit the amount of data that is actually written to the output file. Except for the particle positions, all other variables can be switched on/off for the output. The order of the flags is not important.
- output_wallvel
- This flag switches on/off the velocity field of wall particles for the output.
- output_temp
- This flag switches on/off the temperature field for the output.
- output_acc
- This flag switches on/off the acceleration field for the output.
- output_prtlID
- This flag switches on/off the particle ID field for the output. This is a unique integer number for each particle to track the Lagrangian motion in time.
- output_phaseID
- This flag switches on/off the phase ID (phase number) of each particle for the output.
- output_rho
- This flag switches on/off the density field for the output.
- output_press
- This flag switches on/off the pressure field for the output.
- output_rank
- This flag switches on/off the rank (GPU) of each particle for the output. This information is only necessary if the particle distribution on different ranks (GPUs) is of interest.
- output_viscosity
- This flag enables output of viscosity field in the case that either varvisc_temperature or varvisc_non_Newtonian are set to true.
- ignoreParticlesOutOfBounds
- Check flag to ensure continuation of the run in case there is a particle out of bounds. If particles are out of bounds the simulation will not stop. If some kind of outlet is specified for the boundaries, the particles will get deleted. Otherwise they will continue to move outside of the domain.
- ref_vel_factor
- Factor which specifies how much overhead is added to the maximum detected velocity in order to ensure adequate time step and keep the simulation stable.
- dt_simulation
- Allows for manual override of the internally calculated (recommended)
                            time step.Note: Use with extreme caution, especially if using larger than recommended time step.
- adhesionmodel
- Boolean switch for enabling primitive adhesion models, based on the model of Akinci et al. For more information, refer to Adhesion Model and Single Phase Surface Tension.
- output_data_dir
- Specifies a relative or absolute path for the output folder. The data output will be stored in this folder.
- restart_from_dir
- Specify from which folder should the case be restarted.
- operationMode
- A switch that serves as a shortcut to optimize the solver performance for maximum speed, normal operation, or optimize for accuracy.
- damping_type
- Choice of damping (ramping) function.
- interactionscheme
- Choice of the particle interaction scheme of the solver.
- APD_coeff
- APD particle position correction scheme parameter for intensity of the correction.
- APD_cutoff_factor
- Determines the radius (as a function of dx) of the sphere of influence of the APD corrections scheme.
- RM_rho_filtering
- The density filtering (also referred to as density re-initialization) operation. The density filtering procedure improves the mass-area-density consistency and filters out small-scale pressure oscillations.
- RM_freq_rho_reinit
- The frequency, that is, number of timesteps, of utilizing the density-filtering scheme (selected by the command RM_rho_filtering).
- RM_coeff_vel_limiter
- Limiter parameter which sets the upper limit on the maximum velocity experienced by a particle.
- wrnFailLevel
- nanoFluidX has improved warning information such that it includes 5 different warning levels, going from 0 as benign to 5 as severe.
- nFXcTandemInterp
- Setting this command to true enables tandem operation between nanoFluidX and nFX[c], where nFX[c] in that case, interpolates the data from nFX as it becomes available (output).
- valKeychains
- Keychain validator compares the keychains in the cfg file with valid nanoFluidX keychains, when activated.
- filesys_topo
- Define filesystem topology for multi-node runs.
- print_memusage
- Prints memory usage (host/device) in log output.
- cleandir_opt
- Treatment of output data directory in a clean run.
- enforce_operation_order
- This command enforces summation order in the GPU calculations and effectively allows for full run reproducibility provided the same hardware and software platform.
- varvisc_temperature
- Set to true to request temperature dependent viscosity.
- varvisc_non_Newtonian
- Set to true to request shear stress dependent viscosity (enable non-Newtonian behavior modeling).