← Back to team overview

yade-dev team mailing list archive

[svn] r1866 - in trunk/pkg/dem: . Engine/EngineUnit PreProcessor

 

Author: chareyre
Date: 2009-07-15 01:42:58 +0200 (Wed, 15 Jul 2009)
New Revision: 1866

Removed:
   trunk/pkg/dem/Engine/EngineUnit/InteractingBox2InteractingSphere4SpheresContactGeometryWater.cpp
   trunk/pkg/dem/Engine/EngineUnit/InteractingBox2InteractingSphere4SpheresContactGeometryWater.hpp
   trunk/pkg/dem/Engine/EngineUnit/InteractingSphere2AABBwater.cpp
   trunk/pkg/dem/Engine/EngineUnit/InteractingSphere2AABBwater.hpp
   trunk/pkg/dem/Engine/EngineUnit/InteractingSphere2InteractingSphere4SpheresContactGeometryWater.cpp
   trunk/pkg/dem/Engine/EngineUnit/InteractingSphere2InteractingSphere4SpheresContactGeometryWater.hpp
   trunk/pkg/dem/Engine/EngineUnit/MacroMicroElasticRelationshipsWater.cpp
   trunk/pkg/dem/Engine/EngineUnit/MacroMicroElasticRelationshipsWater.hpp
Modified:
   trunk/pkg/dem/PreProcessor/TriaxialTest.cpp
   trunk/pkg/dem/PreProcessor/TriaxialTest.hpp
   trunk/pkg/dem/PreProcessor/TriaxialTestWater.cpp
   trunk/pkg/dem/PreProcessor/TriaxialTestWater.hpp
   trunk/pkg/dem/SConscript
Log:
- cleanup : removing unused (and useless) "water" variants of engines
- some cleanup in recorders too 




