Non linear system solving
- To: mathgroup at smc.vnet.net
- Subject: [mg71369] Non linear system solving
- From: "Jean-Paul" <Jean-Paul.VINCENT-3 at etudiants.ensam.fr>
- Date: Thu, 16 Nov 2006 00:52:49 -0500 (EST)
I'm a french student working on gears, particulary on gear engagement.
To summerize quickly:
The active surfaces of a gear teeth are made to ensure an homokynetic
We have, in theory,
a1/a2=constant, with ai, the rotation angle of the part i.
My work is to find this relation:
First the surfaces are represented by equations ( a 3D Vector, with two
parameters) in a local coordinate system.
These parameters are u1 and v1 for the gear 1, u2 and v2 for the gear
To simulate the transmission between these gears, we write these
equations in a common coordinate system, giving them another parameter,
for the position , the angle of rotation, a1 and a2.
So for the gear 1, we have:
Active surface for the gear 2 is given by:
To simulate the engaging, we have to translate mathematically the
contact between the two surfaces:
Surfaces are in contact, that leads to:
s1(u1,v1,a1)=s1(u2,v2,a2) -> 3 equations.
The normals at the contact point are parallel.
n1(u1,v1,a1)=k.n2(u2,v2,a2) ->3 equations, one more unkown introduced:
Finaly: we have 6 Equations, and 6 unknowns (u1,v1, u2, v2, a2, k)
Theses equations are too complicated, to obtain an explicit solution.
We have to divide the problem:
Solve the non linear system, for each value of a1.
Then we have several couple of (a1,a2).
This is the context of my work.
I tried to write in Mathematica, using the famous function "Findroot".
My question begin here:
Findroot works well, but when the relative curvatures of the surfaces
near the contact point are close, the fonction shows its limit.
I began to write a program, calculating the Jacobian Matrix of the
system and by iteration i found a solution vector.
The solutions found are not in the interval.
Indeed parameter of the surface v1 varies between 50 and 100.
The solution given by Mathematica is 0.
The FindRoot function allows us to give interval for all unknowns (and
gives 83.3 for v1 (example) if we give the interval, 0 if not).
Can someone, help me to make a program witch take into account
intervals for each unknown?
I am asking for a program, just the mathematical part.
Thank You very much.
PS: Please excuse my bad English.
Prev by Date:
Re: Define a matrix function with size as argument
Next by Date:
Re: About NIntegrate
Previous by thread:
RE: Mathematica and other programs (FEM, FEA)
Next by thread:
Re: Non linear system solving