mdcore  0.1.5
Defines | Functions | Variables
/home/pedro/work/mdcore/src/bond.c File Reference
#include "../config.h"
#include <stdlib.h>
#include <stdio.h>
#include <pthread.h>
#include <math.h>
#include <float.h>
#include <string.h>
#include <limits.h>
#include "cycle.h"
#include "errs.h"
#include "fptype.h"
#include "lock.h"
#include "part.h"
#include "potential.h"
#include "potential_eval.h"
#include "cell.h"
#include "fifo.h"
#include "space.h"
#include "engine.h"
#include "bond.h"

Defines

#define error(id)   ( bond_err = errs_register( id , bond_err_msg[-(id)] , __LINE__ , __FUNCTION__ , __FILE__ ) )

Functions

int bond_eval_div (struct bond *b, int N, int nr_threads, int cid_div, struct engine *e, double *epot_out)
 Evaluate a list of bonded interactoins.
int bond_eval (struct bond *b, int N, struct engine *e, double *epot_out)
 Evaluate a list of bonded interactoins.
int bond_evalf (struct bond *b, int N, struct engine *e, FPTYPE *f, double *epot_out)
 Evaluate a list of bonded interactoins.

Variables

int bond_err = bond_err_ok
unsigned int bond_rcount = 0
char * bond_err_msg [2]

Define Documentation

#define error (   id)    ( bond_err = errs_register( id , bond_err_msg[-(id)] , __LINE__ , __FUNCTION__ , __FILE__ ) )

Function Documentation

int bond_eval ( struct bond b,
int  N,
struct engine e,
double *  epot_out 
)

Evaluate a list of bonded interactoins.

Parameters:
bPointer to an array of bond.
NNr of bonds in b.
ePointer to the engine in which these bonds are evaluated.
epot_outPointer to a double in which to aggregate the potential energy.
Returns:
bond_err_ok or <0 on error (see bond_err)
int bond_eval_div ( struct bond b,
int  N,
int  nr_threads,
int  cid_div,
struct engine e,
double *  epot_out 
)

Evaluate a list of bonded interactoins.

Parameters:
bPointer to an array of bond.
NNr of bonds in b.
nr_threadsNumber of computational threads.
cid_modcell id modulus.
ePointer to the engine in which these bonds are evaluated.
epot_outPointer to a double in which to aggregate the potential energy.
Returns:
bond_err_ok or <0 on error (see bond_err)

Computes only the interactions on particles inside cells c where c->id % nr_threads == cid_mod.

int bond_evalf ( struct bond b,
int  N,
struct engine e,
FPTYPE *  f,
double *  epot_out 
)

Evaluate a list of bonded interactoins.

Parameters:
bPointer to an array of bond.
NNr of bonds in b.
ePointer to the engine in which these bonds are evaluated.
fAn array of FPTYPE in which to aggregate the resulting forces.
epot_outPointer to a double in which to aggregate the potential energy.

This function differs from bond_eval in that the forces are added to the array f instead of directly in the particle data.

Returns:
bond_err_ok or <0 on error (see bond_err)

Variable Documentation

The ID of the last error.

char* bond_err_msg[2]
Initial value:
 {
        "Nothing bad happened.",
    "An unexpected NULL pointer was encountered."
        }
unsigned int bond_rcount = 0
 All Data Structures Files Functions Variables Typedefs Enumerator Defines