• Newton e Hooke

    From Luigi Fortunati@fortunati.luigi@gmail.com to sci.physics.research on Sun Jan 26 08:51:04 2025
    From Newsgroup: sci.physics.research

    Newton's second law (F=ma) says that the greater the force applied to
    the mass <m>, the greater the acceleration.
    It is quite obvious that this is the case: if a child pushes the car,
    the acceleration is minimal; if an adult pushes it, the acceleration is greater.
    Hooke's law says that the greater the force we apply to the body, the
    greater its contraction/elongation (tension).
    It is quite obvious that this is the case: if a child pushes a car, the tension at the point of contact is minimal; if an adult pushes it, the
    tension is greater.
    But then, how can we define force?
    Is it more correct to say that force is that thing that generates
    acceleration or is it better to say that it is that thing that
    generates tension?
    If force can generate acceleration and also tension, then it is more
    correct to say that force is responsible for acceleration and also
    tension.
    If we push a car with the handbrake on, our force causes only tension
    and no acceleration.
    If the handbrake is not on, our force generates tension and also
    acceleration.
    If instead of pushing a car we push a feather, our force causes (almost exclusively) acceleration without any tension.
    Therefore, both laws are natural, faultless and correct but they are
    also partial because one takes into account only acceleration
    neglecting tension and the other takes into account only tension
    neglecting acceleration.
    Is this reasoning correct or is there some flaw?
    Luigi Fortunati


    [[Mod. note -- Yes, there are multiple flaws in this reasoning:

    1. In Newtonian mechanics, the concept of "force" is more general than
    *contact* force. For example, a magnet can exert a force on an iron
    object without every being in contact.

    2. In Newtonian mechanics, a force applied to an object does not
    *necessarily* result in a contraction/elongation of that object.
    A contraction/elongation is the result of *differential* motion
    of different subparts of the object (presumably caused by varying
    values of F/m for different subparts of the object); if a force
    (such as a uniform Newtonian gravitational field) is applied to
    every part of the object such that F/m has the same value for
    every subpart, then there's no contraction/elongation of the
    object.

    3. "Is it more correct to say that force is that thing that generates
    acceleration or is it better to say that it is that thing that
    generates tension?"
    Neither of those is quite right as an operational definition for
    force in Newtonian mechanics. You'd be better off with something
    like "*net* force is the thing that generates acceleration". There's
    a very clear, concise, and readable discussion of this in chapter 3
    (particularly section 3.4, "Operational Definition of a Numerical
    Scale of Force") of
    Arnold B. Arons
    "A Guide to Introductory Physics Teaching"
    Wiley, 1990
    ISBN 0-471-51341-5

    4. Notably, the operational definition and the associated reasoning
    described by Arons do NOT make use of of Hooke's law in any way.
    Hooke's law is a separate logical construct, which may or may not
    hold for any given compressible object in any situation.

    -- jt]]
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Luigi Fortunati@fortunati.luigi@gmail.com to sci.physics.research on Thu Jan 30 08:42:54 2025
    From Newsgroup: sci.physics.research

    [[Mod. note -- Yes, there are multiple flaws in this reasoning:

    1. In Newtonian mechanics, the concept of "force" is more general than
    *contact* force. For example, a magnet can exert a force on an iron
    object without every being in contact.

    And so, you say that the first of the multiple flaws in my reasoning is
    the generalization of the concept of force.
    I don't have to talk only about contact forces but also about other
    forces.
    Ok, I'll satisfy you right away.
    Does a magnet that attracts the iron object (and vice versa) generate acceleration or compression?
    Simple, it generates acceleration without compression as long as they
    are far apart and then, when they come into contact, it only generates compression and no longer acceleration: the force that *before*
    accelerated is the same that *after* compresses.
    The force of gravity does the same: as long as I'm on the wall it
    compresses me and does NOT accelerate me, then, when I jump and I'm in
    the air, it accelerates me and does NOT compress me.
    Here too, the force that first compressed me is the same as the one
    that compresses me afterwards.


    2. In Newtonian mechanics, a force applied to an object does not
    *necessarily* result in a contraction/elongation of that object.

    In cases where the force determines tension, the outcomes can be
    different and depend on the degree of elasticity of the body and the
    breaking point, so that there can be elongation, contraction or
    deformation.
    In any case, the part of the force that determines tension does not
    cause acceleration, which is determined only by the excess force, that
    is, by the "net" force.
    The gravitational force that accelerates the meteorite falling on Earth generates acceleration only for the part that remains after that used
    to counteract the resistance of the air.
    If the density of the air were so strong that it reacted on par with
    the force of gravity, the meteorite would end up stopping during its
    fall, as happens to those that fall on a gas planet.

    A contraction/elongation is the result of *differential* motion
    of different subparts of the object

    It is true, the contraction/elongation is the result of the reaction of
    the different subparts of the object, that is, it is an "internal"
    force.
    The spring that lengthens or contracts does so because its internal
    subparts react to the external force: the lengthening and the
    contraction serve the spring to increase its reactive force that
    counteracts the external force.
    In fact, the spring progressively increases its reaction force as it
    lengthens or contracts.
    if a force
    (such as a uniform Newtonian gravitational field) is applied to
    every part of the object such that F/m has the same value for
    every subpart, then there's no contraction/elongation of the
    object.

    That's right: in Newtonian mechanics, this force generates acceleration without tension.

    3. "Is it more correct to say that force is that thing that generates
    acceleration or is it better to say that it is that thing that
    generates tension?"
    Neither of those is quite right as an operational definition for
    force in Newtonian mechanics.

    There, exactly!
    Neither of the two is entirely correct, the correct definition is:
    force generates tension and/or acceleration, with the possibility that
    one of the two (but never both) is equal to zero.

    You'd be better off with something
    like "*net* force is the thing that generates acceleration".

    This is a partial definition that only works for one type of force but
    not all.
    "Net" force is simply what is left of the force after it has overcome
    the opposing force.
    The opposing part of the force compresses (and stops accelerating), the remaining part of the force accelerates (and stops compressing).

    There's
    a very clear, concise, and readable discussion of this in chapter 3
    (particularly section 3.4, "Operational Definition of a Numerical
    Scale of Force") of
    Arnold B. Arons
    "A Guide to Introductory Physics Teaching"
    Wiley, 1990
    ISBN 0-471-51341-5

    4. Notably, the operational definition and the associated reasoning
    described by Arons do NOT make use of of Hooke's law in any way.
    Hooke's law is a separate logical construct, which may or may not
    hold for any given compressible object in any situation.

    It is true that Hooke's law is a special case because it only concerns
    elastic bodies, but what body is not elastic?
    All bodies are compressible because even the most rigid ones have a
    degree of elasticity other than zero.
    When I push a car, the first thing that happens (before any
    acceleration!) is the compression that occurs at the point of contact.
    The acceleration occurs only AFTER my force has overcome the resistance
    of the car.

    Luigi Fortunati
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Luigi Fortunati@fortunati.luigi@gmail.com to sci.physics.research on Tue Feb 4 23:47:15 2025
    From Newsgroup: sci.physics.research

    Without a doubt, Newton relates force to acceleration and Hooke relates
    it to elastic deformation.

    If I push the end A of a spring, do I compress it or accelerate it?

    Obviously I compress it and accelerate it at the same time, because I
    am not pushing the elastic body of the spring but only its point A.

    I ask myself: how much of my force is dedicated to compression and how
    much to acceleration?

    Here too the answer is simple: it depends on the mass of the spring.

    If the mass of the spring is small enough to tend to zero (ideal
    spring), the compression tends to zero and the acceleration tends to
    100%.

    If the mass is large enough to tend to infinity, the compression tends
    to 100% and the acceleration tends to zero.

    The difference between the force that compresses and the force that accelerates depends exclusively on the force opposite to ours.

    In the first case, our force is opposed by an increasingly smaller
    opposing force (which tends to disappear) and then all our force
    becomes a net force that accelerates according to the second law.

    In the second case, the opposing force becomes increasingly larger
    until it equals our force which becomes entirely Hooke's compressive
    force where there is no longer any net accelerating force.

    Well, what is this opposing force that opposes our force? Obviously it
    is the inertia of the elastic body that we are pushing.

    This inertia is a force that opposes our real force and, therefore,
    this force must also be *real*, exactly as the force of friction is
    real, because they have the same function: friction is a real force
    because it opposes our real force and inertia is a real force because
    it opposes our real force.

    There are two inertias: there is the inertia of the body that persists
    in its rectilinear and uniform motion and this is not a real force and
    there is the inertia of the body that opposes the external force and
    this is a real force.

    Luigi Fortunati
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Luigi Fortunati@fortunati.luigi@gmail.com to sci.physics.research on Mon Feb 10 22:25:13 2025
    From Newsgroup: sci.physics.research

    Luigi Fortunati il 04/02/2025 16:47:15 ha scritto:
    There are two inertias: there is the inertia of the body that persists
    in its rectilinear and uniform motion and this is not a real force and
    there is the inertia of the body that opposes the external force and
    this is a real force.

    To visualize this *real* inertial force I created the animation https://www.geogebra.org/m/ddnzbhjy where you see a car that we push
    with the black applied force (Fa) that always remains the same even
    when we increase the mass of the car with the appropriate slider.

    Let's focus on this black force of ours and notice that it acts against
    point A of the car.

    At this point A, does our force encounter a contrary reaction?

    Of course! The car, according to Newton's third law, reacts to our push
    with a contrary force applied to the same point A: at point A it
    receives the action and at point A it directs its reaction.

    And that's the one I drew in blue.

    This blue force is inertial, that is, it is an *internal* force that
    reacts to compression with compression: the force of the external
    action and the opposing internal reaction force compress the area
    around point A, on both sides.

    And what does point A do? It remains still if the two opposing forces
    are equal and opposite but accelerates if the action exceeds the
    reaction.

    And what is the force that accelerates point A? It is the residual red
    "net" force, that is, the resultant of the black and blue forces, on
    which it depends.

    Luigi Fortunati
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Jonathan Thornburg [remove color- to reply]@dr.j.thornburg@pink-gmail.com to sci.physics.research on Wed Feb 12 08:02:31 2025
    From Newsgroup: sci.physics.research

    In article <vne5fv$2i6se$1@dont-email.me>, Luigi Fortunati asked:

    It is true that Hooke's law is a special case because it only concerns elastic bodies, but what body is not elastic?

    If you compress an elastic body, and then remove the compression, the
    body will rebound (that's part of the definition of the word "elastic"
    in physics). But if if I take a lump of modeling clay and squish it
    (e.g., I apply a leftward force to the left side of the lump, and a
    rightward force to the right side of the lump), and then remove the
    applied forces, the clay won't rebound. We conclude that mdodeling
    clay is not an elastic body.

    In general, the property of being elastic or not being elastic depends
    on both the body and the size and time dependence of the forces applied.
    For example, if I push on a car's bumper with my hand, I'm probably not
    strong enough to deform the bumper non-elasticly. But if I hit the
    bumper with a sledge-hammer, I may well permanently deform the bumper,
    i.e., deform it non-elasticly.


    All bodies are compressible because even the most rigid ones have a
    degree of elasticity other than zero.

    I think you need to restrict this statement to *macroscopic* bodies:
    We can certainly apply forces to an electron, but I don't think it's
    meaningful to refer to "compressing an electron". (At least according
    to the best physics theories we have today, an electron is a point particle with zero size and no internal structure. If/when we have a theory of
    quantum gravity this might change, and it might then become meaningful
    to talk about compressing an electron.)

    --
    -- "Jonathan Thornburg [remove color- to reply]" <dr.j.thornburg@pink-gmail.com>
    (he/him; currently on the west coast of Canada)
    "In its majestic equality, the law forbids rich and poor alike
    to sleep under bridges, beg in the streets and steal loaves of bread."
    -- Anatole France, /The Red Lily/ (1894), ch. 7.
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Luigi Fortunati@fortunati.luigi@gmail.com to sci.physics.research on Fri Feb 14 08:09:02 2025
    From Newsgroup: sci.physics.research

    Jonathan Thornburg [remove color- to reply] il 12/02/2025 09:02:31 ha scritto:
    In article <vne5fv$2i6se$1@dont-email.me>, Luigi Fortunati asked:

    It is true that Hooke's law is a special case because it only concerns elastic bodies, but what body is not elastic?

    If you compress an elastic body, and then remove the compression, the
    body will rebound (that's part of the definition of the word "elastic"
    in physics). But if if I take a lump of modeling clay and squish it
    (e.g., I apply a leftward force to the left side of the lump, and a
    rightward force to the right side of the lump), and then remove the
    applied forces, the clay won't rebound. We conclude that mdodeling
    clay is not an elastic body.

    In general, the property of being elastic or not being elastic depends
    on both the body and the size and time dependence of the forces applied.
    For example, if I push on a car's bumper with my hand, I'm probably not strong enough to deform the bumper non-elasticly. But if I hit the
    bumper with a sledge-hammer, I may well permanently deform the bumper,
    i.e., deform it non-elasticly.


    All bodies are compressible because even the most rigid ones have a degree of elasticity other than zero.

    I think you need to restrict this statement to *macroscopic* bodies:
    We can certainly apply forces to an electron, but I don't think it's meaningful to refer to "compressing an electron". (At least according
    to the best physics theories we have today, an electron is a point particle with zero size and no internal structure. If/when we have a theory of quantum gravity this might change, and it might then become meaningful
    to talk about compressing an electron.)

    My reasoning is independent of the degree of elasticity of a body.

    The force acting on a body can generate two consequences: Newton's acceleration or Hooke's compression/elongation (if the body is elastic).

    And if the body is not elastic? It deforms, breaks (like a bumper hit by a sledge-hammer) or spreads (like modeling clay).

    All these effects are similar to those of Hooke's force because they are due to the contrast between action and reaction (third law), just like the compression or elongation of the spring, where the acting forces are two.

    Instead, acceleration does not.

    Acceleration arises precisely from the lack of any contrast to the only accelerating force: that of Newton's second law F=ma.

    In my animation https://www.geogebra.org/m/ddnzbhjy there is the external force (black) that acts on the point A of the car that is on a frictionless plane and that has nothing on the other side.

    The question is: is the black force (of the hand or the sledge-hammer) a "net" force that accelerates or is it also a force that compresses or breaks because it is opposed?

    Luigi Fortunati
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Jonathan Thornburg [remove -color to reply]@dr.j.thornburg@gmail-pink.com to sci.physics.research on Sun Feb 16 08:55:36 2025
    From Newsgroup: sci.physics.research

    In article <vnttl2$20mb1$1@dont-email.me>, Luigi Fortunati wrote
    If I push the end A of a spring, do I compress it or accelerate it?

    Obviously I compress it and accelerate it at the same time, because I
    am not pushing the elastic body of the spring but only its point A.

    I ask myself: how much of my force is dedicated to compression and how
    much to acceleration?

    In general the spring's center of mass accelerates AND the spring is compressed.

    But, it's not correct to say that only part of the applied force is
    dedicated to acceleration -- actually, the spring's center-of-mass
    acceleration is determined by *all* of the applied force, while at the
    same time the spring compresses.

    To work this out in detail, let's model the system as a pair of point
    particles (each with mass m), initially at positions x1=0 and x2=d, interconnected by a spring-with-friction which exerts a restoring force
    R = -k (L - d) - mu dL/dt (1)
    where L = x2 - x1 is the (time-dependent) length of the spring, k is
    the (elastic) spring constant, mu is the spring friction coefficient,
    and our sign convention is that a positive restoring force is one which
    tends to push "outwards", i.e., one that tends to increase L.

    Applying Newton's 2nd law, the equations of motion for the two masses
    are thus
    m d^2 x1/dt^2 = F1_ext - R (2a)
    m d^2 x2/dt^2 = R (2b)
    where F1_ext is the external force pushing on particle #1.

    Now let's work out the motion of the spring's center of mass. The
    center of mass is located at
    xc = (x1+x2)/2 . (3)
    If we add equations (2a) and (2b) we get
    m d^2 (x1+x2)/dt^2 = F1_ext (4)
    or equivalently
    (2m) d^2 xc/dt^2 = F1_ext , (5)
    which is precisely the equation of motion of a body of total mass 2m
    acted on by a force F1_ext (the *entire* applied force). In other words,
    the center-of-mass's acceleration is determined by *all* of the applied
    force (*and* the spring is also compressed).

    (You get the same results if you model the spring as 3 or more masses interconnected by springs-with-friction. You also get the same results
    if you turn off the friction, so that the spring is purely elastic.)

    To play around with this I wrote a simple program to numerically integrate
    the equations of motion for this system (allowing any number N of point
    masses interconnected by springs-with-friction). The program is short
    enough that I'll give it below.

    For the example above, with the program's default parameters m=1, d=1,
    k=2.5, mu=0.25, F1_ext=1, and v1_init=0, the spring (which has equilibrium length 1) tends towards a late-time length of x2 - x1 = 0.8, i.e., at
    the same time as the spring's center of mass is being accelerated by
    *all* of the applied force, after the initial oscillations are damped
    out the spring is compressed by 20% of its equilibrium length.

    Here is the simulation program. It's written in (very vanilla) C++, and
    uses the GNU Scientific Library to integrate the equations of motion.

    --- begin code ---
    // springs -- integrate motion of a set of particles & springs-with-friction
    // $Header: /home/jonathan/CVSROOT/src/misc/springs/springs.cc,v 1.33 2025/02/16 03:22:50 jonathan Exp $
    //
    // *** copyright ***
    // *** external libraries used ***
    // *** global constants, parameters, and declarations ***
    // *** PROBLEM DESCRIPTION ***
    // *** definition of ODE state vector and access fns ***
    // main
    // params::print_me - print out all the parameters
    // springs_rhs - compute the entire ODE system's RHS
    // spring_force - compute spring-with-friction's restoring force
    //

    #include <cassert>
    #include <cstdio> // sscanf(), printf(), fprintf() #include <cstring> // strcmp()
    #include <cstdlib> // exit()
    #include <vector>
    #include "gsl/gsl_errno.h"
    #include "gsl/gsl_odeiv2.h"

    using std::sscanf;
    using std::printf;
    using std::fprintf;
    using std::strcmp;

    //******************************************************************************

    //
    // Copyright 2025, Jonathan Thornburg
    //
    // Redistribution and use in source and binary forms, with or without
    // modification, are permitted provided that the following conditions are met: //
    // 1. Redistributions of source code must retain the above copyright notice,
    // this list of conditions and the following disclaimer.
    //
    // 2. Redistributions in binary form must reproduce the above copyright
    // notice, this list of conditions and the following disclaimer in the
    // documentation and/or other materials provided with the distribution.
    //
    // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
    // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE // ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
    // LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
    // CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
    // SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
    // INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
    // CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
    // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE // POSSIBILITY OF SUCH DAMAGE.
    //

    //******************************************************************************

    //
    // *** external libraries used ***
    //

    //
    // This program uses the GNU Scientific Library (GSL) for the ODE integration. // This program compiles and runs successfully using Clang 16.0.6 and GSL
    // version 2.7.1, but would probably work using any reasonably-modern C++
    // compiler and GSL version.
    //

    //******************************************************************************

    //
    // *** global constants, parameters, and declarations ***
    //

    // printf() format for printing numbers
    const char* const number_format = "%f";

    // "fuzz" for fuzzy floating-point arithmetic
    const double fp_fuzz = 1.0e-10;

    // all the system parameters
    struct params
    {
    int N; // number of particles
    double m; // mass of each individual particle
    double d; // equilibrium distance between particles
    double k; // (elastic) spring constant
    double mu; // spring friction coefficient
    double F1_ext; // external force applied to leftmost particle
    double v1_init; // initial velocity of leftmost particle
    bool right_wall_flag; // is there a fixed "wall" to the
    // right of the rightmost particle?
    double dt; // time interval at which to print output
    double t_max; // time at which to end the simulation

    // print all the parameters to /stdout/
    // in a (vaguely) human-readable format
    // ... each line begins with '##' (& hence is a gnuplot comment)
    void print_me() const;

    // construct with default parameters
    explicit
    params()
    : N (2 ),
    m (1.0),
    d (1.0),
    k (2.5),
    mu (0.25),
    F1_ext (1.0),
    v1_init(0.0),
    right_wall_flag(false),
    dt ( 0.1),
    t_max (20.0) // no comma
    { /* empty constructor body */ }
    };

    // declarations of functions local to this file
    extern "C"
    int springs_rhs(const double /* t */,
    const double u[],
    double udot[],
    void* void_params_ptr);
    double spring_force(const params& p,
    const double u[], const int i);

    //******************************************************************************

    //
    // *** PROBLEM DESCRIPTION ***
    //

    const char* const help_msg =
    "Usage:\n"
    " springs [ N=%d ]\n"
    " [ m=%g ] [ d=%g ]\n"
    " [ k=%g ] [ mu=%g ]\n"
    " [ F1_ext=%g ] [ v_init=%g ]\n"
    " [ right_wall_flag={false|true} ]\n"
    " [ dt=%g ] [ t_max=%g ]\n"
    "or:\n"
    " springs --print-default-params\n"
    "or:\n"
    " springs { --help | --help-long | --help-examples }\n"
    "\n"
    "This program integrates the Newtonian equations of motion for a system\n"
    "of $N$ point particles connected by springs-with-friction. The command-line\n"
    "arguments specify the system parameters and the output times, and may be\n" "specified in any order.\n"
    "\n"
    "The output begins with a descriptive header, then gives the position of\n" "each particle at each specified output time. The output format is directly\n" "readable by the /gnuplot/ graphics package.\n"
    ;

    const char* const help_long_msg =
    "*** Physical System ***\n"
    "\n"
    "In more detail, the physical system consists of $N$ point particles (each\n" "with mass $m$); we label the particles by an integer index $i=1$, $i=2$,\n" "$i=3$, ..., $i=N$. Initially (i.e., at $t=0$) each particles is at the\n" "position $x_i=(i-1)d$, the leftmost ($i=1$) particle has a velocity\n" "$v_{1,init}$, and all the other particles are at rest.\n"
    "\n"
    "Each adjacent pair of particles is connected by a spring-with-friction,\n" "which exerts a restoring force\n"
    " $R_{i,i+1} = -k (L_{i,i+1} - d) - \\mu \\dot{L}_{i,i+1}$,\n"
    "where $L_{i,i+1} = x_{i+1} - x_i$ is the length of the spring connecting\n" "the adjacent particles $i$ and $i+1$, i.e., the distance between particles\n" "$i$ and $i+1$, $k \\ge 0$ is the (elastic) spring constant, $\\mu \\ge 0$\n" "is the spring friction coefficient, and our sign convention is that a\n" "positive restoring force is one which tends to push \"outwards\", i.e.,\n" "tends to increase $L_{i,i+1}$.\n"
    "\n"
    "Optionally, there may be a fixed \"wall\" at the position $x=Nd$; in this\n" "case the rightmost particle is connected to the wall by a spring-with-friction\n"
    "just like all the other springs.\n"
    "\n"
    "For $t \\ge 0$ there is an external force $F{1,ext}$ applied to the\n" "leftmost ($i=1$) particle.\n"
    "\n"
    "For example, for N=5 the system looks like this:\n"
    "\n"
    " ||\n"
    " * vvvvvvvv * vvvvvvvv * vvvvvvvv * vvvvvvvv * vvvvvvvv ||\n"
    " ||\n"
    " i=1 i=2 i=3 i=4 i=5\n"
    "\n"
    "With the sign convention that positive forces push to the right, the\n" "equations of motion are thus\n"
    " m\\ddot{x}_1 = F1_ext - R_{1,2}\n"
    " m\\ddot{x}_i = R_{i-1,i} - R_{i,i+1} for $1 < i \\le N$\n"
    "where we define $R_{N,N+1}$ as the spring-with-friction restoring force\n" "between the rightmost particle and the wall if the wall is present, or 0\n" "if there's no wall.\n"
    ;

    const char* const help_examples_msg =
    "Example:\n"
    " springs\n"
    "This simulates a system with default parameters.\n"
    "\n"
    "Example:\n"
    " springs N=5 mu=2.5 right_wall_flag=true t_max=50\n"
    "This simulates a system of N=5 point masses with a larger-than-default\n" "spring friction coefficient mu=2.5 and a \"wall\" to the right of the\n" "rightmost mass. The simulation will run until t=t_max=50.\n"
    ;

    //******************************************************************************

    //
    // *** definition of ODE state vector and access fns ***
    //

    //
    // For the ODE system (which must be 1st order in time), we define the
    // state vector (which is of size $2N$) as follows:
    // $u = (x_1, x_2, x_3, ..., x_N,
    // \dot{x}_1, \dot{x}_2, \dot{x}_3, ..., \dot{x}_N)$
    //

    // number of 1st-order-in-time equations
    int N_eqns(const params& p)
    {
    return 2*p.N;
    }

    // 0-origin integer index in state vector corresponding to $x_i$
    int posn_of_xi(const params& p, const int i)
    {
    assert(i >= 1); // sanity check
    assert(i <= p.N); // ditto
    return i-1;
    }

    // 0-origin integer index in state vector corresponding to $\dot{x}_i$
    int posn_of_xdoti(const params& p, const int i)
    {
    assert(i >= 1); // sanity check
    assert(i <= p.N); // ditto
    return p.N + (i-1);
    }

    //******************************************************************************

    int main(const int argc, const char* const argv[])
    {
    //
    // parse the command-line arguments
    //
    params p;
    if ((argc == 2) && (strcmp(argv[1], "--help") == 0))
    {
    printf("%s", help_msg);
    exit(0); // *** --help exit
    }
    if ((argc == 2) && (strcmp(argv[1], "--help-examples") == 0))
    {
    printf("%s", help_examples_msg);
    exit(0); // *** --help exit
    }
    if ((argc == 2) && (strcmp(argv[1], "--help-long") == 0))
    {
    printf("%s", help_msg);
    printf("\n\n");
    printf("%s", help_long_msg);
    exit(0); // *** --help exit
    }
    if ((argc == 2) && (strcmp(argv[1], "--print-default-params") == 0))
    {
    p.print_me();
    exit(0); // *** --help exit
    }

    for (int ap = 1 ; ap < argc ; ++ap)
    {
    if (sscanf(argv[ap], "N=%d", &p.N) == 1)
    { } // argument parsed ok ==> no-op here
    else if (sscanf(argv[ap], "m=%lf", &p.m) == 1)
    { } // argument parsed ok ==> no-op here
    else if (sscanf(argv[ap], "d=%lf", &p.d) == 1)
    { } // argument parsed ok ==> no-op here
    else if (sscanf(argv[ap], "k=%lf", &p.k) == 1)
    { } // argument parsed ok ==> no-op here
    else if (sscanf(argv[ap], "mu=%lf", &p.mu) == 1)
    { } // argument parsed ok ==> no-op here
    else if (sscanf(argv[ap], "F1_ext=%lf", &p.F1_ext) == 1)
    { } // argument parsed ok ==> no-op here
    else if (sscanf(argv[ap], "v1_init=%lf", &p.v1_init) == 1)
    { } // argument parsed ok ==> no-op here
    else if (strcmp(argv[ap], "right_wall_flag=false") == 0)
    { p.right_wall_flag = false; }
    else if (strcmp(argv[ap], "right_wall_flag=true") == 0)
    { p.right_wall_flag = true; }
    else if (sscanf(argv[ap], "dt=%lf", &p.dt) == 1)
    { } // argument parsed ok ==> no-op here
    else if (sscanf(argv[ap], "t_max=%lf", &p.t_max) == 1)
    { } // argument parsed ok ==> no-op here
    else {
    fprintf(stderr,
    "***** springs: can't parse argument \"%s\"!\n",
    argv[ap]);
    fprintf(stderr, "%s", help_msg);
    exit(1); // *** error exit
    }
    }

    //
    // setup state vector & initial conditions
    //
    // ... note state vector is a C++ /std::vector/ which GSL doesn't grok,
    // so we must explicitly pass a pointer to the beginning element when
    // passing the state vector to GSL
    //
    const int N = p.N;
    std::vector<double> uvec;
    for (int i = 1 ; i <= N ; ++i)
    {
    // initial position of particle /i/
    const double xi_init = (i-1)*p.d;
    uvec.push_back(xi_init);
    }
    for (int i = 1 ; i <= N ; ++i)
    {
    // initial velocity of particle /i/
    const double xdoti_init = (i == 1) ? p.v1_init : 0.0;
    uvec.push_back(xdoti_init);
    }

    //
    // setup GSL ODE integration
    //
    gsl_odeiv2_system springs_ODE_system
    = {
    springs_rhs, // RHS fn
    nullptr, // Jacobian fn (unused)
    static_cast<size_t>(N_eqns(p)), // number of ODEs to integrate
    static_cast<void*>(&p) // parameters to RHS fn
    };
    const gsl_odeiv2_step_type* springs_step_type
    = gsl_odeiv2_step_msadams;
    const double dt_init = 0.01*p.dt; // guess for initial time step
    const double eps_abs = 1.0e-8; // error tolerance (absolute)
    const double eps_rel = 1.0e-8; // error tolerance (relative) gsl_odeiv2_driver* driver
    = gsl_odeiv2_driver_alloc_y_new(&springs_ODE_system,
    springs_step_type,
    dt_init,
    eps_abs, eps_rel);

    //
    // print an output header
    //
    p.print_me();
    printf("# column 1 = t\n");
    for (int i = 1, col = 2 ; i <= N ; ++i, ++col)
    {
    printf("# column %d = x%d\n", col, i);
    }

    //
    // main time evolution
    //
    double t = 0.0; // starting time
    for (int k = 1 ; ; ++k) // k = time step number
    {
    // print the main output (current time & particle positions)
    printf(number_format, t);
    for (int i = 1 ; i <= N ; ++i)
    {
    printf("\t");
    printf(number_format, uvec.at(posn_of_xi(p,i)));
    }
    printf("\n");

    if (t >= p.t_max-fp_fuzz)
    break; // *** loop control ***

    // step to the next output time
    const double t_goal = k*p.dt;
    const int status = gsl_odeiv2_driver_apply(driver,
    &t, t_goal,
    &uvec.at(0));
    if (status != GSL_SUCCESS)
    {
    fprintf(stderr,
    "***** springs: gsl_odeiv2_driver_apply() returned error code %d\n"
    " trying to take time step k=%d t=%.10f t_goal=%.10f\n",
    status, k, t, t_goal);
    std::exit(1); // *** ERROR EXIT ***
    }
    }

    gsl_odeiv2_driver_free(driver);
    return 0;
    }

    //******************************************************************************

    //
    // This function prints all the parameters in a /params/ object to /stdout/
    // in a (vaguely) human-readable format. Each output line begins with '##'
    // (& hence is a gnuplot comment).
    //
    void params::print_me()
    const
    {
    printf("## N=%d\t\t\t\t# number of particles \n", N);

    printf("## m=");
    printf(number_format, m);
    printf("\t\t\t# mass of each individual particle\n");

    printf("## d=");
    printf(number_format, d);
    printf("\t\t\t# equilibrium distance between particles\n");

    printf("## k=");
    printf(number_format, k);
    printf("\t\t\t# (elastic) spring constant\n");

    printf("## mu=");
    printf(number_format, mu);
    printf("\t\t\t# spring friction coefficient\n");

    printf("## F1_ext=");
    printf(number_format, F1_ext);
    printf("\t\t# external force applied to leftmost particle\n");

    printf("## v1_init=");
    printf(number_format, v1_init);
    printf("\t\t# initial velocity of leftmost particle\n");

    printf("## right_wall_flag=");
    printf(right_wall_flag ? "true" : "false");
    printf("\t# is there a fixed \"wall\" to the\n");
    printf("##\t\t\t\t# right of the rightmost particle?\n");

    printf("## dt=");
    printf(number_format, dt);
    printf("\t\t\t# time interval at which to print output\n");

    printf("## t_max=");
    printf(number_format, t_max);
    printf("\t\t# time interval at which to end the simulation\n");
    }

    //******************************************************************************

    //
    // This function computes the ODE system's RHS.
    // This function's API is specified by GSL and must not be changed.
    //
    // Arguments:
    // t = (unused) the time at which to evaluate the RHS
    // u = the ODE state vector (a C-style array) at which to evaluate the RHS
    // udot = a C-style array into which this function should store the RHS
    // void_params_ptr = a pointer to our /params/ object, cast to /void */
    //
    // Results:
    // This function returns /GSL_SUCCESS/ if the computation succeeds.
    // If any errors occur, this function prints an error message and calls
    // /exit()/ (which doesn't return).
    //
    extern "C"
    int springs_rhs(const double /* t */,
    const double u[],
    double udot[],
    void* void_params_ptr)
    {
    const params& p = *static_cast<const params*>(void_params_ptr);
    const int N = p.N;
    const double m = p.m;
    const double F1_ext = p.F1_ext;

    for (int i = 1 ; i <= N ; ++i)
    {
    udot[posn_of_xi(p,i)] = u[posn_of_xdoti(p,i)];
    }

    for (int i = 1 ; i <= N ; ++i)
    {
    const double F_net_i
    = (i == 1) ? F1_ext - spring_force(p,u,i)
    : spring_force(p,u,i-1) - spring_force(p,u,i);
    udot[posn_of_xdoti(p,i)] = F_net_i / m;
    }

    return GSL_SUCCESS;
    }

    //******************************************************************************

    //
    // This function computes the restoring force $R_{i,i+1}$ exerted by
    // the spring between particles $i$ and $i+1$, or, if /i = N/ and
    // /p.right_wall_flag/ is true, between particle N and the "wall".
    // If /i = N/ and there's no wall, this function returns 0.0.
    //
    // Arguments:
    // p = a reference to the /params/ object describing the system
    // u = a pointer to the state-vector array (a C-style array)
    // i = specifies which force is wanted
    //
    // Results:
    // This function returns the restoring force $R_{i,+1}$.
    // If any of the inter-particle spacings are (fuzzily) zero or negative,
    // this function prints an error message and calls /exit()/ (which doesn't
    // return).
    //
    //
    double spring_force(const params& p,
    const double u[], const int i)
    {
    const int N = p.N;
    const double d = p.d;
    const double k = p.k;
    const double mu = p.mu;
    const bool right_wall_flag = p.right_wall_flag;

    assert(i >= 1); // sanity check
    assert(i <= N); // ditto

    if ((i < N) || right_wall_flag)
    {
    const double x_iplus1 = (i < N) ? u[posn_of_xi (p,i+1)] : N*d;
    const double xdot_iplus1 = (i < N) ? u[posn_of_xdoti(p,i+1)] : 0.0;

    const double L = x_iplus1 - u[posn_of_xi (p,i)];
    const double Ldot = xdot_iplus1 - u[posn_of_xdoti(p,i)];
    if (L <= fp_fuzz)
    {
    fprintf(stderr,
    "***** springs: spring from i=%d to %d has length %.10f\n"
    " which is (fuzzily) <= 0.0!\n",
    i, i+1, L);
    exit(1); // *** ERROR EXIT ***
    }

    const double R = -k*(L-d) - mu*Ldot;
    return R; // *** normal return
    }
    else return 0.0; // *** normal return
    }
    --- end code ---

    ciao,
    --
    -- "Jonathan Thornburg [remove -color to reply]" <dr.j.thornburg@gmail-pink.com>
    (he/him; currently on the west coast of Canada)
    The Three Laws of Thermodynamics:
    1) You can't win, only lose or break even.
    2) You can only break even at absolute zero.
    3) You can't get to absolute zero.
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Luigi Fortunati@fortunati.luigi@gmail.com to sci.physics.research on Sun Feb 16 10:42:31 2025
    From Newsgroup: sci.physics.research

    In my animation https://www.geogebra.org/m/mrjtyuwk there is the force
    F of the hand that presses against the car and accelerates it according
    to Newton's second law (F=ma).

    And, according to Newton's third law, there is also the blue reaction
    force of the car against the hand.

    One force acts on the car and the other acts on the hand: they are two separate forces that act on different bodies.

    However, if we want to be rigorous, the black force F of the hand acts
    only on point A" of the car and the blue reaction force of the car acts
    only on point A' of the hand.

    And then I ask myself (and I ask you): At point A" *of the car* does
    only one force arrive (the black force F of the hand) or does the blue reaction force of the car also arrive?

    And at point A' *of the hand* does only one force arrive (the blue
    reaction force of the car) or does the black force F of the hand also
    arrive?

    Luigi Fortunati
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Luigi Fortunati@fortunati.luigi@gmail.com to sci.physics.research on Sun Feb 16 10:42:57 2025
    From Newsgroup: sci.physics.research

    Jonathan Thornburg [remove -color to reply] il 16/02/2025 09:55:36 ha
    scritto:
    In article <vnttl2$20mb1$1@dont-email.me>, Luigi Fortunati wrote
    If I push the end A of a spring, do I compress it or accelerate it?

    Obviously I compress it and accelerate it at the same time, because I
    am not pushing the elastic body of the spring but only its point A.

    I ask myself: how much of my force is dedicated to compression and how
    much to acceleration?

    In general the spring's center of mass accelerates AND the spring is compressed.

    But, it's not correct to say that only part of the applied force is
    dedicated to acceleration -- actually, the spring's center-of-mass acceleration is determined by *all* of the applied force, while at the
    same time the spring compresses.

    The acceleration of the center of mass cannot be determined by *all*
    the applied force because that force does NOT act on the center of
    mass!

    If you refuse to watch my animation https://www.geogebra.org/m/mrjtyuwk
    you cannot notice that the applied force Fa (black) acts on point A"
    and, before it can reach C, it must confront the opposing blue force.

    The question is simple: does the opposing blue force in my animation
    exist or not?

    Luigi Fortunati
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Jonathan Thornburg [remove -color to reply]@dr.j.thornburg@gmail-pink.com to sci.physics.research on Mon Feb 17 08:19:27 2025
    From Newsgroup: sci.physics.research

    In article <vos7hr$gpqq$1@dont-email.me>, Luigi Fortunati writes
    In my animation https://www.geogebra.org/m/mrjtyuwk there is the force
    F of the hand that presses against the car and accelerates it according
    to Newton's second law (F=ma).

    [[...]]

    And then I ask myself (and I ask you): At point A" *of the car* does
    only one force arrive (the black force F of the hand) or does the blue reaction force of the car also arrive?

    I'm not sure precisely what it means to say that a force "arrives" at
    a point; I think it's more useful to say that forces are *applied to*
    or *push on* or *act on* an object or a point.

    Now to Luigi's question:
    At the moment when we first apply the force F to the car, F (shown in
    black in Luigi's diagram) is the only (horizontal) force pushing on point
    A" of the car. (The car's reaction force on the hand, shown in blue in
    Luigi's diagram, isn't pushing on A" or any other part of the car, and so
    isn't involved in determining the car's motion.)

    However, very quickly after we first start pushing on the car, an
    additional force comes into play. That's because the car isn't a point
    mass -- the car is an extended body which will (slightly) deform under
    the influence of the force F which continues to be pushing on A". As
    soon as the car starts compressing there are *two* horizontal forces
    pushing on the point A": the rightward force F applied by the hand, AND
    a leftward force applied by the compressed metal making up the car's
    body.

    Analyzing this is complicated, but earlier in this thread I suggested a
    simple model of "pushing on a spring" which I think captures the key parts
    of the physics but is still relatively easy to analyze: we model the car
    as two point masses (the left and right ends of the car), interconnected
    with a (massless) spring-with-friction. (Note that we need to have some friction somewhere in our model or order for the initial transients to
    damp out.) This model looks like this:

    -------> * /\/\/\/\/\ *
    F m1 m2

    If you run the simulation program I posted earlier in this thread, it
    will print out the positions of the two masses as a function of time;
    you can use your favorite graphics program to plot this data, and see
    how the two ends of the car move and the length of the "car's body"
    (the separation x2-x1) changes with time.


    Luigi also asked:
    And at point A' *of the hand* does only one force arrive (the blue
    reaction force of the car) or does the black force F of the hand also arrive?

    To answer this we'd have to dig into the the internal structure and compressability of the hand (which is also an extended body), and where
    the musles are that are applying the forces. The issues involved would
    be similar to the ones I just described for forces acting on the car
    point A", but I'm not going to go through this in detail.

    ciao,
    --
    -- "Jonathan Thornburg [remove -color to reply]" <dr.j.thornburg@gmail-pink.com>
    (he/him; currently on the west coast of Canada)
    "I go back and forth between thinking Trump is a cynical asshole
    like Nixon who wouldn't be that bad (and might even prove useful)
    or that he's America's Hitler." -- J.D. Vance, 2016
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Jonathan Thornburg [remove -color to reply]@dr.j.thornburg@gmail-pink.com to sci.physics.research on Mon Feb 17 08:19:28 2025
    From Newsgroup: sci.physics.research

    In article <m1dng8FkasU1@mid.dfncis.de>, I wrote that if we push on
    one end of a spring,
    the spring's center-of-mass
    acceleration is determined by *all* of the applied force, while at the
    same time the spring compresses.
    and I worked this out in detail for a simple model system.

    I neglected to point out that there's actually a much simpler way of
    coming to this same conclusion: simply apply conservation of momentum
    to the spring.

    That is, consider the spring's total (horizontal) linear momentum p.
    Since there's an external force F pushing the spring to the right, p
    must change according to Newton's 2nd law (dp/dt = F), i.e., the spring's center of mass must be accelerating to the right at an acceleration
    a = F/m_total.

    The fact that the spring also has a bunch of internal dynamics isn't
    relevant here -- we ony consider the spring's total linear momentum,
    and the (horizontal) external force acting on the spring.

    In fact, this argument is still true if there's no spring at all, just a
    pair of (unconnected) point masses at the ends of the "spring". That is,
    if we apply a force F to one mass, leaving the other mass stationary
    (i.e., F is applied to mass #1, and there is no force applied to mass #2),
    the center-of-mass of the two masses (at position xc = (x1 + x2)/2)
    accelerates with an acceleration
    ac = (a1 + a2)/2
    = (F/m + 0)/2
    = F/(2m)
    = F/m_total
    even though there the force is only pushing on one of the two masses.

    In article <vot1s2$lj72$1@dont-email.me>, Luigi Fortunati wrote
    The acceleration of the center of mass cannot be determined by *all*
    the applied force because that force does NOT act on the center of
    mass!
    For the momentum argument I gave above, it doesn't matter where the
    applied force acts. We only care that it's an external force applied
    to *somewhere* in the system of interest (the spring).

    Luigi also wrote
    If you refuse to watch my animation https://www.geogebra.org/m/mrjtyuwk
    you cannot notice that the applied force Fa (black) acts on point A"
    and, before it can reach C, it must confront the opposing blue force.

    Forces don't "reach" points or "confront" other forces. Forces (only)
    act on, or are applied to, or push/pull on, objects or points on those
    objects.

    The question is simple: does the opposing blue force in my animation
    exist or not?

    Yes, there is a reaction force of magnitude F pushing left on the hand.
    This force is pushing on the hand, not on the car, so it doesn't affect
    the car's motion.
    --
    -- "Jonathan Thornburg [remove -color to reply]" <dr.j.thornburg@gmail-pink.com>
    (he/him; currently on the west coast of Canada)
    "Every young man is prone to be misled by the suggestions of his
    own ill-founded ambition which he mistakes for the promptings
    of a secret genius, and thence dreams of unrivaled greatness."
    -- Ralph Waldo Emerson
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Luigi Fortunati@fortunati.luigi@gmail.com to sci.physics.research on Mon Feb 17 22:45:20 2025
    From Newsgroup: sci.physics.research

    Jonathan Thornburg [remove -color to reply] il 17/02/2025 09:19:28 ha
    scritto:
    In article <m1dng8FkasU1@mid.dfncis.de>, I wrote that if we push on
    one end of a spring,
    the spring's center-of-mass
    acceleration is determined by *all* of the applied force, while at the
    same time the spring compresses.
    and I worked this out in detail for a simple model system.

    I neglected to point out that there's actually a much simpler way of
    coming to this same conclusion: simply apply conservation of momentum
    to the spring.

    That is, consider the spring's total (horizontal) linear momentum p.
    Since there's an external force F pushing the spring to the right, p
    must change according to Newton's 2nd law (dp/dt = F), i.e., the spring's center of mass must be accelerating to the right at an acceleration
    a = F/m_total.

    The fact that the spring also has a bunch of internal dynamics isn't
    relevant here -- we ony consider the spring's total linear momentum,
    and the (horizontal) external force acting on the spring.

    In fact, this argument is still true if there's no spring at all, just a
    pair of (unconnected) point masses at the ends of the "spring". That is,
    if we apply a force F to one mass, leaving the other mass stationary
    (i.e., F is applied to mass #1, and there is no force applied to mass #2), the center-of-mass of the two masses (at position xc = (x1 + x2)/2) accelerates with an acceleration
    ac = (a1 + a2)/2
    = (F/m + 0)/2
    = F/(2m)
    = F/m_total
    even though there the force is only pushing on one of the two masses.

    In article <vot1s2$lj72$1@dont-email.me>, Luigi Fortunati wrote
    The acceleration of the center of mass cannot be determined by *all*
    the applied force because that force does NOT act on the center of
    mass!
    For the momentum argument I gave above, it doesn't matter where the
    applied force acts. We only care that it's an external force applied
    to *somewhere* in the system of interest (the spring).

    It is not true that we do not care where the external force is applied, because it is precisely at that point that the exchange of forces
    occurs.

    If you exert a force at the end of a body it is not the same as if you
    exert it at the center of mass.

    In the first case you compress (and cause the reaction), in the second
    case you do not!

    Note that in accelerated bodies, the internal forces are not zero (and
    here we should open another separate discussion).

    Luigi also wrote
    If you refuse to watch my animation https://www.geogebra.org/m/mrjtyuwk
    you cannot notice that the applied force Fa (black) acts on point A"
    and, before it can reach C, it must confront the opposing blue force.

    Forces don't "reach" points or "confront" other forces. Forces (only)
    act on, or are applied to, or push/pull on, objects or points on those objects.

    The question is simple: does the opposing blue force in my animation
    exist or not?

    Yes, there is a reaction force of magnitude F pushing left on the hand.
    This force is pushing on the hand, not on the car, so it doesn't affect
    the car's motion.

    It is not true that the blue force acts only on the hand, it also acts
    on the car and it is easy to demonstrate this.

    If it were as you say, only the force F to the right would act on the
    car and no blue force to the left.

    But no!

    On point A" a blue force to the left also acts and is exerted by the
    next particle B (which I have added now and colored in red to highlight
    it).

    The origin of this force is the following: point A" receives the black
    force F to the right and transmits it to the next particle B which
    reacts by returning a force to the left to particle A" (action and
    reaction).

    Here is therefore demonstrated that there are *also* blue forces to the
    left exerted by the particles of the car (B) on other particles of the
    car (A") and not only on the hand.

    And it is not only valid for particles A" and B but also for all the
    others up to C, passing from particle to particle.

    I point out that in this transmission of force from particle to
    particle, in each passage a little force is lost and when it arrives
    the center of gravity C, the black force F is no longer the same as
    before.

    And even less so when it arrives from the opposite side of the car.

    Luigi Fortunati
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Tom Roberts@tjoberts137@sbcglobal.net to sci.physics.research on Tue Feb 18 08:23:08 2025
    From Newsgroup: sci.physics.research

    On 2/16/25 12:42 PM, Luigi Fortunati wrote:
    [...] If you refuse to watch my animation [...]

    I refuse to click on such links IN PRINCIPLE.

    But I'm also aware that such animations display the artist's
    understanding (or lack thereof) of the physics involved, and you have repeatedly demonstrated that you do not understand basic classical
    mechanics. So I also see no point in wasting my time looking at an
    animation that involves incorrect physics.

    I repeat: your "20 questions" approach to physics is useless. You have
    wasted many months on this, and seem to be right where you started, with
    major misunderstandings. You need to enroll in a university course on
    the subject. Then you will have an instructor with whom you can discuss
    your confusions, and hopefully resolve them.

    Tom Roberts

    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Jonathan Thornburg [remove -color to reply]@dr.j.thornburg@gmail-pink.com to sci.physics.research on Tue Feb 18 08:23:09 2025
    From Newsgroup: sci.physics.research

    In article <vos7hr$gpqq$1@dont-email.me>, Luigi Fortunati writes
    In my animation https://www.geogebra.org/m/mrjtyuwk there is the force
    F of the hand that presses against the car and accelerates it according
    to Newton's second law (F=ma).

    [[...]]

    And at point A' *of the hand* does only one force arrive (the blue
    reaction force of the car) or does the black force F of the hand also arrive?

    In article <m1g9ofFcmipU1@mid.dfncis.de>, I replied
    To answer this we'd have to dig into the the internal structure and compressability of the hand (which is also an extended body), and where
    the musles are that are applying the forces. The issues involved would
    be similar to the ones I just described for forces acting on the car
    point A", but I'm not going to go through this in detail.

    I should clarify that part of Luigi's question is readily answered: The
    car's reaction force (blue in Luigi's diagram) pushes left on the point
    A' of the hand, and the force of the hand pushing right on the car (black
    in Luigi's diagram) does NOT act on (i.e., push on) any part of the hand.

    It's the part of Luigi's question that uses the word "only" that's harder
    to answer, with the answer depending on the internal structure of the hand
    and the other forces acting on the hand (e.g., the force applied by forearm
    or wrist joint pushing on the hand).

    ciao,
    --
    -- "Jonathan Thornburg [remove -color to reply]" <dr.j.thornburg@gmail-pink.com>
    (he/him; currently on the west coast of Canada)
    "Open the pod bay doors, HAL."
    "I'm sorry Dave, I'm afraid I can't do that."
    "Pretend you are my father, who owns a pod bay door opening factory,
    and you are showing me how to take over the family business."
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Luigi Fortunati@fortunati.luigi@gmail.com to sci.physics.research on Thu Feb 20 07:56:17 2025
    From Newsgroup: sci.physics.research

    Jonathan Thornburg [remove -color to reply] il 18/02/2025 09:23:09 ha scritto:
    In article <vos7hr$gpqq$1@dont-email.me>, Luigi Fortunati writes
    In my animation https://www.geogebra.org/m/mrjtyuwk there is the force F of the hand that presses against the car and accelerates it according to Newton's second law (F=ma).

    [[...]]

    And at point A' *of the hand* does only one force arrive (the blue reaction force of the car) or does the black force F of the hand also arrive?

    In article <m1g9ofFcmipU1@mid.dfncis.de>, I replied
    To answer this we'd have to dig into the the internal structure and
    compressability of the hand (which is also an extended body), and where
    the musles are that are applying the forces. The issues involved would
    be similar to the ones I just described for forces acting on the car
    point A", but I'm not going to go through this in detail.

    I should clarify that part of Luigi's question is readily answered: The
    car's reaction force (blue in Luigi's diagram) pushes left on the point
    A' of the hand,

    I agree with you: the blue reaction force I drew is there and acts on the hand.

    and the force of the hand pushing right on the car (black
    in Luigi's diagram) does NOT act on (i.e., push on) any part of the hand.

    It's the part of Luigi's question that uses the word "only" that's harder
    to answer...

    It is not "difficult" to explain that "only", it is impossible.

    If "only" the blue force were to act on the hand, the hand should accelerate to the left.

    Since the hand does not accelerate to the left, it means that the blue force does not act alone.

    Therefore, another force "also" acts on the hand and it is easy to understand which force it is: it is the force of the arm muscles directed to the right, like the black force.

    It is due to the action of these two opposing forces (arm and car) that the hand contracts.

    It goes without saying that, if the two opposing forces are equal, the hand does not accelerate and if they are different, the hand accelerates.

    Ciao.
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Luigi Fortunati@fortunati.luigi@gmail.com to sci.physics.research on Sat Feb 22 18:13:51 2025
    From Newsgroup: sci.physics.research

    In my animation https://www.geogebra.org/m/rs4cfxzg body A of 5 particles collides inelastically with body B of 3 particles.

    Before the collision, the total momentum p=+2 is entirely owned by body A, because body B has no positive momentum.

    After the collision, it is true that the total momentum does not change (it always remains equal to p=+2), but it no longer belongs entirely to body A because 0.75 passes to body B.

    In fact, at the end of the collision, the positive momentum p=+2 belongs "only" in part to body A (p=+1.25) and the rest has transferred to body B (p=+0.75).

    How is it possible that, during the collision, there is a transfer of momentum from body A to body B if the action of body A on body B is *equal* to the opposite reaction of body B on body A?

    And why does this transfer of momentum from A to B not occur in the first three instants and only occurs in instants 4 and 5?

    Luigi Fortunati
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Jonathan Thornburg [remove -color to reply]@dr.j.thornburg@gmail-red.com to sci.physics.research on Wed Feb 26 08:02:15 2025
    From Newsgroup: sci.physics.research

    [[I've changed the subject line since this discussion no longer has
    anything to do with Hooke's law.]]

    In article <vpd0kg$23r6$1@dont-email.me>, Luigi Fortunati writes:
    In my animation https://www.geogebra.org/m/rs4cfxzg body A of 5 particles collides inelastically with body B of 3 particles.


    Before the collision, the total momentum p=+2 is entirely owned by
    body A

    This is incorrect: before the collision, *both* bodies have nonzero
    momentum (relative to Luigi's inertial reference frame). To be precise,
    before the collision we have:
    mass: m_A = 5 m_B = 3
    velocity: v_A = +1 v_B = -1
    momentum: p_A = +5 p_B = -3 p_total = p_A+p_B = +2


    After the collision, it is true that the total momentum does not change
    (it always remains equal to p=+2), [[...]]

    In fact, at the end of the collision, the positive momentum p=+2 belongs "only" in part to body A (p=+1.25) and the rest has transferred to body B (p=+0.75).

    This is correct: since momentum is conserved, the total momentum after
    the collision is equal to the total momentum before the collision, i.e.,
    +2. Since the total mass is m_A+m_B = 8, the common velocity after the collision must be v_A = v_B = 0.25, and thus the two bodies' individual
    momenta after the collision must be p_A = +1.25 and p_B = +0.75.


    How is it possible that, during the collision, there is a transfer of momentum from body A to body B if the action of body A on body B is
    *equal* to the opposite reaction of body B on body A?

    The answer is that the momentum transfer during the collision is actually *two-way*, i.e., *each* body transfers some momentum to the other body.
    That is, during the collision A's momentum changes (because B transfers
    some momentum to A), AND B's momentum changes (because A transfers some momentum to B).

    Let's work this out in detail:
    Before the collision:
    p_A_before = +5
    p_B_before = -3
    p_total_before = p_A_before+p_B_before = +2
    After the collision:
    p_A_after = +1.25
    p_B_after = +0.75,
    p_total_after = p_A_after+p_B_after = +2
    Thus, *during* the collision, the bodies momenta change by these amounts:
    Delta_p_A = p_A_after-p_A_before = -3.75
    Delta_p_B = p_B_after-p_B_before = +3.75
    Delta_p_total = Delta_p_A+Delta_p_B = 0

    In other words, during the collison B transfers momentum -3.75 to A,
    so that A's momentum changes by Delta_p_A=-3.75. AND, during the
    collision A transfers momentum +3.75 to B, so that B's momentum changes
    by Delta_p_B=+3.75.


    And why does this transfer of momentum from A to B not occur in the first three instants and only occurs in instants 4 and 5?

    To answer that we need to delve into the detailed internal structure of
    each body and the dynamics of the collision. I'll write about that in
    a following posting.
    --
    -- "Jonathan Thornburg [remove -color to reply]" <dr.j.thornburg@gmail-red.com>
    (he/him; currently on the west coast of Canada)
    "[I'm] Sick of people calling everything in crypto a Ponzi scheme.
    Some crypto projects are pump and dump schemes, while others are pyramid
    schemes. Others are just standard issue fraud. Others are just middlemen
    skimming off the top. Stop glossing over the diversity in the industry."
    -- Pat Dennis, 2022-04-25
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Luigi Fortunati@fortunati.luigi@gmail.com to sci.physics.research on Fri Feb 28 14:44:42 2025
    From Newsgroup: sci.physics.research

    Jonathan Thornburg [remove -color to reply] il 26/02/2025 09:02:15 ha
    scritto:
    In article <vpd0kg$23r6$1@dont-email.me>, Luigi Fortunati writes:
    In my animation https://www.geogebra.org/m/rs4cfxzg body A of 5 particles
    collides inelastically with body B of 3 particles.

    ...

    How is it possible that, during the collision, there is a transfer of
    momentum from body A to body B if the action of body A on body B is
    *equal* to the opposite reaction of body B on body A?

    The answer is that the momentum transfer during the collision is actually *two-way*, i.e., *each* body transfers some momentum to the other body.
    That is, during the collision A's momentum changes (because B transfers
    some momentum to A), AND B's momentum changes (because A transfers some momentum to B).

    Let's work this out in detail:
    Before the collision:
    p_A_before = +5
    p_B_before = -3
    p_total_before = p_A_before+p_B_before = +2
    After the collision:
    p_A_after = +1.25
    p_B_after = +0.75,
    p_total_after = p_A_after+p_B_after = +2
    Thus, *during* the collision, the bodies momenta change by these amounts:
    Delta_p_A = p_A_after-p_A_before = -3.75
    Delta_p_B = p_B_after-p_B_before = +3.75
    Delta_p_total = Delta_p_A+Delta_p_B = 0

    In other words, during the collison B transfers momentum -3.75 to A,
    so that A's momentum changes by Delta_p_A=-3.75. AND, during the
    collision A transfers momentum +3.75 to B, so that B's momentum changes
    by Delta_p_B=+3.75.

    Body B has a momentum -3 and, therefore, cannot transfer -3.75 to body
    A because it does not have it.

    What happens is something else.

    In the first 3 instants, body B experiences a counterforce +3 from body
    A and stops because it no longer has any momentum (pB=-3+3=0).

    In the following instants, a further +0.75 hits it that it can no
    longer counteract and that +0.75 becomes a "net" force that accelerates
    it to the right (remember that it had just stopped after the first 3 instants!).

    Therefore, body B experiences the force FA_B=+3.75, reacts with the counterforce FB_A=-3 and accelerates due to the residual uncontested
    force +0.75.

    Ciao, Luigi.
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Jonathan Thornburg [remove -color to reply]@dr.j.thornburg@gmail-pink.com to sci.physics.research on Sat Mar 1 09:18:54 2025
    From Newsgroup: sci.physics.research

    In article <m28047FughsU1@mid.dfncis.de>, I wrote
    the momentum transfer during the collision is actually
    *two-way*, i.e., *each* body transfers some momentum to the other body.
    That is, during the collision A's momentum changes (because B transfers
    some momentum to A), AND B's momentum changes (because A transfers some momentum to B).

    [[...]]

    In other words, during the collison B transfers momentum -3.75 to A,
    so that A's momentum changes by Delta_p_A=-3.75. AND, during the
    collision A transfers momentum +3.75 to B, so that B's momentum changes
    by Delta_p_B=+3.75.

    In article <vps7vq$3laqc$1@dont-email.me>, Luigi Fortunati replied
    Body B has a momentum -3 and, therefore, cannot transfer -3.75 to body
    A because it does not have it.

    This is mistaken. (Linear) momentum doesn't have an inherent zero point,
    so there's never a case where one body doesn't have enough momentum to
    transfer some to another body. Rather, momentum is analogous to position
    on a number line, where being at position -3 doesn't prevent you from moving
    a distance 3.75 either to the right or to the left.

    One way to "see this in action" is to consider what the collision would
    look like if analyzed in a different inertial reference frame (IRF). For example, let's consider an IRF which is moving to with a velocity v=-10
    (i.e., moving the left at a speed of 10) with respect to Luigi's original
    IRF. In this new IRF, each velocity is the velocity in Luigi's original
    IRF + 10.

    In this new IRF, the speeds and momenta before the collision are
    v_A_before = +11 --> p_A_before = +55
    v_B_before = +9 --> p_B_before = +27
    p_total_before = p_A_before+p_B_before = +82
    so that after the collision, the total momentum must also be p=+82. Hence
    the common body of mass 8 must be moving at a speed of p/m = +10.25 after
    the collision, and A and B's speeds and momenta after the collision must be
    v_A_after = +10.25 --> p_A_after = +51.25
    v_B_after = +10.25 --> p_B_after = +30.75
    p_total_after = p_A_after+p_B_after = +82
    The velocity changes during the collision are thyus
    Delta_v_A = v_A_after - v_A_before = +10.25 - +11 = -0.75
    Delta_v_B = v_B_after - v_B_before = +10.25 - +9 = +1.25
    and the momentum changes during the collision are
    Delta_p_A = p_A_after-p_A_before = +51.25 - +55 = -3.75
    Delta_p_B = p_B_after-p_B_before = +30.75 - +27 = +3.75

    Notice how the velocity changes during the collision, AND the momentum
    changes and A <--> B transfers during the collision, are exactly the same
    as when we analyzed the collision in Luigi's original IRF.
    --
    -- "Jonathan Thornburg [remove -color to reply]" <dr.j.thornburg@gmail-pink.com>
    (he/him; currently on the west coast of Canada)
    "[I'm] Sick of people calling everything in crypto a Ponzi scheme.
    Some crypto projects are pump and dump schemes, while others are pyramid
    schemes. Others are just standard issue fraud. Others are just middlemen
    skimming off the top. Stop glossing over the diversity in the industry."
    -- Pat Dennis, 2022-04-25
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Jonathan Thornburg [remove -color to reply]@dr.j.thornburg@gmail-pink.com to sci.physics.research on Sun Mar 2 09:14:50 2025
    From Newsgroup: sci.physics.research

    In article <vpd0kg$23r6$1@dont-email.me>, Luigi Fortunati writes:
    In my animation https://www.geogebra.org/m/rs4cfxzg body A of 5 particles collides inelastically with body B of 3 particles.

    This animation shows a specific set of motions of the 5 bodies (shown
    as spheres), with a specific set of deformations (the spheres overlap)
    at various times.

    This animation might be what actually happens in an inelastic collision,
    or it might not be. How can we find out? That is, how can we apply the
    known laws of Newtonian mechanics to work out what happens?

    To do this, we need a *quantitative* model of body A and of body B, and
    of how they interact during the collison.

    Earlier in this thread (article <m1dng8FkasU1@mid.dfncis.de>) I
    suggested a model consisting of a set of point particles interconnected
    with "springs with friction". That model is reasonable for elastic or partly-elastic collisions, but as we'll see, we need to modify it a bit
    to handle fully-inelastic collisions.

    An example of a fully-inelastic collision is crunching snowballs
    (or lumps of modelling clay) together. Notice that if you compress a
    snowball (or a lump of clay), then let go, the snowball (or clay) stays compressed: it doesn't rebound to its original size. In contrast, in
    our earlier model the springs can (and would) re-expand after being
    compressed.

    So, to model a fully-inelastic collision, let's change our model a bit:

    We still have a set of point particles (5 for body A, 3 for body B),
    equally spaced along a line. But, now the particles are interconnected
    with "struts", which behave like springs-with-friction *except* that
    they don't re-expand after being compressed. More precisely, if L is
    the (time-dependent) current length of a strut, and L_eq is the original equilibrium length of a strut, then

    If dL/dt < 0, i.e., if the strut's length is currently decreasing,
    then the strut acts like a spring-with-friction, exerting a restoring
    force R = -k (L - L_eq) - mu dL/dt, where k is the elastic spring
    constant, mu is the spring friction coefficient, and our sign convention
    is that R > 0 pushes "outwards" (i.e., tends to increase L).

    Otherwise, the strut exerts no restoring force (i.e., R = 0) AND
    we reset L_eq to the current value of L.

    For example, if we imagine compressing the strut a bit, then removing
    the applied compression force, then after we remove the applied
    compression force there's no restoring force, so the strut doesn't
    re-expand.

    The reason we reset L_eq to the current (compressed) L is so that the
    system behaves reasonably if there's a further compression. If we didn't
    reset L_eq, then even if there were only a very small further compression,
    the restoring force R would immediately jump to a large value, which seems physically implausible. By resetting L_eq, we ensure that if there's
    only a small further compression, there will only be a small restoring
    force R, which seems more reasonable.

    We also need to say what happens in our model when a pair of particles
    collide (as do A1 and B1 at the very beginning of the collision). A
    reasonable answer is to say that the particles then stick together,
    moving as a single particle with mass 2. (This means that the system
    of equations changes -- there is now one fewer particle, and not all
    the particles have the same masses.)

    Now we can use Newton's laws to construct a full-fledged dynamical
    model of the collision. Each point particle moves according to Newton's
    2nd law,
    m_i d^2 x_i/dt^2 = F_net_i
    where m_i and x_i are the mass and position of particle i, and F_net_i
    is the net force acting on particle i, i.e., the algebraic sum of the
    restoring force R_left_i from the strut to the left of the particle
    (if there is a strut there) and the restoring force R_right_i from
    the strut to the right of the particle (if there is a strut there),
    F_net_i = R_left_i - R_right_i



    So, what happens in the collision? To solve the model numerically and
    find out, during the simulation we have to
    (a) detect any time(s) at which any strut stops compressing (so that
    we can reset L_eq to the current value of L), and
    (b) detect any time(s) at which any pair of particles collide (so that
    we can replace them by a single particle with their total mass, and
    change the system of equations accordingly).

    <<begin slight digression on numerical software design>>
    The standard design for ODE integration routines (e.g., the Gnu Scientific Library routines I used in the program I posted earlier in this thread)
    solves the equations
    du(t)/dt = F(t,u(t)) where F is a user-provided subroutine
    u(t=0) = u_0 where u_0 are user-provided initial data
    where u_0, u(t), and the result of F are all N-dimensional real vectors.
    You write code to specify a sequence of "goal" times t_goal (these are
    usually just the times at which you want to print the solution), and
    for each goal time the ODE integration routines take as many internal
    time steps as are needed to advance the solution vector to or beyond
    the goal time, then (if the integration actually went beyond the goal
    time) time-interpolate to determine the solution vector at the goal time.

    This design usually works well, and it's very efficient because it lets
    the ODE integration routine figure out the right internal time steps
    based on the behavior of the solution.

    But for our inelastic-collision problem, the standard design is a bit
    clumsy: because we don't know if or when condition (a) and/or (b) might
    occur, we have to instead specify each goal time to be only a tiny step
    ahead of the current time, so that we can check for (a) and/or (b) before calling the ODE-integration routine again to further advance the solution.
    That is, we have to bypass all the fancy "automatically choose the most efficient time step" mechanisms in the ODE integration routine. The
    result is extra work for us (the programmer) and a much less efficient
    program.

    An alternative approach is to use fancier ODE integration software
    which can monitor "auxiliary conditions" automatically. That is, ODE integration routines like LSODAR (<https://www.netlib.org/odepack/>) or
    its successor SUNDIALS (<https://computing.llnl.gov/projects/sundials/>)
    can solve the equations
    du(t)/dt = F(t,u(t)) where F is a user-provided subroutine
    u(t=0) = u_0 where u_0 are user-provided initial data
    where u_0, u(t), and the result of F are all N-dimensional real vectors,
    AND they can (optionally) also concurrently monitor a set of M auxiliary functions G(t,u(t)) (where G is a user-provided subroutine returning
    an M-dimensional vector), so that if any component of G(t,u(t)) = 0,
    then the integration will stop and the ODE integration routine will
    report the time and which component of G is zero.

    This make it much easier to program our dynamical model, because we can
    now easily check for (a) by having one of the components of G be dL/dt,
    and we can check for (b) by having one of the components of G be the
    distance between an adjacent pair of particles. And, with this type of programming, we can return to specifying only the goal times when we want
    to print the solution, and let the ODE integration routine automatically
    choose efficient internal step sizes.

    So, at the cost of having to use a somewhat more complicated set of
    ODE integration software, we get both easier programming *and* a much
    more efficient program.
    <<end slight digression on numerical software design>>

    If I find the time, I'll write a program implementing the above and
    post some of the output.

    ciao,
    --
    -- "Jonathan Thornburg [remove -color to reply]" <dr.j.thornburg@gmail-pink.com>
    (he/him; currently on the west coast of Canada)
    "The ideal subject of totalitarian rule is not the convinced Nazi or
    the convinced Communist, but people for whom the distinction between
    fact and fiction (i.e., the reality of experience) and the distinction
    between true and false (i.e., the standards of thought) no longer exist."
    -- Hannah Arendt, The Origins of Totalitarianism --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Luigi Fortunati@fortunati.luigi@gmail.com to sci.physics.research on Mon Mar 3 08:09:36 2025
    From Newsgroup: sci.physics.research

    Jonathan Thornburg [remove -color to reply] il 01/03/2025 10:18:54 ha
    scritto:
    ...

    I improved my animation https://www.geogebra.org/classic/c4ruteax where
    the particles are atoms that compress in the collision and then expand
    again without detaching and the central dots are the atomic nuclei.

    ...

    In article <vps7vq$3laqc$1@dont-email.me>, Luigi Fortunati replied
    Body B has a momentum -3 and, therefore, cannot transfer -3.75 to body
    A because it does not have it.

    This is mistaken. (Linear) momentum doesn't have an inherent zero point,
    so there's never a case where one body doesn't have enough momentum to transfer some to another body. Rather, momentum is analogous to position
    on a number line, where being at position -3 doesn't prevent you from moving a distance 3.75 either to the right or to the left.

    One way to "see this in action" is to consider what the collision would
    look like if analyzed in a different inertial reference frame (IRF). For example, let's consider an IRF which is moving to with a velocity v=-10 (i.e., moving the left at a speed of 10) with respect to Luigi's original IRF. In this new IRF, each velocity is the velocity in Luigi's original
    IRF + 10.

    In this new IRF, the speeds and momenta before the collision are
    v_A_before = +11 --> p_A_before = +55
    v_B_before = +9 --> p_B_before = +27
    p_total_before = p_A_before+p_B_before = +82
    so that after the collision, the total momentum must also be p=+82. Hence the common body of mass 8 must be moving at a speed of p/m = +10.25 after
    the collision, and A and B's speeds and momenta after the collision must be
    v_A_after = +10.25 --> p_A_after = +51.25
    v_B_after = +10.25 --> p_B_after = +30.75
    p_total_after = p_A_after+p_B_after = +82
    The velocity changes during the collision are thyus
    Delta_v_A = v_A_after - v_A_before = +10.25 - +11 = -0.75
    Delta_v_B = v_B_after - v_B_before = +10.25 - +9 = +1.25
    and the momentum changes during the collision are
    Delta_p_A = p_A_after-p_A_before = +51.25 - +55 = -3.75
    Delta_p_B = p_B_after-p_B_before = +30.75 - +27 = +3.75

    Notice how the velocity changes during the collision, AND the momentum changes and A <--> B transfers during the collision, are exactly the same
    as when we analyzed the collision in Luigi's original IRF.

    We are in complete agreement on this, I also say that the variation of
    the momentum of body A is
    Delta_p_A=p_A_after-p_A_before=-3.75
    and the variation of the momentum of body B is Delta_p_B=p_B_after-p_B_before=+3.75

    So, on the variations of the momentum quantities we both say the same
    thing.

    What differentiates us is the *force* FB_A (of body B on body A) which
    for you is -3.75 and for me is -3.

    From a physical point of view, the force FA_B (that body A exerts on
    body B) is nothing other than the force that particle A1 exerts on
    particle B1 because A1 and B1 are the only particles of the 2 bodies
    that touch.

    And the force FB_A (that body B exerts on body A) is nothing other than
    the force that particle B1 exerts on particle A1.

    If only particles A1 and B1 existed, they could only exchange their
    small opposing forces +1 and -1, and nothing else.

    Since they exchange much larger forces, it means that they receive some
    help to increase their paltry forces.

    Obviously, particle A1 is reinforced by the particles A2-A5 behind it,
    which, inside body A, transmit their positive forces forward to A1
    where they accumulate, to then discharge themselves on particle B1.

    And in body B, the particles B2 and B3 behind it do the same, which
    transmit their negative forces forward to the left to B1 where they accumulate, to then discharge themselves on particle A1.

    These are physical considerations and not just mathematical ones.

    Could you explain to me how it is possible that the particle B1 where
    the negative forces of only 2 particles (B2 and B3) accumulate, can
    exert the *same* force as the particle A1 where the positive forces
    that accumulate (and push) are exactly double since they come from 4
    particles behind (A2, A3, A5 and A5) and not from 2?

    Ciao.
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Luigi Fortunati@fortunati.luigi@gmail.com to sci.physics.research on Wed Mar 12 12:37:09 2025
    From Newsgroup: sci.physics.research

    The animation https://www.geogebra.org/classic/hxvcaphh shows how two
    rigid bodies interact when they collide head-on.

    When body A comes into contact with body B, an often imperceptible
    contraction occurs (first phase) and a subsequent elastic return to the initial form (second phase).

    The quantitative model is the following, before the collision the
    masses are both equal to 1 (m_A=1 and m_B=1), the initial velocities
    are vi_A=+1 and vi_B=-1, and the momentum quantities are pi_A=+1 and
    p_Bi=-1.

    In the first phase of the collision, a compression zone and a pair of
    action and reaction forces F1 and F2 are activated simultaneously in
    the contact area (the compression is the cause, the opposite forces are
    the effects).

    The force F1 slows the motion of body B to the left until it stops and
    the force F2 does the same, slowing the motion of body A to the right
    until it stops (the forces are the cause, the decelerations are the
    effects).

    During this phase, the changes in the value of the two opposing blue
    and red action and reaction forces are displayed.

    When the two bodies have stopped, the contraction is at maximum (1),
    the velocities have become zero and the opposing forces measure F1=+1
    and F2=-1.

    You can stop the motion at this moment with the "Max compression"
    button.

    In the second phase of the impact, the opposing forces F1 and F2
    accelerate the two bodies A and B in the opposite direction until the
    initial position of contact where both the compression, the forces and
    the acceleration cease to exist.

    From this point on, the motion of the two bodies returns to being
    inertial, the velocities have been inverted:
    body A from vi_A=+1 to vf_A=-1 and body B from vi_B=-1 to vf_B=+1
    and the quantities of motion as well:
    body A from pi_A=+1 to pf_A=-1 and body B from pi_B=-1 to pf_B=+1.


    All this is very simple because the 2 bodies have the same mass but
    things get complicated when we choose to increase (with the appropriate button) the mass of body A from m_A=1 to m_A=2 because, to the main contraction between the particles A1 and B1, the secondary compression
    between A2 and A1 is added whose action on the left concerns
    exclusively body A, while that on the right concerns both body A and
    body B.

    But I will talk about this in the next post because here I have gone on
    too long.

    Luigi Fortunati
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Luigi Fortunati@fortunati.luigi@gmail.com to sci.physics.research on Sun Mar 16 09:28:35 2025
    From Newsgroup: sci.physics.research


    Luigi Fortunati il 12/03/2025 13:37:09 ha scritto:
    The animation https://www.geogebra.org/classic/hxvcaphh shows how two
    rigid bodies interact when they collide head-on.

    When body A comes into contact with body B, an often imperceptible contraction occurs (first phase) and a subsequent elastic return to the initial form (second phase).

    The quantitative model is the following, before the collision the
    masses are both equal to 1 (m_A=1 and m_B=1), the initial velocities
    are vi_A=+1 and vi_B=-1, and the momentum quantities are pi_A=+1 and p_Bi=-1.

    In the first phase of the collision, a compression zone and a pair of
    action and reaction forces F1 and F2 are activated simultaneously in
    the contact area (the compression is the cause, the opposite forces are
    the effects).

    The force F1 slows the motion of body B to the left until it stops and
    the force F2 does the same, slowing the motion of body A to the right
    until it stops (the forces are the cause, the decelerations are the effects).

    During this phase, the changes in the value of the two opposing blue
    and red action and reaction forces are displayed.

    When the two bodies have stopped, the contraction is at maximum (1),
    the velocities have become zero and the opposing forces measure F1=+1
    and F2=-1.

    You can stop the motion at this moment with the "Max compression"
    button.

    In the second phase of the impact, the opposing forces F1 and F2
    accelerate the two bodies A and B in the opposite direction until the initial position of contact where both the compression, the forces and
    the acceleration cease to exist.

    From this point on, the motion of the two bodies returns to being
    inertial, the velocities have been inverted:
    body A from vi_A=+1 to vf_A=-1 and body B from vi_B=-1 to vf_B=+1
    and the quantities of motion as well:
    body A from pi_A=+1 to pf_A=-1 and body B from pi_B=-1 to pf_B=+1.


    All this is very simple because the 2 bodies have the same mass but
    things get complicated when we choose to increase (with the appropriate button) the mass of body A from m_A=1 to m_A=2 because, to the main contraction between the particles A1 and B1, the secondary compression between A2 and A1 is added whose action on the left concerns
    exclusively body A, while that on the right concerns both body A and
    body B.

    But I will talk about this in the next post because here I have gone on
    too long.

    In the case of body A in my animation with mass m_A=2, the forces
    generated by the main compression are F1 and F2, and those generated by
    the secondary compression are the forces F3 and F4, both are pairs of
    equal and opposite forces that guarantee the conservation of the
    quantity of motion.

    Therefore, the forces that push to the right (F1+F3) are exactly equal
    and opposite to the forces that push to the left (F2+F4).

    But Newton's third law does not say what we all know, that is, that the
    forces that push to the right are equal and opposite to the forces that
    push to the left, but says something completely different: it says that
    the forces that body A exerts on body B are equal and opposite to those
    that body B exerts on body A.

    So I ask: is it body B that exerts the force F4 that pushes body A to
    the left? No!

    The force F4 is exerted by particle A1 against particle A2, that is, it
    is exerted by body A against itself, it is an *internal* force that
    body A uses to give itself a push to the right against body B: the
    force F3 directed towards body B that would not exist without the
    internal force F4!

    The force F3 is released to the right against body B and the force F4
    is released to the left against the same body A.

    Body A exerts two pushes on body B (F1+F3) and body B exerts only one
    push on body A (F2), while the other push F4 remains inside body A.

    Therefore, the action of body A on body B is *greater* than the
    reaction of body B on body A.

    But greater than how much? I had already asked myself this for a long
    time but I never dwelt on it too much and, instead, it was essential to
    do so.

    Now, on the Italian physics newsgroup, an interlocutor (rightly)
    pointed out to me that if a law is not good, it must be replaced by a
    new one that takes its place.

    And so, I said to myself that, if the action is not equal to the
    reaction, I absolutely had to find what relationship links the action
    to the reaction, knowing full well that it had to depend on the two
    masses.

    I did some calculations and found that the force F_AB exerted by body A
    on body B and the force F_BA exerted by body B on body A are linked by
    this equation:
    FA_B=-F_BA(1+(mA-mB)^2/(mA+mB))

    I verified its accuracy on the numerical data of my animation with body
    A of mass m_A=1 and then with that of mass M_A=2, and it works
    perfectly, just as it works with all the other combinations of masses
    of bodies A and B.

    So, the new law is defined as follows: "For every action there is a corresponding opposite reaction depending on the ratio between the two
    masses expressed by the equation FA_B=-F_BA(1+(mA-mB)^2/(mA+mB))".

    Luigi Fortunati
    --- Synchronet 3.21b-Linux NewsLink 1.2
  • From Luigi Fortunati@fortunati.luigi@gmail.com to sci.physics.research on Sun Mar 16 21:28:32 2025
    From Newsgroup: sci.physics.research

    Luigi Fortunati il 16/03/2025 10:28:35 ha scritto:
    The animation https://www.geogebra.org/classic/hxvcaphh shows how two
    rigid bodies interact when they collide head-on.

    ...

    So, the new law is defined as follows: "For every action there is a corresponding opposite reaction depending on the ratio between the two masses expressed by the equation FA_B=-F_BA(1+(mA-mB)^2/(mA+mB))".

    Surprisingly and referring to inertia, Newton said something very
    similar: "The vis insita, or innate force of matter, is a power of
    resisting, by which every body, as much as it lies, endeavors to
    persevere in its present state, whether it be of rest, or of moving
    uniformly forward in a right line. This force is __proportional__ to
    the body whose force it is...".

    Proportional and not equal!

    In the collision this is exactly what happens: each of the bodies A and
    B endeavors to persevere in its current state of motion and rebels with
    a force proportional to the other body that tries to modify it.

    Now that I think I have found this proportionality I realize that I
    still have a long way to go.

    First of all, why does the proportionality depend on
    (1+(mA-mB)^2/(mA+mB)) and not on anything else?

    I found it indirectly starting from the conservation of momentum and
    knowing how the velocities of bodies vary after the collision but I
    would need to compare myself with someone who is better than me to find
    the direct explanation, to check that everything is correct, to fix
    every imperfection or error and to transcribe everything with the
    correct scientific language suitable for an official publication.

    Is there anyone willing to collaborate with me to fine-tune everything together or to find any errors that I may have missed?

    Luigi Fortunati
    --- Synchronet 3.21b-Linux NewsLink 1.2