mdcore
0.1.5
|
#include <stdlib.h>
#include <stdio.h>
#include <pthread.h>
#include <math.h>
#include <float.h>
#include <string.h>
#include "../config.h"
#include <omp.h>
#include "cycle.h"
#include "errs.h"
#include "fptype.h"
#include "lock.h"
#include "part.h"
#include "cell.h"
#include "fifo.h"
#include "space.h"
#include "potential.h"
#include "runner.h"
#include "bond.h"
#include "rigid.h"
#include "angle.h"
#include "dihedral.h"
#include "exclusion.h"
#include "reader.h"
#include "engine.h"
Defines | |
#define | error(id) ( engine_err = errs_register( id , engine_err_msg[-(id)] , __LINE__ , __FUNCTION__ , __FILE__ ) ) |
Functions | |
int | engine_bonded_eval_sets (struct engine *e) |
Compute all bonded interactions stored in this engine. | |
int | engine_bonded_sets (struct engine *e, int max_sets) |
Assemble non-conflicting sets of bonded interactions. | |
int | engine_dihedral_add (struct engine *e, int i, int j, int k, int l, int pid) |
Add a dihedral interaction to the engine. | |
int | engine_angle_add (struct engine *e, int i, int j, int k, int pid) |
Add a angle interaction to the engine. | |
int | engine_exclusion_shrink (struct engine *e) |
Remove duplicate exclusions. | |
int | engine_exclusion_add (struct engine *e, int i, int j) |
Add a exclusioned interaction to the engine. | |
int | engine_bond_add (struct engine *e, int i, int j) |
Add a bonded interaction to the engine. | |
int | engine_bonded_eval (struct engine *e) |
Compute all bonded interactions stored in this engine. | |
int | engine_bonded_eval_alt (struct engine *e) |
Compute all bonded interactions stored in this engine. | |
int | engine_dihedral_eval (struct engine *e) |
Compute the dihedral interactions stored in this engine. | |
int | engine_angle_eval (struct engine *e) |
Compute the angled interactions stored in this engine. | |
int | engine_exclusion_eval (struct engine *e) |
Correct for the excluded interactions stored in this engine. | |
int | engine_bond_eval (struct engine *e) |
Compute the bonded interactions stored in this engine. | |
int | engine_bond_addpot (struct engine *e, struct potential *p, int i, int j) |
Add a bond potential. | |
int | engine_dihedral_addpot (struct engine *e, struct potential *p) |
Add a dihedral potential. | |
int | engine_angle_addpot (struct engine *e, struct potential *p) |
Add a angle potential. |
#define error | ( | id | ) | ( engine_err = errs_register( id , engine_err_msg[-(id)] , __LINE__ , __FUNCTION__ , __FILE__ ) ) |
int engine_angle_add | ( | struct engine * | e, |
int | i, | ||
int | j, | ||
int | k, | ||
int | pid | ||
) |
Add a angle interaction to the engine.
e | The engine. |
i | The ID of the first part. |
j | The ID of the second part. |
k | The ID of the third part. |
pid | Index of the potential for this bond. |
int engine_angle_addpot | ( | struct engine * | e, |
struct potential * | p | ||
) |
Add a angle potential.
int engine_angle_eval | ( | struct engine * | e | ) |
Compute the angled interactions stored in this engine.
e | The engine. |
int engine_bond_add | ( | struct engine * | e, |
int | i, | ||
int | j | ||
) |
Add a bonded interaction to the engine.
int engine_bond_addpot | ( | struct engine * | e, |
struct potential * | p, | ||
int | i, | ||
int | j | ||
) |
Add a bond potential.
e | The engine. |
p | The potential to add to the engine. |
i | ID of particle type for this interaction. |
j | ID of second particle type for this interaction. |
Adds the given bonded potential for pairs of particles of type i
and j
, where i
and j
may be the same type ID.
int engine_bond_eval | ( | struct engine * | e | ) |
Compute the bonded interactions stored in this engine.
e | The engine. |
int engine_bonded_eval | ( | struct engine * | e | ) |
Compute all bonded interactions stored in this engine.
e | The engine. |
Does the same as engine_bond_eval, engine_angle_eval and #engine_dihedral eval, yet all in one go to avoid excessive updates of the particle forces.
int engine_bonded_eval_alt | ( | struct engine * | e | ) |
Compute all bonded interactions stored in this engine.
e | The engine. |
Does the same as engine_bond_eval, engine_angle_eval and #engine_dihedral eval, yet all in one go to avoid excessive updates of the particle forces.
int engine_bonded_eval_sets | ( | struct engine * | e | ) |
Compute all bonded interactions stored in this engine.
e | The engine. |
Does the same as engine_bond_eval, engine_angle_eval and #engine_dihedral eval, yet all in one go to avoid excessive updates of the particle forces.
int engine_bonded_sets | ( | struct engine * | e, |
int | max_sets | ||
) |
Assemble non-conflicting sets of bonded interactions.
e | The engine. |
int engine_dihedral_add | ( | struct engine * | e, |
int | i, | ||
int | j, | ||
int | k, | ||
int | l, | ||
int | pid | ||
) |
Add a dihedral interaction to the engine.
e | The engine. |
i | The ID of the first part. |
j | The ID of the second part. |
k | The ID of the third part. |
l | The ID of the fourth part. |
pid | Index of the potential for this bond. |
int engine_dihedral_addpot | ( | struct engine * | e, |
struct potential * | p | ||
) |
Add a dihedral potential.
int engine_dihedral_eval | ( | struct engine * | e | ) |
Compute the dihedral interactions stored in this engine.
e | The engine. |
int engine_exclusion_add | ( | struct engine * | e, |
int | i, | ||
int | j | ||
) |
Add a exclusioned interaction to the engine.
int engine_exclusion_eval | ( | struct engine * | e | ) |
Correct for the excluded interactions stored in this engine.
e | The engine. |
int engine_exclusion_shrink | ( | struct engine * | e | ) |
Remove duplicate exclusions.
e | The engine. |