Deleted: trunk/pkg/dem/Engine/EngineUnit/InteractingBox2InteractingSphere4SpheresContactGeometryWater.cpp
===================================================================
--- trunk/pkg/dem/Engine/EngineUnit/InteractingBox2InteractingSphere4SpheresContactGeometryWater.cpp	2009-07-14 21:03:51 UTC (rev 1865)
+++ trunk/pkg/dem/Engine/EngineUnit/InteractingBox2InteractingSphere4SpheresContactGeometryWater.cpp	2009-07-14 23:42:58 UTC (rev 1866)
@@ -1,190 +0,0 @@
-/*************************************************************************
-*  Copyright (C) 2004 by Olivier Galizzi                                 *
-*  olivier.galizzi@xxxxxxx                                               *
-*  Copyright (C) 2004 by Janek Kozicki                                   *
-*  cosurgi@xxxxxxxxxx                                                    *
-*                                                                        *
-*  This program is free software; it is licensed under the terms of the  *
-*  GNU General Public License v2 or later. See file LICENSE for details. *
-*************************************************************************/
-
-#include "InteractingBox2InteractingSphere4SpheresContactGeometryWater.hpp"
-#include <yade/pkg-dem/SpheresContactGeometry.hpp>
-#include <yade/pkg-common/InteractingSphere.hpp>
-#include <yade/pkg-common/InteractingBox.hpp>
-
-#include <yade/lib-base/yadeWm3Extra.hpp>
-
-//FIXME return type should be shared_ptr<Interaction>
-bool InteractingBox2InteractingSphere4SpheresContactGeometryWater::go(		const shared_ptr<InteractingGeometry>& cm1,
-						const shared_ptr<InteractingGeometry>& cm2,
-						const Se3r& se31,
-						const Se3r& se32,
-						const shared_ptr<Interaction>& c)
-{
-
-	//if (se31.orientation == Quaternionr())
-	//	return collideAABoxSphere(cm1,cm2,se31,se32,c);
-	
-	Vector3r l,t,p,q,r;
-	bool onborder = false;
-	Vector3r pt1,pt2,normal;
-	Matrix3r axisT,axis;
-	Real depth;
-
-	InteractingSphere* s = static_cast<InteractingSphere*>(cm2.get());
-	InteractingBox* obb = static_cast<InteractingBox*>(cm1.get());
-	
-	Vector3r extents = obb->extents;
-
-	se31.orientation.ToRotationMatrix(axisT);
-	axis = axisT.Transpose();
-	
-	p = se32.position-se31.position;
-	
-	l[0] = extents[0];
-	t[0] = axis.GetRow(0).Dot(p); 
-	if (t[0] < -l[0]) { t[0] = -l[0]; onborder = true; }
-	if (t[0] >  l[0]) { t[0] =  l[0]; onborder = true; }
-
-	l[1] = extents[1];
-	t[1] = axis.GetRow(1).Dot(p);
-	if (t[1] < -l[1]) { t[1] = -l[1]; onborder = true; }
-	if (t[1] >  l[1]) { t[1] =  l[1]; onborder = true; }
-
-	l[2] = extents[2];
-	t[2] = axis.GetRow(2).Dot(p);
-	if (t[2] < -l[2]) { t[2] = -l[2]; onborder = true; }
-	if (t[2] >  l[2]) { t[2] =  l[2]; onborder = true; }
-	
-	if (!onborder) 
-	{	//cerr << "!onborder";
-		// sphere center inside box. find largest `t' value
-		Real min = l[0]-fabs(t[0]);
-		int mini = 0;
-		for (int i=1; i<3; i++) 
-		{
-			Real tt = l[i]-fabs(t[i]);
-			if (tt < min) 
-			{
-				min = tt;
-				mini = i;
-			}
-		}
-		
-		// contact normal aligned with box edge along largest `t' value
-		Vector3r tmp = Vector3r(0,0,0);
-
-		tmp[mini] = (t[mini] > 0) ? 1.0 : -1.0;
-		
-		normal = axisT*tmp;
-		
-		normal.Normalize();
-		
-		pt1 = se32.position + normal*min;
-		pt2 = se32.position - normal*s->radius;	
-
-		// FIXME : remove those uncommented lines
-		shared_ptr<SpheresContactGeometry> scm;
-		if (!c->interactionGeometry)
-			scm = shared_ptr<SpheresContactGeometry>(new SpheresContactGeometry());
-		else
-			scm = dynamic_pointer_cast<SpheresContactGeometry>(c->interactionGeometry);
-			
-		scm->contactPoint = 0.5*(pt1+pt2);
-		scm->normal = pt1-pt2;
-		scm->penetrationDepth = scm->normal.Normalize();
-		//cerr << "Box/Sphere penetrationdepth= "<< scm->normal.Normalize() << endl;
-		scm->radius1 = s->radius*2; /// c ici que le "rayon" du mur est fix�
-		//cerr << "1" << endl;
-		scm->radius2 = s->radius;
-		c->interactionGeometry = scm;
-		
-// FIXME : uncommente those lines	
-/////////////////////////////////////////////////
-// 		shared_ptr<SpheresContactGeometry> scm = shared_ptr<SpheresContactGeometry>(new SpheresContactGeometry());
-// 		scm->contactPoint = 0.5*(pt1+pt2);
-// 		scm->normal = pt1-pt2;
-// 		scm->penetrationDepth = scm->normal.Normalize();
-// 		scm->radius1 = s->radius*2;
-// 		scm->radius2 = s->radius;
-// 		c->interactionGeometry = scm;
-		
-		return true;	
-	}
-	//FIXME : use else instead and signle return
-	
-	q = axisT*t;
-	r = p - q;
-	
-	depth = s->radius-sqrt(r.Dot(r));
-	//cerr << "depth = " << depth;
-	
-	if (depth < 0) 
-	{	//cerr << "depth < 0" ;
-		return false;
-	}
-
-	pt1 = q + se31.position;
-
-	normal = r;
-	normal.Normalize();
-
-	pt2 = se32.position - normal * s->radius;
-	
-	// FIXME : remove those uncommented lines
-	shared_ptr<SpheresContactGeometry> scm;
-	//cerr << "scm = " << scm << " | c = " << c << endl;
-	
-	if (!c->interactionGeometry)
-	{	//cerr << "c->isNew";
-		scm = shared_ptr<SpheresContactGeometry>(new SpheresContactGeometry());
-	}
-	else
-	{	//cerr << "else";
-		scm = dynamic_pointer_cast<SpheresContactGeometry>(c->interactionGeometry);
-	}
-	scm->contactPoint = 0.5*(pt1+pt2);
-	scm->normal = pt1-pt2;
-	scm->penetrationDepth = scm->normal.Normalize();
-	//cerr << "Box/Sphere penetrationdepth= "<< scm->normal.Normalize() << endl;
-	scm->radius1 = s->radius*2; /// c ici que le "rayon" du mur est fix�
-	//cerr << "2 " << endl;
-	scm->radius2 = s->radius;
-	c->interactionGeometry = scm;
-// FIXME : uncommente those lines	
-/////////////////////////////////////////////////	
-// 	shared_ptr<SpheresContactGeometry> scm = shared_ptr<SpheresContactGeometry>(new SpheresContactGeometry());
-// 	scm->contactPoint = 0.5*(pt1+pt2);
-// 	scm->normal = pt1-pt2;
-// 	scm->penetrationDepth = scm->normal.Normalize();
-// 	scm->radius1 = s->radius*2;
-// 	scm->radius2 = s->radius;
-// 	c->interactionGeometry = scm;
-	
-	return true;
-}
-
-
-bool InteractingBox2InteractingSphere4SpheresContactGeometryWater::goReverse(	const shared_ptr<InteractingGeometry>& cm1,
-						const shared_ptr<InteractingGeometry>& cm2,
-						const Se3r& se31,
-						const Se3r& se32,
-						const shared_ptr<Interaction>& c)
-{
-	bool isInteracting = go(cm2,cm1,se32,se31,c);
-	if (isInteracting)
-	{
-		SpheresContactGeometry* scm = static_cast<SpheresContactGeometry*>(c->interactionGeometry.get());
-		//Vector3r tmp = scm->closestsPoints[0].first;		
-		//scm->closestsPoints[0].first = scm->closestsPoints[0].second;
-		//scm->closestsPoints[0].second = tmp;
-		scm->normal = -scm->normal;
-		Real tmpR  = scm->radius1;
-		scm->radius1 = scm->radius2;
-		scm->radius2 = tmpR;
-	}
-	return isInteracting;
-}
-
-YADE_PLUGIN();

