dashdotrobot / bike-wheel-calc

Stress analysis of bicycle wheels implemented in Python using NumPy
MIT License
14 stars 1 forks source link

Code error | example_stiffness #4

Closed MattEver closed 8 years ago

MattEver commented 8 years ago

Dear Dashdotrobot,

I came across your code and love the work. Currently I'm trying to fully understand the code, which is quite a challenge. I have completed by BSc. in aerospace engineering and an currently doing a Msc. I'm quite proficient in Matlab but Python is quite new for me. The examples are helpful but I can't get example_stiffness.py to run properly. I get an error:

Traceback (most recent call last): File "\example_stiffness.py", line 46, in fem = bc.BicycleWheelFEM(g, r_sec, s_sec) File "C:\bikewheelfem.py", line 705, in init offset = geom.lace_offset[e] IndexError: index 0 is out of bounds for axis 0 with size 0

Could you indicate to as what the issue might be?

Thank you for sharing the code!

Best regards,

Matthijs

dashdotrobot commented 8 years ago

Hi Matthijs,

I'm glad you found my code! Unfortunately, I have been busy with other projects and I haven't been able to update the code properly. In my own local version of the code I changed the class structure completely (instead of a "geometry" object, a "rim section" object, and a "spoke section" object, I now just use a single BicycleWheel class which contains subclasses for the rim and spokes). From the error, it looks like perhaps the "geom" object has on spokes defined. Did you run the code as-is, or make modifications?

Do you have an interest in the bicycle wheel? How did you come across my code? I'm currently very busy teaching a class at Northwestern University, but next week when it's over, perhaps I'll try and update the code.

Take care, ~Matt Ford

On Tue, Jul 19, 2016 at 5:15 AM, MattEver notifications@github.com wrote:

Dear Dashdotrobot,

I came across your code and love the work. Currently I'm trying to fully understand the code, which is quite a challenge. I have completed by BSc. in aerospace engineering and an currently doing a Msc. I'm quite proficient in Matlab but Python is quite new for me. The examples are helpful but I can't get example_stiffness.py to run properly. I get an error:

Traceback (most recent call last): File "\example_stiffness.py", line 46, in fem = bc.BicycleWheelFEM(g, r_sec, s_sec) File "C:\bikewheelfem.py", line 705, in init offset = geom.lace_offset[e] IndexError: index 0 is out of bounds for axis 0 with size 0

Could you indicate to as what the issue might be?

Thank you for sharing the code!

Best regards,

Matthijs Eversdijk

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub https://github.com/dashdotrobot/bike-wheel-calc/issues/4, or mute the thread https://github.com/notifications/unsubscribe-auth/ALlIrd767IC_DutU8fV8rTW-KXN3Q3tGks5qXKO-gaJpZM4JPk7I .

dashdotrobot commented 8 years ago

Hi Matthijs,

The error was due to the wheel parser code adding spokes manually by editing the arrays that define spoke connectivity, rather than using the newer add_spoke() method which was defined for this purpose. You should be able to run all the example code now.

i

Take care, ~matt

MattEver commented 8 years ago

Hi Matthew,

Thanks for your reply. I indeed ran the code as-is, and encountered the problem. I will try it again later, thank you for fixing the error! Currently I am doing an internship with a company that designs and sells composite road race wheels. I was interested to learn a bit more on the effect of certain spoke patterns. Furthermore, I had the idea of building a code in which I could include a model of a composite rim and vary spoke count/stiffness/pattern to see what would give the optimal stiff wheel. I am currently trying to set up an input file for Abaqus, which I later want to convert to an easy adjustable input which can easily test different configurations.

Quite a challenge though. But it is nice to see you have actually succeeded in generating the code! Did you verify it against any actual wheels?

Best regards,

Matthijs

2016-07-22 20:28 GMT+02:00 Matthew Ford notifications@github.com:

Closed #4 https://github.com/dashdotrobot/bike-wheel-calc/issues/4.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/dashdotrobot/bike-wheel-calc/issues/4#event-732109145, or mute the thread https://github.com/notifications/unsubscribe-auth/ATlZ2cLHb2JQlS2ZcV5ICy2WbkEUo928ks5qYQvmgaJpZM4JPk7I .

dashdotrobot commented 8 years ago

Hi Matthijs,

Good luck with your internship! That sounds exciting.

I am working on a new branch for bike-wheel-calc which streamlines the wheel creation process (it's called simple-classes if you want to download it from the repository and try it out). I also have my own code which generates an ABAQUS input file based on the data from a BicycleWheel object, but I haven't published it yet. In both codes, the rim is treated as a beam with an axial stiffness, 2 bending stiffnesses, a torsional stiffness, and a warping constant. I don't have any plans to include anisotropic material properties (i.e. composites) but otherwise the code is very general.

Regarding your last question: I have verified the code against ABAQUS and some experimental results available in the literature.

If you are interested in talking about more details, email me at mford@u.northwestern.edu and I'd be happy to talk about wheels!

Take care, ~matt

On Mon, Jul 25, 2016 at 6:38 AM, MattEver notifications@github.com wrote:

Hi Matthew,

Thanks for your reply. I indeed ran the code as-is, and encountered the problem. I will try it again later, thank you for fixing the error! Currently I am doing an internship with a company that designs and sells composite road race wheels. I was interested to learn a bit more on the effect of certain spoke patterns. Furthermore, I had the idea of building a code in which I could include a model of a composite rim and vary spoke count/stiffness/pattern to see what would give the optimal stiff wheel. I am currently trying to set up an input file for Abaqus, which I later want to convert to an easy adjustable input which can easily test different configurations.

Quite a challenge though. But it is nice to see you have actually succeeded in generating the code! Did you verify it against any actual wheels?

Best regards,

Matthijs

2016-07-22 20:28 GMT+02:00 Matthew Ford notifications@github.com:

Closed #4 https://github.com/dashdotrobot/bike-wheel-calc/issues/4.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub < https://github.com/dashdotrobot/bike-wheel-calc/issues/4#event-732109145>, or mute the thread < https://github.com/notifications/unsubscribe-auth/ATlZ2cLHb2JQlS2ZcV5ICy2WbkEUo928ks5qYQvmgaJpZM4JPk7I

.

— You are receiving this because you modified the open/close state. Reply to this email directly, view it on GitHub https://github.com/dashdotrobot/bike-wheel-calc/issues/4#issuecomment-234930300, or mute the thread https://github.com/notifications/unsubscribe-auth/ALlIrejh_1VD07XfqVSwOg9GnXjb40ocks5qZKBOgaJpZM4JPk7I .