From 08559613e0fe7c23d329092679a2ff347a92ff4f Mon Sep 17 00:00:00 2001 From: Samo Penic <samo.penic@gmail.com> Date: Tue, 25 Dec 2018 22:29:07 +0000 Subject: [PATCH] Added idea for tape files --- src/plugins.c | 93 +++++++++++++++++++++++++++++++++++++++------- 1 files changed, 78 insertions(+), 15 deletions(-) diff --git a/src/plugins.c b/src/plugins.c index 7681984..8947499 100644 --- a/src/plugins.c +++ b/src/plugins.c @@ -1,28 +1,91 @@ /* This is a first attempt in implementation of plugins to Trisurf-ng. */ /* -1. Capabilities of Plugin -------------------------- -Every plugin should list it's capabilities -- that is what subrutines are available in it. Capabilities list for the moment are: +Options for tape: -* PLUGIN_PROGRAM_START (requires subrutine void at_start(void)): runs at startup -* PLUGIN_VESICLE_INITIALIZED (requires subrutine void after_vesicle_init(vesicle *vesicle): - runs after vesicle gets initialized. +extra_plugin_path = "..." (OPTIONAL) -* PLUGIN_VERTEX_MOVE (requires subrutines: +vesicle bipyramid { + nshell=23 +} - ts_bool vm_hard_constraint(vesicle *vesicle, vtx *vtx, vtx *old_vtx) - ts_double vm_energy_before(vesicle *vesicle, vtx *vtx) - ts_double vm_energy_after(vesicle *vesicle, vtx *vtx) - ts_double vm_new_state_accepted(vesicle *vesicle, vtx *vtx) - ts_double vm_new_state_rejected(vesicle *vesicle, vtx *vtx) +vesicle vtufile { + filename="filename" +} - ) +vesicle vtudatabase { + run_id=123 + timestep=999 +} - these subrutines are added into the vertex move into right places +vesicle properties { + xk0=20 + dmax=1.7 + dmin_interspecies=1.2 + stepsize=0.15 +} -* PLUGIN_BOND_FLIP ( N/A yet) +space properties { + nxmax=60 + nymax=60 + nzmax=60 +} + +loop control { + inner=1000 + outer=1000 +} + +plugin pressure { + pressure=10 +} + +plugin constant_volume { + precision=1e14 +} + +plugin constant_area { + +} + +plugin confinement_plate { + distance=5 + force=10 + coordinate=2 // 0=x,1=y,2=z +} + +plugin spherical_harmonics { + lmax=21 + filename="abc.csv" +} + +plugin spontaneous_curvature { + c0=2 + N=100 + w=10 + force=3 +} + +plugin filament { + monomers=100 + xi=10 +} + +plugin polymer { + polymers = 100 + monomers = 10 + elastic_coefficient=100 + is_internal = true +} + +plugin nucleus { + R_nucleus=10 + R_nucleusX=0 + R_nucleusY=0 + R_nucleusZ=0 +} + */ #include "plugins.h" #include <stdlib.h> -- Gitblit v1.9.3