Deleted: trunk/pkg/dem/Engine/EngineUnit/InteractingBox2InteractingSphere4SpheresContactGeometryWater.hpp
===================================================================
--- trunk/pkg/dem/Engine/EngineUnit/InteractingBox2InteractingSphere4SpheresContactGeometryWater.hpp	2009-07-14 21:03:51 UTC (rev 1865)
+++ trunk/pkg/dem/Engine/EngineUnit/InteractingBox2InteractingSphere4SpheresContactGeometryWater.hpp	2009-07-14 23:42:58 UTC (rev 1866)
@@ -1,38 +0,0 @@
-/*************************************************************************
-*  Copyright (C) 2004 by Olivier Galizzi                                 *
-*  olivier.galizzi@xxxxxxx                                               *
-*  Copyright (C) 2004 by Janek Kozicki                                   *
-*  cosurgi@xxxxxxxxxx                                                    *
-*                                                                        *
-*  This program is free software; it is licensed under the terms of the  *
-*  GNU General Public License v2 or later. See file LICENSE for details. *
-*************************************************************************/
-
-#pragma once
-
-#include <yade/pkg-common/InteractionGeometryEngineUnit.hpp>
-
-class InteractingBox2InteractingSphere4SpheresContactGeometryWater : public InteractionGeometryEngineUnit
-{
-	public :
-		virtual bool go(	const shared_ptr<InteractingGeometry>& cm1,
-					const shared_ptr<InteractingGeometry>& cm2,
-					const Se3r& se31,
-					const Se3r& se32,
-					const shared_ptr<Interaction>& c);
-
-		virtual bool goReverse(	const shared_ptr<InteractingGeometry>& cm1,
-					const shared_ptr<InteractingGeometry>& cm2,
-					const Se3r& se31,
-					const Se3r& se32,
-					const shared_ptr<Interaction>& c);
-
-	REGISTER_CLASS_NAME(InteractingBox2InteractingSphere4SpheresContactGeometryWater);
-	REGISTER_BASE_CLASS_NAME(InteractionGeometryEngineUnit);
-
-	DEFINE_FUNCTOR_ORDER_2D(InteractingBox,InteractingSphere);
-};
-
-REGISTER_SERIALIZABLE(InteractingBox2InteractingSphere4SpheresContactGeometryWater);
-
-

Deleted: trunk/pkg/dem/Engine/EngineUnit/InteractingSphere2AABBwater.cpp
===================================================================
--- trunk/pkg/dem/Engine/EngineUnit/InteractingSphere2AABBwater.cpp	2009-07-14 21:03:51 UTC (rev 1865)
+++ trunk/pkg/dem/Engine/EngineUnit/InteractingSphere2AABBwater.cpp	2009-07-14 23:42:58 UTC (rev 1866)
@@ -1,30 +0,0 @@
-/*************************************************************************
-*  Copyright (C) 2006 by luc Scholtes                                    *
-*  luc.scholtes@xxxxxxxxxxx                                              *
-*                                                                        *
-*  This program is free software; it is licensed under the terms of the  *
-*  GNU General Public License v2 or later. See file LICENSE for details. *
-*************************************************************************/
- 
-#include "InteractingSphere2AABBwater.hpp"
-#include <yade/pkg-common/InteractingSphere.hpp>
-#include <yade/pkg-common/AABB.hpp>
-
-void InteractingSphere2AABBwater::go(	  const shared_ptr<InteractingGeometry>& cm
-				, shared_ptr<BoundingVolume>& bv
-				, const Se3r& se3
-				, const Body*	)
-{
-	InteractingSphere* sphere = static_cast<InteractingSphere*>(cm.get());
-	AABB* aabb = static_cast<AABB*>(bv.get());
-	
-	aabb->center = se3.position;
-	
-	aabb->halfSize = Vector3r(1.5*sphere->radius,1.5*sphere->radius,1.5*sphere->radius);
-	
-	aabb->min = aabb->center-aabb->halfSize;
-	aabb->max = aabb->center+aabb->halfSize;	
-
-}
-	
-YADE_PLUGIN();

