So I have written this like the advice Iwould give myself if I could travel back in time or what I really hope to seein the undergrads I want to hire. I hope you don't get discouraged/put off.
o5 v- I7 [+ U5 T) i$ i我写的如下这些建议,希望你不要泄气或厌恶。如果让我重过一次,我会把它给我自己看。如果现在招人,我会招这样的学生。
7 N! F* t$ Z8 C$ A5 C6 @, jFirst thing: Solidworks/ProE/AutoCAD/Rhino/Blender/CATIA and GD&T are notskills for degree'd engineers. You don't do a BS/ME for draftsmanship. It'slike putting MS Office on your resume. You can pick that skill up on your owntime.
& w9 B2 u4 p8 R- q; Z4 j第一,Solidworks/ProE/AutoCAD/Rhino/Blender/CATIAand GD&T这些不是拿到学位工程师的技能要求,成为工程师不是一个画图员,就像在简历上说你会MSoffice一样,花点时间你能轻松学会它。
8 U5 V" Z0 H# d# E: vSecond thing: I am talking about becoming an engineer here. You know, the kindthat build rockets and microengines (SandiaMEMS Home Page). I have nothing against grades, but I don'tcare very much for them. So I am not talking about getting the best grades.
0 K% I; \/ \8 m2 K/ ~- D) `: U3 U第二,我们在这说的是成为一个工程师,是那种可以实实在在建造火箭和微型发动机的。我不反对分数制,不是很在乎它,因此这里我不讨论如何得最高分。
Now. Here's what you need to acquireproficiency in through your 4-year BS.) e/ `' @) p! Y, q4 w- U
现在,下面这些是你在大学四年中需要熟练掌握的。/ X5 S9 O, h6 K+ T. F9 c
0. Read Wikipedia.
) \( C* s5 X' C, n3 t9 O阅读维基百科! a r1 P- r( |( V( @. f! M
1. Programming - Start with Matlab/Python. Thengraduate to C++. An example of a programming goal would be to use this tocreate your own computational graphics engines. Why? Because this teaches youabout visualizing vectors, arrays, transforms and leads you tohigher-dimensional algebra. Make sure you can understand and implementRunge-Kutta family of algorithms before you think you are done. Arecommendation would be to ditch Windows and move to some flavour of Linux orMac. You need to understand concepts behind batch/shell scripting and importingopen source scripts to embed inside your own. If you don't do anything else inyour freshman or sophomore years, that's fine. But make sure you master this., W- |3 x. c, e8 j F5 ?
编程:从Matlab/Python开始,接着C++。举个例子,要达到用这些语言可以自己编写一个图像引擎。为什么?因为这能让你把矢量、阵列、变换图形化,并通往高维代数。要确保你能理解和应用Runge-Kutta的算法,这样才算学好。不要只是用windows,也要领略一下Linux或Mac的风采。要能理解batch/shell脚本语言的原理,并能把利用重要的开源脚本搭建自己的脚本。如果你在一年级或二年级什么事也没干,确保一定要精通这些。
( m6 [' X' U; a4 m2. Linear algebra anddifferential equations - Now,most ME syllabi force the courses on you early on. But very few MEs trulyunderstand these topics. This is the source of all ME theory. I CANNOT STRESSTHIS ENOUGH! Most ME professors DO NOT understand linear algebra or itsimportance - they will fuck it up for you so you will be confused/avoidderivative topics forever. Don't take these courses offered inside yourdepartment - take them from CS or EE or Math professors. Or learn it fromGilbert Strang on Youtube. Tie this together with your programming to createnumerical simulations. Do NOT take these courses until you are done with yourprogramming.
线性代数和微分方程:现在大部分机械工程的大纲都要求尽早学这门课,但很少有机械工程师能真正理解,它们是机械工程的根本,再怎么强调都不过分。很多机械专业教授都不理解线性代数的重要性,把它教砸,去听计算机、数学专业老师开的课。或去Youtube听GilbertStrang 的课。把它和编程结合,进行数值仿真。不要等编程学完,再学它们。
! R9 y( ]8 f, o8 n; D* B7 D; x9 p! B' U- i+ d
3. Statistics - Take this twice. Audit it as afreshman. Then take the course again as a senior. This will be the single mostimportant course you ever take as a professional in any field.9 o% v" P& o2 {' N' I
统计学:学两遍,第一年学,高年级再学。这是唯一一个任何专业都非常重要的一门课。
- D, t+ z( d/ B4 r4. Engineering mathematics -The rest of your life depends onthis. Pay attention to spatial transforms, Fourier analysis, Complex analysis,Potential theory, PDEs, Interpolation/curve fitting, optimization theory. Lookfor ways to implement these concepts using your programming skills. If you everwonder about the usefulness of any of this, or you get the choice to skip a fewtopics - you are doing it wrong. Good engineers use these concepts EVERYDAY.9 Q- L5 n3 ]0 C1 e) D D$ w% s0 _
工程数学:空间变换、傅里叶分析、复变函数、位势理论、偏微分方程组、插值/曲线拟合、优化理论。结合编程技能,实践它们。如果认为有些没用跳过去,都是错误的。好的工程师每天都用它们。
3 q: E: B; y- j5. Dynamics/Advanced dynamics - Take this in the Physics department.ME profs screw it up here again, they focus on the mechanics of algebraicmanipulation and don't explain concepts very well. Your objective would be tobe able to independently construct FBDs of complex interacting mechanisms, andgenerate classical non/autonomous, non/linear differential equations thatdescribe the time-history of the system. Develop a familiarity with indexnotation and tensors and operator spaces. Your indicial programming experiencewill really help you here.
1 L) P' C6 O- n* t* [动力学/高等动力学:听物理系的力学课,机械的教授总是用代数的方法对待力学,对概念解释不够好。你的目标是能独立建立复杂机械的FBDs(应该指自由体受力图),能写出经典的随时间变化系统的自治/非自治、线性/非线性微分方程,熟悉指标记法,张量和算子空间,你的编程经验可以帮助你。" T# c6 @7 v' i4 f D/ ?
6. Statics/Solid mechanics - Master Timoshenko Goodier/Theory ofelasticity. Even if it takes you the rest of your life. If you got throughpoint 2, you should be able to point out the inefficiency of the SFDs and BMDsand Mohr's circle concepts. Try visualizing the simple cases while cognizantthat life is not simple. Use your programming finesse to program numerical solutionsto your ODEs and equations.* m! [) [8 g% |1 g& t
静力学/固体力学:精通铁木辛柯的弹性理论,即使花去你的余生。如掌握了第2点,你应该能知道SFDs和BMDs的无效和莫尔圆概念。要尝试把简单的例子图形化,其实这并不简单。使用你的编程技能去解ODEs方程(常微分方程)的数值解。
( q- C' e5 o9 J3 \# l" d) [, k7. Vibration theory - If you actually got through point 2,you will find this a breeze. All they do here is study a second order,non/homogenous, non/autonomous non/dimensionalized ordinary differentialequation and the effects of parametric variations (mkc, forcing frequency). Ifyou got through 5, you should be able to figure out all the base excitation,seismic perturbation, isolation, rotating machinery concepts. If you gotthrough 6, then plates/beam vibration problems. If you got through 2 & 4,you will be able to work through MDOF systems and all the modal analysistechniques. This is where you segue to coupled SHO/QHO concepts./ A+ n* H7 ?. |
振动理论:如果你熟练掌握了第2点,这会比较轻松。振动理论主要是研究二阶、齐次/非齐次、自治/非自治、变参/非变参常微分方程。如你掌握了第5点,你会知道怎么计算响应、地震扰动、减震、旋转机械等。掌握第6点,可以解决板、梁的振动问题。同时掌握2和4,应能够解多自由度系统,掌握模态分析方法。在这里还要学习耦合的SHO/QHO概念。
1 X+ X2 Y$ A9 H4 C8. Thermodynamics/Fluidics - I am not the right person to adviseon these topics. But they are pretty straightforward at the undergraduate leveland mostly applications of differential equations and continuum mechanics.; L; K+ X v9 A* N9 v7 {
热力学/流体力学:我不适合对这部分内容发表意见,但它们在本科阶段并不难,并且主要是应用微分方程和连续介质力学。
& [2 ~. T2 ~4 \% VIf you followed instructions so far, everything else is a straightforwardapplication of what you should have learned by now. That's all you really needto be a degree'd mechanical engineer - math and physics. Everything else is aspecialization and extension of domains from the presented fields into specifictasks. This is also where you start encountering professional jargon. And don'tlet terms/eponyms scare you off.4 [6 Y% P2 I6 T2 ]) N1 i
如果你按上面执行了,以后就是对你上面所学的简单应用。这是一个机械工程师应该真正掌握的,数学和物理。你以后碰到的一切专业问题,都是特定的任务,只是针对上面领域的应用与扩展,以后你会开始碰到一些的专业术语,不要被专有名词和术语吓到。
+ I' ~ ?: C. `Also mechanical engineers don’t generally design machines from scratch –hobbyists and mathematicians do. We follow standards for our industry, mix andmatch components, or use well defined algorithms to create a new one. There areconcepts in kinematic chains, algebraic linkage synthesis and design that areused here. So sure you can read about gears and machinery and 4-bar linkagesand cams and genevawheels, but it is highly improbable that you, as an ME, will create one. It ismore likely that a technician or a sheet metal worker will create somethingutterly brilliant. So if that’s what you want to do, figure on grad school. Youcan however use your solid mechanics skills to design the components towithstand pyrotechnic impacts.
/ U; c0 b7 ?1 j. ?6 Q爱好者和数学家也设计机器,但机械工程师不从零开始。我们遵循工业标准,组合并匹配已有组件,用已有的算法来创造新东西,例如运动链、连杆综合和设计。确保读过齿轮、机械学、4连杆机构、凸轮、间歇传动轮。有可能,工程师创造这些机构并不在行,一个技师或工人会做得更好,但你能用固体力学知识去设计好零件,承受极大的冲击力。
8 f# P [8 [! m4 P! cI skip over manufacturing and 'product engineering' classes because they areshit, when taught in school. You can't master manufacturing sitting in a class,and you certainly are never going to learn enough in school about how to designa full product. Those axiomatic design principles and synectics and productlifecycle management and ideation and Gantt charts and brainstorming processesare bullshit. Nobody in real life does that. Those who do, are not engineers.If you really want to understand manufacturing, skim through ManufacturingProcesses for Design Professionals by Rob Thompson, then go talk with people onshop floors, or watch how it's made on Youtube. If you really want tounderstand the product design process, follow Kickstarter h/w startup stories.
忽略掉’制造’、‘产品工程’课程,因为在学校教这些,毫无价值。你不可能在教室里精通制造,你也不可能在学校学会设计一个好机器。那些公理设计原理、产品生命周期管理、甘特图、头脑风暴都是胡说八道。没人真的那样做,那样做的人,不是工程师。如果你想了解制造,粗读一下RobThompson的《面向设计的制造方法》,去跟车间的人交谈,去看youtube上的how it’s made。想去了解产品设计过程,去看Kickstarter。' n! L* ? z# N8 p! j% s: ` E6 N7 F) H
Do not ever waste your time on survey or presentation courses. Avoid attendingschool seminars if you are not interested in the topic. You should attend allseminars that promise to show you math or process or cool videos. You want tokeep an ear out for examples and case studies that show explicit details of howsystems get modeled/implemented using math or experiments. Avoid 'design'seminars (usually a peddler from Wharton or Sloan or Kellog) - they are pretty,but pointless.
) E. f3 F/ u* }7 y1 `6 k不要浪费时间在概述或介绍类课程上,不要参加不感兴趣主题的讨论课。应该参加承诺展示你数学、方法或酷视频的讨论课。要时刻关注这样的案例研究:清楚详细的展示如何利用数学或实验对系统进行建模或实现。避免‘设计’研讨(通常来自Wharton、Sloan 或Kellog商学院),这些看着美好,但毫无用处。/ G6 R. `9 z# i0 z
Take all lab classes you can. ALL of them. All you can afford. Pottery too, ifyou have that option. Just drop in to watch other people work if you got thefree time. Pottery as well. Use the equipment there till you break it - You arepaying for it anyway. Make all the mistakes you can ever imagine there. ANDDON'T FUCK AROUND IN THE MACHINE SHOP BRO!!!* A$ C* D$ k& |& T) c
参加所有实验课,只要你负担得起。在实习车间,有空余时间去看别人如何工作。使用哪里设备,直到弄坏,你已经为这买了单。尽可能犯错,但不要在车间那里打闹。
\4 m$ C+ l+ X4 FAmongst other advice, find a PhD student about to graduate every year and getthem to mentor you. Don’t believe in that ‘I am busy’ crap – they all areusually on Quora or editing Wikipedia anyway. I speak from experience. Pickpeople from diverse fields – machine learning, operations optimization, publicpolicy, neurobiology, kernel development … You want to understand what they do,how they do it, what they use to do it and create a possible job network. Youdon’t want seniors to mentor you because, unless they go to grad school, theywill never be in any position to introduce you to great opportunities on timescales relevant to your interests. ~# S: d5 P6 N1 p P6 b, f) |& {( C: n
, K2 F( B' g) t4 j, UNow, let's talk about being a professional mechanical engineer
: P/ R# t, x6 K7 Z* @0 w* ?下面谈谈如何成为专业的机械工程师
5 N( g0 O* t H1 y3 O0 K% {9. ReadISO/ASME/ASTM/ASTC/ASMI (standardsorganizations) standard practices. That's the only place where they really tellyou how theory meets practice. If you believe your university doesn't provideyou access to those - Sue them! Beg/borrow/steal. Whatever. But if you reallywant to know how things are done; Read the standards. Not the website and theirdiscussion forums. Read the standards.$ m* P+ C, M* ` S; i+ k' @8 E" A) `
读ISO/ASME/ASTM/ASTC/ASMI 这些标准文件,那才能告诉你理论如何满足实践,如果你的大学没有,投诉他们!跪求、借、偷,用任何方法。想要知道事情如果做的,去读标准,不是在网站或必威APP精装版下载。+ ~& w+ y' ]8 R' J) T
4 M7 j& c! y) y6 `
后面还有,大家可以自己看吧。
7 V' `* e$ g! M* ^: c/ |% c% {7 `
1 T V7 X( r6 u