reference:

- EJS Static and Kinetic Friction on Incline Plane Model by Francisco Esquembre and lookang http://weelookang.blogspot.sg/2014/04/ejs-static-and-kinetic-friction-on.html
- Sliding Down an Incline Plane Model by Francisco Esquembre http://www.compadre.org/osp/items/detail.cfm?ID=9973

EJSS Static and Kinetic Friction on Incline Plane Model http://weelookang.blogspot.sg/2014/04/ejss-static-and-kinetic-friction-on.html https://dl.dropboxusercontent.com/u/44365627/lookangEJSworkspace/export/ejss_model_friction/friction_Simulation.htmlsource: https://dl.dropboxusercontent.com/u/44365627/lookangEJSworkspace/export/ejss_src_friction.zip author: Francisco Esquembre and recreated on EJSS by lookang |

EJSS Static and Kinetic Friction on Incline Plane Model http://weelookang.blogspot.sg/2014/04/ejss-static-and-kinetic-friction-on.html https://dl.dropboxusercontent.com/u/44365627/lookangEJSworkspace/export/ejss_model_friction/friction_Simulation.htmlsource: https://dl.dropboxusercontent.com/u/44365627/lookangEJSworkspace/export/ejss_src_friction.zip author: Francisco Esquembre and recreated on EJSS by lookang |

EJS Static and Kinetic Friction on Incline Plane Model http://weelookang.blogspot.sg/2014/04/ejs-static-and-kinetic-friction-on.html https://dl.dropboxusercontent.com/u/44365627/lookangEJSworkspace/export/ejs_model_SlidingDownAnInclinedPlanewee.jar author: Francisco Esquembre and remixed by lookang |

## Model description by Paco:

### Block sliding down an inclined plane

A stone block is lying on an inclined plane.Initially, the component of gravity along the plane surface, $ mg cos (\theta ) = F_{tangent} $ , is balanced by the force caused by static friction $ f_{static} $, which is proportional to the normal to the plane, $ N $ .

The model assume the mass of the block is m = 1 kg,

$ W = mg $

where $ W $ is the weight and $ g $ is the gravitational constant of 9.81 m/s^2

In equilibrium,

$ \sum F = 0 $

$ mg sin ( \theta ) - f_{static} = 0 $

$ mg cos ( \theta ) - N = 0 $

$ mg cos ( \theta ) - N = 0 $

In this model,

$ F_{tangent} = mg sin ( \theta ) $

$ F_{normal} = mg cos ( \theta ) $

However, the modulus of this force $ f_{static} $ cannot exceed a limit value of $ \mu | N| $ where $ \mu_{static} $ is the static friction coefficient between the block and the plane.

$ f_{static} \leq \mu_{static}N $ in the direction negative of the velocity vector.

In this model, when velocity = 0,

$ f_{static max} = \mu_{static}N $ and

$ f_{static } = -Math.min( mg sin( \theta ), f_{static max} ) $

since $ f_{static } $ cannot be greater than $ mg sin( \theta ) $ nor $ \mu_{static}N $

When the user increases the slope of the plane $ \theta $ by dragging slider of angle $ \theta $ , $ F_{tangent} $ ends up being larger than this limit and the block slides down the plane with kinetic friction present $ f_{kinetic} = \mu_{kinetic}N $ .

In this model, when velocity not equal to zero,

$ f_{kinetic} = - \mu_{kinetic}N $ .

The force caused by static friction is replaced by a (smaller) force of dynamic (or kinetic) friction $ f_{kinetic} $, given by $ \mu_{kinetic} |N| $ (where $ \mu_{kinetic} $ is the dynamic friction coefficient between the block and the plane, which is smaller then the static one, $ \mu_{static} $).

## Condition for hint:

if (velocity = 0 and and only and totalForce(t,x,v) = 0), hint statetext = " in equilibrium,..."else if (velocity = 0 and and only and totalForce(t,x,v) != 0) hint statetext = " NOT in equilibrium,..."

else if (velocity != 0) hintstatetext= " NOT in equilibrium and in motion..."

## Determine direction of motion and direction of friction

if (v===0){directionOfMotion=0;

}

else if (v<0){

directionOfMotion=-1;

}

else if (v>0){

directionOfMotion=+1;

}

## Custom function:

function totalForce(time,position,velocity) {

if (velocity!==0) return Ft+directionOfMotion*dynamicFriction; // in motion

return Math.max(0,staticFriction+Ft); // not in motion

}

## changes made:

- re-implemented on EJSS
- added a scaleforce to draw the forces to user's choice
- made the static and kinetic friction drawn from same vector as visible===true was buggy
- added more hints to make explicit in equilibrium and not in equilibrium when net force.
- made the color dynamic with change in static to kinetic
- added paco as co-author as the EJS codes came from the man :)