Deleted: trunk/pkg/dem/Engine/EngineUnit/InteractingSphere2AABBwater.hpp
===================================================================
--- trunk/pkg/dem/Engine/EngineUnit/InteractingSphere2AABBwater.hpp	2009-07-14 21:03:51 UTC (rev 1865)
+++ trunk/pkg/dem/Engine/EngineUnit/InteractingSphere2AABBwater.hpp	2009-07-14 23:42:58 UTC (rev 1866)
@@ -1,27 +0,0 @@
-/*************************************************************************
-*  Copyright (C) 2004 by Olivier Galizzi                                 *
-*  olivier.galizzi@xxxxxxx                                               *
-*                                                                        *
-*  This program is free software; it is licensed under the terms of the  *
-*  GNU General Public License v2 or later. See file LICENSE for details. *
-*************************************************************************/
- 
-#pragma once
-
-#include <yade/pkg-common/BoundingVolumeEngineUnit.hpp>
-
-class InteractingSphere2AABBwater : public BoundingVolumeEngineUnit
-{
-	public :
-		void go(	  const shared_ptr<InteractingGeometry>& cm
-				, shared_ptr<BoundingVolume>& bv
-				, const Se3r& se3
-				, const Body*	);
-	FUNCTOR2D(InteractingSphere,AABB);
-	REGISTER_CLASS_NAME(InteractingSphere2AABBwater);
-	REGISTER_BASE_CLASS_NAME(BoundingVolumeEngineUnit);
-};
-
-REGISTER_SERIALIZABLE(InteractingSphere2AABBwater);
-
-

Deleted: trunk/pkg/dem/Engine/EngineUnit/InteractingSphere2InteractingSphere4SpheresContactGeometryWater.cpp
===================================================================
--- trunk/pkg/dem/Engine/EngineUnit/InteractingSphere2InteractingSphere4SpheresContactGeometryWater.cpp	2009-07-14 21:03:51 UTC (rev 1865)
+++ trunk/pkg/dem/Engine/EngineUnit/InteractingSphere2InteractingSphere4SpheresContactGeometryWater.cpp	2009-07-14 23:42:58 UTC (rev 1866)
@@ -1,94 +0,0 @@
-/*************************************************************************
-*  Copyright (C) 2006 by luc Scholtes                                    *
-*  luc.scholtes@xxxxxxxxxxx                                              *
-*  Copyright (C) 2004 by Janek Kozicki                                   *
-*  cosurgi@xxxxxxxxxx                                                    *
-*                                                                        *
-*  This program is free software; it is licensed under the terms of the  *
-*  GNU General Public License v2 or later. See file LICENSE for details. *
-*************************************************************************/
-
-#include "InteractingSphere2InteractingSphere4SpheresContactGeometryWater.hpp"
-
-#include <yade/pkg-dem/SpheresContactGeometry.hpp>
-#include <yade/pkg-common/InteractingSphere.hpp>
-
-
-
-bool InteractingSphere2InteractingSphere4SpheresContactGeometryWater::go(	const shared_ptr<InteractingGeometry>& cm1,
-							const shared_ptr<InteractingGeometry>& cm2,
-							const Se3r& se31,
-							const Se3r& se32,
-							const shared_ptr<Interaction>& c)
-{
-	InteractingSphere* s1 = static_cast<InteractingSphere*>(cm1.get());
-	InteractingSphere* s2 = static_cast<InteractingSphere*>(cm2.get());
-
-	/// pb ???
-	Vector3r normal = se32.position-se31.position;
-	Real penetrationDepth = s1->radius+s2->radius-normal.Normalize();
-	
-	shared_ptr<SpheresContactGeometry> scm;
-	
-	if (c->interactionGeometry)	
-	{
-		scm = dynamic_pointer_cast<SpheresContactGeometry>(c->interactionGeometry);
-	}
-
-	// BEGIN .......  FIXME FIXME	- wrong hack, to make cohesion work.
-	
-	else	
-		
-	scm = shared_ptr<SpheresContactGeometry>(new SpheresContactGeometry());
-		
-		
-// 	if (penetrationDepth>0)
-	{
-		scm->contactPoint = se31.position+(s1->radius-0.5*penetrationDepth)*normal;//0.5*(pt1+pt2);
-		scm->normal = normal;
-		scm->penetrationDepth = penetrationDepth;
-		scm->radius1 = s1->radius;
-		scm->radius2 = s2->radius;
-		
-		// ?????
-		if (!c->interactionGeometry)
-		c->interactionGeometry = scm;
-	
-	return true;
-		
-	}
-		
-// 	else	 //d�finition de g�om�trie d'interaction pour le cas ou !contact
-// 	{
-// 	scm->normal = normal;
-// 	scm->penetrationDepth = penetrationDepth;
-// 	scm->radius1 = s1->radius;
-// 	scm->radius2 = s2->radius;
-// 	
-// 	//linkGeometry->normal.normalize();
-// 	//linkGeometry->radius1 = s1->radius;
-// 	//linkGeometry->radius2 = s2->radius;
-// 	
-// 	if (!c->interactionGeometry)
-// 		c->interactionGeometry = scm;
-// 		
-// 	//if (!c->interactionGeometry)
-// 	//	c->interactionGeometry = linkGeometry;
-// 	
-// 	return true;
-// 	//return false;
-// 	}
-}
-
-
-
-bool InteractingSphere2InteractingSphere4SpheresContactGeometryWater::goReverse(	const shared_ptr<InteractingGeometry>& cm1,
-								const shared_ptr<InteractingGeometry>& cm2,
-								const Se3r& se31,
-								const Se3r& se32,
-								const shared_ptr<Interaction>& c)
-{
-	return go(cm1,cm2,se31,se32,c);
-}
-
-YADE_PLUGIN();

