I'm taking a class at school that teaches mainly civil engineers how to solve typical engineering problems with software. It's a basic programming class, nothing fancy. It's an more or less experimental course, and this year they picked Python as the language to teach it in. My instructor decided for the final assignment, that he'd leave the topic up to the students. This is a grad course with only maybe 15 students in it, so it'll be manageable on his end.
Our previous assignments have been stuff like this:
Monte Carlo Simulation:
define a method for evaluating definite integrals
define a method to determine the expected monetary value of building different sized spillways given various risks of failure for each capacity
Abstraction:
consider a binary 'mobile' composed of arms of various lengths and weights of various masses, define methods to evaluate if the mobile is balanced, total weight, if same as another mobile given nodes can rotate, etc
Dynamic Programming:
given costs associated with various reservoir sizes and locations, design a method to evaluate the least cost to build a capacity of a given size
Some other topic:
design a method to calculate all the pertinent values of an activity network (eg late finish time, early start time, total float time, methods to determine crash behavior, etc)
Data abstraction:
design and implement a method to mimic the operations of a reverse polish notation calculator using a stack
tl;dr
Give me an engineering problem that can be solved by a Python programmer with only basic programming abilities. I'm rather comfortable with objects.
Posts
I'm just kind of suggestion out of my erse here.
Having said that, maybe something that could derive a shear-moment diagram of a simply supported beam would be good. Although graphical output in Python is a bit beyond my abilities... maybe I could rely on another program after the raw data is generated...
Thanks. If nothing else, you gave me something to think about.
I'm a water resources guy, not a structures guy. I'd have to look into how that works and hope my solid mechanics isn't too dusty. A very good suggestion though.
What about a program that, given a pipe geometry, material, and inner-diameter and a pump curve, gives you the head loss through the pipe?
Bonus points for parallel piping networks?
Oh, and when you're done with that, give it to me so I can use it?
That's actually very interesting. I don't know about the parallel networks though, don't want to come off as an over achiever.