X-Git-Url: https://www.hackdaworld.org/gitweb/?p=physik%2Fposic.git;a=blobdiff_plain;f=moldyn.c;h=ec96712dc7f9f64482b2fe11e36b4d1c33c3d3f8;hp=edda007d9290ff6cfe1001d4105c3f8a9ab12863;hb=6a467846e1bd9212bcfd4c5ac29f8954305aaff5;hpb=422f72e6415c6275f359fd5e462fa232e7dc2e87 diff --git a/moldyn.c b/moldyn.c index edda007..ec96712 100644 --- a/moldyn.c +++ b/moldyn.c @@ -954,6 +954,33 @@ double pressure_calc(t_moldyn *moldyn) { return moldyn->p; } +int average_reset(t_moldyn *moldyn) { + + /* update skip value */ + moldyn->avg_skip=moldyn->total_steps; + + /* kinetic energy */ + moldyn->k_sum=0.0; + moldyn->k2_sum=0.0; + + /* potential energy */ + moldyn->v_sum=0.0; + moldyn->v2_sum=0.0; + + /* temperature */ + moldyn->t_sum=0.0; + + /* virial */ + moldyn->virial_sum=0.0; + moldyn->gv_sum=0.0; + + /* pressure */ + moldyn->p_sum=0.0; + moldyn->gp_sum=0.0; + + return 0; +} + int average_and_fluctuation_calc(t_moldyn *moldyn) { int denom; @@ -1715,6 +1742,9 @@ int velocity_verlet(t_moldyn *moldyn) { v3_add(&(atom[i].v),&(atom[i].v),&delta); } + /* criticial check */ + moldyn_bc_check(moldyn); + /* neighbour list update */ link_cell_update(moldyn); @@ -2358,7 +2388,11 @@ int calculate_pair_correlation(t_moldyn *moldyn,double dr,void *ptr) { /* should never happen but it does 8) - * related to -ffloat-store problem! */ - if(s>=slots) s=slots-1; + if(s>=slots) { + printf("[moldyn] WARNING pcc (%d/%d)\n", + s,slots); + s=slots-1; + } if(ibrand!=jtom->brand) { /* mixed */