Deleted: trunk/pkg/dem/Engine/EngineUnit/InteractingSphere2InteractingSphere4SpheresContactGeometryWater.hpp
===================================================================
--- trunk/pkg/dem/Engine/EngineUnit/InteractingSphere2InteractingSphere4SpheresContactGeometryWater.hpp	2009-07-14 21:03:51 UTC (rev 1865)
+++ trunk/pkg/dem/Engine/EngineUnit/InteractingSphere2InteractingSphere4SpheresContactGeometryWater.hpp	2009-07-14 23:42:58 UTC (rev 1866)
@@ -1,37 +0,0 @@
-/*************************************************************************
-*  Copyright (C) 2004 by Olivier Galizzi                                 *
-*  olivier.galizzi@xxxxxxx                                               *
-*                                                                        *
-*  This program is free software; it is licensed under the terms of the  *
-*  GNU General Public License v2 or later. See file LICENSE for details. *
-*************************************************************************/
-
-#pragma once
-
-#include <yade/pkg-common/InteractionGeometryEngineUnit.hpp>
-
-class InteractingSphere2InteractingSphere4SpheresContactGeometryWater : public InteractionGeometryEngineUnit
-{
-	public :
-		virtual bool go(	const shared_ptr<InteractingGeometry>& cm1,
-					const shared_ptr<InteractingGeometry>& cm2,
-					const Se3r& se31,
-					const Se3r& se32,
-					const shared_ptr<Interaction>& c);
-		virtual bool goReverse(	const shared_ptr<InteractingGeometry>& cm1,
-					const shared_ptr<InteractingGeometry>& cm2,
-					const Se3r& se31,
-					const Se3r& se32,
-					const shared_ptr<Interaction>& c);
-
-	FUNCTOR2D(InteractingSphere,InteractingSphere);
-
-	REGISTER_CLASS_NAME(InteractingSphere2InteractingSphere4SpheresContactGeometryWater);
-	REGISTER_BASE_CLASS_NAME(InteractionGeometryEngineUnit);
-
-	DEFINE_FUNCTOR_ORDER_2D(InteractingSphere,InteractingSphere);
-};
-
-REGISTER_SERIALIZABLE(InteractingSphere2InteractingSphere4SpheresContactGeometryWater);
-
-

