* Tutorial [#f5c9dfdb] ** Normal simulation procedure [#le4c697d] - Obtain an appropriate sample UDF file for your purpose from our examples. - Start "Gourmet" and open the UDF file. Modify it for your own purpose and save it as "input.udf". - Run KAPSEL as follows. (remove "./" if you use Windows command prompt) > ./kapsel -Iinput.udf -Ooutput.udf -Ddefine.udf -Rrestart.udf -- "-I" option defines the name of UDF file which contains details of simulation (type of simulation, initial conditions, physical and simulation parameters, etc...). -- "-O" option defines the name of UDF file which contains the results (time-dependent positions and velocities of all the particles, etc...) of the simulation. -- "-D" option defines the name of UDF file which contains definitions of KAPSEL data dormat. This is common for any simulations. -- "-R" option defines the name of UDF file which contains values of all dynamical variables at the end of the simulation See "Re-start run" below. -- Field data (fluid velocities, ionic densitied, etc...) is saved in a subdirectory specified in "input.udf" if "output.AVS" = "on". This requires huge disk space (GB order). No field data is saved if "output.AVS" = "off". - Start "Gourmet" and open "output.udf". -- Instantaneous positions and velocities of all the particles can be seen as variables in "Particles[]". Use slide bar at the bottom of Gourmet window to see variables at different time steps. -- Load "plot.py" to plot time evolutions of the variables. ([[See STEP4>InstallB]]) -- Load "particleshow.py" to visualize motions of particles. ([[See STEP4>InstallB]]) ** Re-start run [#u7810c9a] - One can re-start simulations from the end of the previous run. - Start "Gourmet", and open "restart.udf" - Set "resume.Calculation" = "CONTINUE" - Increase "output.Num_step", and save it as "input2.udf" - Run KAPSEL as follows. (remove "./" if you use Windows command prompt) > ./kapsel -Iinput2.udf -Ooutput2.udf -Ddefine.udf -Rrestart2.udf ** Python programing on Gourmet [#hcc313c6] - Please see manuals below. -- English: &ref(pythoninterface_eng.pdf); -- Japanese: &ref(PythonInterface_jpn.pdf); ** UDF file [#t734b792] - UDF is a text file. One can browse and edit it using a text editor, but it.can be more easily handled with "Gourmet". See the manuals below for general information on UDF. -- English: &ref(udf_spec_eng.pdf); -- Japanese: &ref(UDF_Spec_jpn.pdf); - In the case of UDF for KAPSEL, one must first choose the type of problem you want to simulate by selecting "constitutive_eq" from list below. -- Navier_Stokes: (sedimentation, diffusion, coagulation) -- Shear_Navier_Stokes: (rheology, chain in shear flow) -- Electrolyte: (electrophoresis) - See the list below for definitions of all the variables in UDF for KAPSEL. ---- ''constitutive_eq'': type: {Navier_Stokes, Shear_Navier_Stokes, Electrolyte} Navier_Stokes - DX: - RHO: - ETA: - kBT: - alpha_v: - alpha_o: Shear_Navier_Stokes - DX: - RHO: - ETA: - kBT: - alpha_v: - alpha_o: - External_field: type: {DC, AC}: : DC| -- shear_rate: : AC| -- shear_rate: Electrolyte - DX: - RHO: - ETA: - kBT: - Dielectric_cst: - INIT_profile: - Add_salt: type: {salt, saltfree}: : salt| -- Valency_positive_ion: -- Valency_negative_ion: -- Onsager_coeff_positive_ion: -- Onsager_coeff_negative_ion: -- Debye_length: : saltfree| -- Valency_counterion: -- Onsager_coeff_counterion: - Electric_field: type: {ON, OFF}: -- ON: type: {DC, AC}: :: DC| --- Ex --- Ey --- Ez :: AC| --- Ex --- Ey --- Ez --- Frequency ''object_type'': type: {spherical_particle, chain} spherical_particle - Particle_spec[] -- Particle_spec[0] --- Particle_number --- MASS_RATIO --- Surface_charge chain - Chain_spec[] -- Chain_spec[0] --- Beads_number --- Chain_number --- MASS_RATIO --- Surface_charge ''A_XI'': ''A'': ''gravity'': - G: - G_direction: {-X, -Y, -Z} ''EPSILON'': ''LJ_powers'': {12:6, 24:12, 36:18} ''mesh'' - NPX: - NPY: - NPZ: ''time_increment'': type: {auto, manual} auto - factor manual - delta_t ''switch'' - ROTATION: {ON, OFF} - HYDRO_int: {Correct, free draining, squeeze-lubrication and drain} - Stokes: {with advection, w/o advection} - LJ_truncate: {ON, OFF, NONE} - INIT_distribution: type: {uniform_random, random_walk, FCC, BCC, user_specify} : random_walk| -- iteration : user_specify| -- Particles[] --- Particles[0] - R - x: - y: - z: - v - x: - y: - z: : FIX_CELL| -- x: {ON, OFF} -- y: {ON, OFF} -- z: {ON, OFF} ''boundary_condition'': type: {z_dirichlet, full_periodic} z_dirichlet - wall_velocity_x: - wall_velocity_y: - wall_velocity_z: ''output'' - GTS: - Num_snap: - AVS: {ON, OFF} : ON| -- Out_dir: -- Out_name: -- File_Type: {BINARY, ASCII} - UDF: {ON, OFF} ''E'': ''t'': ''Particles[]'' - Particles[] - R - x: - y: - z: - v - x: - y: - z: ''resume'' - Calculation: {NEW, CONTINUE} ----