Deleted: trunk/pkg/dem/Engine/EngineUnit/MacroMicroElasticRelationshipsWater.cpp
===================================================================
--- trunk/pkg/dem/Engine/EngineUnit/MacroMicroElasticRelationshipsWater.cpp	2009-07-14 21:03:51 UTC (rev 1865)
+++ trunk/pkg/dem/Engine/EngineUnit/MacroMicroElasticRelationshipsWater.cpp	2009-07-14 23:42:58 UTC (rev 1866)
@@ -1,134 +0,0 @@
-/*************************************************************************
-*  Copyright (C) 2004 by Olivier Galizzi                                 *
-*  olivier.galizzi@xxxxxxx                                               *
-*  Copyright (C) 2004 by Janek Kozicki                                   *
-*  cosurgi@xxxxxxxxxx                                                    *
-*                                                                        *
-*  This program is free software; it is licensed under the terms of the  *
-*  GNU General Public License v2 or later. See file LICENSE for details. *
-*************************************************************************/
-
-#include "MacroMicroElasticRelationshipsWater.hpp"
-#include <yade/pkg-dem/SpheresContactGeometry.hpp>
-#include <yade/pkg-dem/CapillaryParameters.hpp>
-#include <yade/pkg-dem/ElasticContactInteraction.hpp>
-#include <yade/pkg-dem/SDECLinkGeometry.hpp> // FIXME - I can't dispatch by SDECLinkGeometry <-> SpheresContactGeometry !!?
-#include <yade/pkg-dem/SDECLinkPhysics.hpp> // FIXME
-#include <yade/pkg-dem/BodyMacroParameters.hpp>
-#include <yade/core/Omega.hpp>
-#include <yade/core/MetaBody.hpp>
-
-
-MacroMicroElasticRelationshipsWater::MacroMicroElasticRelationshipsWater()
-{
-	alpha 	= 2.5;
-	beta 	= 2.0;
-	gamma 	= 2.65;
-}
-
-
-void MacroMicroElasticRelationshipsWater::registerAttributes()
-{
-	REGISTER_ATTRIBUTE(alpha);
-	REGISTER_ATTRIBUTE(beta);
-	REGISTER_ATTRIBUTE(gamma);
-}
-
-
-void MacroMicroElasticRelationshipsWater::go(	  const shared_ptr<PhysicalParameters>& b1 // BodyMacroParameters
-					, const shared_ptr<PhysicalParameters>& b2 // BodyMacroParameters
-					, const shared_ptr<Interaction>& interaction)
-{
-	BodyMacroParameters* sdec1 = static_cast<BodyMacroParameters*>(b1.get());
-	BodyMacroParameters* sdec2 = static_cast<BodyMacroParameters*>(b2.get());
-	SpheresContactGeometry* interactionGeometry = static_cast<SpheresContactGeometry*>(interaction->interactionGeometry.get());
-	
-	if(interactionGeometry) // so it is SpheresContactGeometry  - NON PERMANENT LINK
-	{
-
-/* OLD VERSION  this is a LinearContactModel, different class, model different that MicroMacroElasticRelationships
-another would be HerzMindlinContactModel
-
-		shared_ptr<ElasticContactInteraction> contactPhysics;
-		
-		if ( interaction->isNew)
-		{
-			interaction->interactionPhysics = shared_ptr<ElasticContactInteraction>(new ElasticContactInteraction());
-			contactPhysics = dynamic_pointer_cast<ElasticContactInteraction>(interaction->interactionPhysics);
-			
-			contactPhysics->initialKn			= 2*(sdec1->kn*sdec2->kn)/(sdec1->kn+sdec2->kn);
-			contactPhysics->initialKs			= 2*(sdec1->ks*sdec2->ks)/(sdec1->ks+sdec2->ks);
-			contactPhysics->prevNormal 			= interactionGeometry->normal;
-			contactPhysics->initialEquilibriumDistance	= interactionGeometry->radius1+interactionGeometry->radius2;
-		}
-		else
-			contactPhysics = dynamic_pointer_cast<ElasticContactInteraction>(interaction->interactionPhysics);
-		
-		contactPhysics->kn = contactPhysics->initialKn;
-		contactPhysics->ks = contactPhysics->initialKs;
-		contactPhysics->equilibriumDistance = contactPhysics->initialEquilibriumDistance;
-*/
-		if(!interaction->interactionPhysics)
-		{
-			interaction->interactionPhysics = shared_ptr<CapillaryParameters>(new CapillaryParameters());
-			CapillaryParameters* contactPhysics = static_cast<CapillaryParameters*>(interaction->interactionPhysics.get());
-
-			Real Ea 	= sdec1->young;
-			Real Eb 	= sdec2->young;
-			//Real Va 	= sdec1->poisson;
-			//Real Vb 	= sdec2->poisson;
-			Real Da 	= interactionGeometry->radius1; // FIXME - multiply by factor of sphere interaction distance (so sphere intaracts at bigger range that its geometrical size)
-			Real Db 	= interactionGeometry->radius2; // FIXME - as above
-			Real fa 	= sdec1->frictionAngle;
-			Real fb 	= sdec2->frictionAngle;
-
-			//Real Eab	= 2*Ea*Eb/(Ea+Eb);
-			//Real Vab	= 2*Va*Vb/(Va+Vb);
-
-			Real Dinit 	= Da+Db; 			// FIXME - is it just a sum?
-			//Real Sinit 	= Mathr::PI * std::pow( std::min(Da,Db) , 2);
-
-			//Real Kn						= (Eab*Sinit/Dinit)*( (1+alpha)/(beta*(1+Vab) + gamma*(1-alpha*Vab) ) );
-			Real ksOnkn = 0.5;
-			Real Kn = 4*Ea*Da*Eb*Db/(2*(Ea*Da+Eb*Db));//harmonic average of two stiffnesses
-//cerr << "Kn: " << Kn << endl;
-			contactPhysics->initialKn			= Kn;
-			//contactPhysics->initialKs			= Kn*(1-alpha*Vab)/(1+Vab);
-			contactPhysics->initialKs			= Kn*ksOnkn;
-//cerr << "Ks: " <<       contactPhysics->initialKs			<< endl;
-			//contactPhysics->frictionAngle			= (fa+fb)*0.5; // FIXME - this is actually a waste of memory space, just like initialKs and initialKn
-			contactPhysics->frictionAngle			= std::min(fa,fb);
-			contactPhysics->tangensOfFrictionAngle		= std::tan(contactPhysics->frictionAngle); 
-
-			contactPhysics->prevNormal 			= interactionGeometry->normal;
-			contactPhysics->initialEquilibriumDistance	= Dinit;			
-
-			contactPhysics->kn = contactPhysics->initialKn;
-			contactPhysics->ks = contactPhysics->initialKs;
-			contactPhysics->equilibriumDistance = contactPhysics->initialEquilibriumDistance;
-
-		}
-		else
-		{	// FIXME - are those lines necessary ???? what they are doing in fact ???
-			CapillaryParameters* contactPhysics = static_cast<CapillaryParameters*>(interaction->interactionPhysics.get());
-
-			contactPhysics->kn = contactPhysics->initialKn;
-			contactPhysics->ks = contactPhysics->initialKs;
-			contactPhysics->equilibriumDistance = contactPhysics->initialEquilibriumDistance;
-		}	
-		
-	}
-	else   // this is PERMANENT LINK because previous static_cast failed, dispatcher should do this job
-	{
-		SDECLinkGeometry* sdecLinkGeometry =  static_cast<SDECLinkGeometry*>(interaction->interactionGeometry.get());
-		if (sdecLinkGeometry)
-		{		
-			SDECLinkPhysics* linkPhysics = static_cast<SDECLinkPhysics*>(interaction->interactionPhysics.get());
-	//		linkPhysics->frictionAngle 		= ?? //FIXME - uninitialized 
-			linkPhysics->kn 			= linkPhysics->initialKn;
-			linkPhysics->ks 			= linkPhysics->initialKs;
-			linkPhysics->equilibriumDistance 	= linkPhysics->initialEquilibriumDistance;
-		}
-	}
-};
-YADE_PLUGIN();

Deleted: trunk/pkg/dem/Engine/EngineUnit/MacroMicroElasticRelationshipsWater.hpp
===================================================================
--- trunk/pkg/dem/Engine/EngineUnit/MacroMicroElasticRelationshipsWater.hpp	2009-07-14 21:03:51 UTC (rev 1865)
+++ trunk/pkg/dem/Engine/EngineUnit/MacroMicroElasticRelationshipsWater.hpp	2009-07-14 23:42:58 UTC (rev 1866)
@@ -1,38 +0,0 @@
-/*************************************************************************
-*  Copyright (C) 2004 by Olivier Galizzi                                 *
-*  olivier.galizzi@xxxxxxx                                               *
-*                                                                        *
-*  This program is free software; it is licensed under the terms of the  *
-*  GNU General Public License v2 or later. See file LICENSE for details. *
-*************************************************************************/
-
-#pragma once
-
-#include <yade/pkg-common/InteractionPhysicsEngineUnit.hpp>
-
-class MacroMicroElasticRelationshipsWater : public InteractionPhysicsEngineUnit
-{
-	public :
-		Real		 alpha
-				,beta
-				,gamma;
-
-		MacroMicroElasticRelationshipsWater();
-
-		virtual void go(	const shared_ptr<PhysicalParameters>& b1,
-					const shared_ptr<PhysicalParameters>& b2,
-					const shared_ptr<Interaction>& interaction);
-
-	protected :
-		virtual void registerAttributes();
-
-	FUNCTOR2D(BodyMacroParameters,BodyMacroParameters);
-	
-	REGISTER_CLASS_NAME(MacroMicroElasticRelationshipsWater);
-	REGISTER_BASE_CLASS_NAME(InteractionPhysicsEngineUnit);
-
-};
-
-REGISTER_SERIALIZABLE(MacroMicroElasticRelationshipsWater);
-
-

Modified: trunk/pkg/dem/PreProcessor/TriaxialTest.cpp
===================================================================
--- trunk/pkg/dem/PreProcessor/TriaxialTest.cpp	2009-07-14 21:03:51 UTC (rev 1865)
+++ trunk/pkg/dem/PreProcessor/TriaxialTest.cpp	2009-07-14 23:42:58 UTC (rev 1866)
@@ -1,9 +1,5 @@
 /*************************************************************************
-*  Copyright (C) 2004 by Olivier Galizzi                                 *
-*  olivier.galizzi@xxxxxxx                                               *
-*  Copyright (C) 2004 by Janek Kozicki                                   *
-*  cosurgi@xxxxxxxxxx                                                    *
-*  Copyright (C) 2007 by Bruno Chareyre		                         *
+*  Copyright (C) 2006 by Bruno Chareyre		                         *
 *  bruno.chareyre@xxxxxxxxxxx                                            *
 *                                                                        *
 *  This program is free software; it is licensed under the terms of the  *

Modified: trunk/pkg/dem/PreProcessor/TriaxialTest.hpp
===================================================================
--- trunk/pkg/dem/PreProcessor/TriaxialTest.hpp	2009-07-14 21:03:51 UTC (rev 1865)
+++ trunk/pkg/dem/PreProcessor/TriaxialTest.hpp	2009-07-14 23:42:58 UTC (rev 1866)
@@ -1,9 +1,5 @@
 /*************************************************************************
-*  Copyright (C) 2004 by Olivier Galizzi                                 *
-*  olivier.galizzi@xxxxxxx                                               *
-*  Copyright (C) 2004 by Janek Kozicki                                   *
-*  cosurgi@xxxxxxxxxx                                                    *
-*  Copyright (C) 2007 by Bruno Chareyre		                         *
+*  Copyright (C) 2006 by Bruno Chareyre		                         *
 *  bruno.chareyre@xxxxxxxxxxx                                            *
 *                                                                        *
 *  This program is free software; it is licensed under the terms of the  *

Modified: trunk/pkg/dem/PreProcessor/TriaxialTestWater.cpp
===================================================================
--- trunk/pkg/dem/PreProcessor/TriaxialTestWater.cpp	2009-07-14 21:03:51 UTC (rev 1865)
+++ trunk/pkg/dem/PreProcessor/TriaxialTestWater.cpp	2009-07-14 23:42:58 UTC (rev 1866)
@@ -1,10 +1,8 @@
 /*************************************************************************
-*  Copyright (C) 2004 by Olivier Galizzi                                 *
-*  olivier.galizzi@xxxxxxx                                               *
-*  Copyright (C) 2004 by Janek Kozicki                                   *
-*  cosurgi@xxxxxxxxxx                                                    *
-*  Copyright (C) 2007 by Bruno Chareyre		                         *
+*  Copyright (C) 2006 by Bruno Chareyre		                         *
 *  bruno.chareyre@xxxxxxxxxxx                                            *
+*  Copyright (C) 2006 by luc Scholtes                                    *
+*  luc.scholtes@xxxxxxxxxxx                                              *
 *                                                                        *
 *  This program is free software; it is licensed under the terms of the  *
 *  GNU General Public License v2 or later. See file LICENSE for details. *

Modified: trunk/pkg/dem/PreProcessor/TriaxialTestWater.hpp
===================================================================
--- trunk/pkg/dem/PreProcessor/TriaxialTestWater.hpp	2009-07-14 21:03:51 UTC (rev 1865)
+++ trunk/pkg/dem/PreProcessor/TriaxialTestWater.hpp	2009-07-14 23:42:58 UTC (rev 1866)
@@ -1,10 +1,8 @@
 /*************************************************************************
-*  Copyright (C) 2004 by Olivier Galizzi                                 *
-*  olivier.galizzi@xxxxxxx                                               *
-*  Copyright (C) 2004 by Janek Kozicki                                   *
-*  cosurgi@xxxxxxxxxx                                                    *
-*  Copyright (C) 2007 by Bruno Chareyre		                         *
+*  Copyright (C) 2006 by Bruno Chareyre		                         *
 *  bruno.chareyre@xxxxxxxxxxx                                            *
+*  Copyright (C) 2006 by luc Scholtes                                    *
+*  luc.scholtes@xxxxxxxxxxx                                              *
 *                                                                        *
 *  This program is free software; it is licensed under the terms of the  *
 *  GNU General Public License v2 or later. See file LICENSE for details. *

Modified: trunk/pkg/dem/SConscript
===================================================================
--- trunk/pkg/dem/SConscript	2009-07-14 21:03:51 UTC (rev 1865)
+++ trunk/pkg/dem/SConscript	2009-07-14 23:42:58 UTC (rev 1866)
@@ -849,35 +849,6 @@
 		['DataClass/InteractionPhysics/CapillaryParameters.cpp'],
 		LIBS=env['LIBS']+['ElasticContactInteraction']),
 
-#env.SharedLibrary('InteractingSphere2InteractingSphere4SpheresContactGeometryWater',
-		#['Engine/EngineUnit/InteractingSphere2InteractingSphere4SpheresContactGeometryWater.cpp'],
-		#LIBS=env['LIBS']+['SpheresContactGeometry',
-			#'InteractionGeometryMetaEngine',
-			#'InteractingSphere' ]),
-
-#env.SharedLibrary('InteractingBox2InteractingSphere4SpheresContactGeometryWater',
-		#['Engine/EngineUnit/InteractingBox2InteractingSphere4SpheresContactGeometryWater.cpp'],
-		#LIBS=env['LIBS']+['SpheresContactGeometry',
-			#'InteractionGeometryMetaEngine',
-			#'InteractingSphere',
-			#'InteractingBox' ]),
-
-#env.SharedLibrary('MacroMicroElasticRelationshipsWater',
-		#['Engine/EngineUnit/MacroMicroElasticRelationshipsWater.cpp'],
-		#LIBS=env['LIBS']+['SDECLinkPhysics',
-			#'SDECLinkGeometry',
-			#'ElasticContactInteraction',
-			#'SpheresContactGeometry',
-			#'BodyMacroParameters',
-			#'RigidBodyParameters',
-			#'ParticleParameters',
-			#'InteractionPhysicsMetaEngine',
-			#'CapillaryParameters']),
-
-#env.SharedLibrary('InteractingSphere2AABBwater',
-		#['Engine/EngineUnit/InteractingSphere2AABBwater.cpp'],
-		#LIBS=env['LIBS']+['InteractingSphere', 'AABB', 'BoundingVolumeMetaEngine']),
-		
 env.SharedLibrary('HydraulicForceEngine',
 		['Engine/DeusExMachina/HydraulicForceEngine.cpp'],
 		LIBS=env['LIBS']+['yade-base',   'ParticleParameters', 'CohesiveFrictionalBodyParameters', 'TriaxialCompressionEngine', 'GravityEngines'],