Discussion Central

Expand all | Collapse all

Computational Tools for beginning engineers

  • 1.  Computational Tools for beginning engineers

    BOARD OF DIRECTORS
    Posted 02-13-2019 07:32
    ​Hi
    An academic colleague recently asked me what computational tools would be useful for a new B.S. Chemical Engineer to be familiar with. I work in laboratory research and, although I need to manage large amounts of data, I have never needed a computational tool more complicated than Excel.  Could you please offer your opinion on any of these tools? Any input is valuable.
    Thank you!


    Matlab, Abacus, Polymath, Solidworks, Aspen, Comsol, Minitab, Excel, Supercomputer experience or any other 




    ------------------------------
    Marykathryn Lee
    Senior Engineer
    ExxonMobil Corporate Strategic Research
    Plainfield NJ
    ------------------------------


  • 2.  RE: Computational Tools for beginning engineers

    Posted 02-13-2019 14:22
    Edited by Shahzeb Hassan 02-13-2019 14:23
    Dear Mary,

    For the fresh chemical engineers, i would recommend to learn simulation softwares like Aspen Hysys, Unisim, Pro-II, Chemcad, prosim, Promax etc. Select any one from the list & Start using getting started tutorials for hands on practice. All of these softwares works on the principle of thermodynamics (PR, SRK equations) , Pressure , Temperature, & Flow. if anyone spent his or her time in any of these software then he or she will get a valuable skills. Working with different examples & solving the theoritical problems through a simulation based solution will also broaden their mind with respect to chemical engineering concepts.

    Secondly, for laboratory large data management Honeywell PHD (process Historian) & Aspentech product like Info plus ~ IP 21 can be selected. you can also go for LIMS. Usually these softwares also taking data from DCS into their server from where an end user has an access to analyze the bulk process data. Calculation & case studies can also be performed by using laboratory results data at the same time. Knowledge of these softwares are valuable for process engineers exiting universities.

    ------------------------------
    Shahzeb Hassan ME,BE Process Engineering
    Executive Process engineer, PRL
    Karachi
    ------------------------------



  • 3.  RE: Computational Tools for beginning engineers

    SENIOR MEMBER
    Posted 02-14-2019 09:59
    Edited by Samuel Clark 02-14-2019 10:16
    I've found that learning and using Python has been very valuable in my career as a Chemical Engineer, for the following reasons:

    1. Python is open source and can be used on any operating system.
    2. Python is a general-purpose language and can be used to solve a wide range of problems.
    3. The numpy package enables very efficient analysis of large amounts of data.
    4. The matplotlib package lets you make publication-quality plots.
    5. The scipy package provides many built-in functions for statistical analysis.
    6. The Jupyter notebook is a nice environment to work in, similar in some ways to Mathematica's interface.
    7. The whole Python ecosystem is quite mature and there's a wealth of information online to get started.

    For getting started with Python, I recommend getting the Anaconda distribution because it has all of the most popular packages included and ready to use.

    It is of course also useful and necessary to learn other domain-specific computational tools for CAD, CFD, and thermodynamics modeling.  But having the ability to program in a general-purpose language is a great asset because then you will be able to solve custom problems that the designers of mainstream software tools never anticipated.

    ------------------------------
    Samuel Clark
    Senior Project Engineer
    CPFD Software LLC
    Albuquerque NM
    ------------------------------



  • 4.  RE: Computational Tools for beginning engineers

    SENIOR MEMBER
    Posted 02-15-2019 17:32
    I second this. Python or any similar language is an invaluable tool for really anyone who deals with data. Thanks for posting this @Samuel Clark

    ---------------------------------
    Michael Saura
    Process Safety Consultant - Founder
    Saltegra Consulting LLC
    www.linkedin.com/in/
    michael-s-8604202a
    ---------------------------------





  • 5.  RE: Computational Tools for beginning engineers

    FORUM TREASURER
    Posted 02-28-2019 13:21
    I concur!  For new/aspiring chemical engineers, I recommend Python as the single best "data superpower" to advance your career.  Is there interest in the community to create AIChE material (webinar or other medium) to introduce "Python for Chemical Engineers" ?

    ------------------------------
    Jacob Albrecht
    Bristol-Myers Squibb Company
    New Brunswick NJ
    ------------------------------



  • 6.  RE: Computational Tools for beginning engineers

    SENIOR MEMBER
    Posted 02-28-2019 20:17
    I'm interested.




  • 7.  RE: Computational Tools for beginning engineers

    SENIOR MEMBER
    Posted 03-01-2019 00:10
    I'd be happy to be involved with this.

    ------------------------------
    Michael Saura
    Process Safety Consultant - Founder
    Saltegra Consulting LLC
    www.linkedin.com/in/
    michael-s-8604202a
    ------------------------------



  • 8.  RE: Computational Tools for beginning engineers

    BOARD OF DIRECTORS
    Posted 03-01-2019 08:29

    I think this is a great idea. How can I help?

     

    Kathy Lee

    ExxonMobil Corporate Strategic Research

    1545 Rt. 22W, Clinton Township

    Annandale, NJ  08801

    Phone (908) 335-2393

    Fax (908) 335-3355

     

    "Nevertheless . . ."

     

     






  • 9.  RE: Computational Tools for beginning engineers

    FORUM TREASURER
    Posted 03-04-2019 17:10
    Fantastic- one way to promote Python would be to submit an AIChE Academy content proposal here.  We would need a description, the names of presenters (assuming a webinar), and a content outline.  We can start another thread on Discussion Central, or reach out to the CACHE group on LinkedIn for ideas on presenters and content.  Some ideas would be to do some nonlinear regression, or to pull data from web APIs e.g. PubChem.

    It's great to hear interest, we can see this through and make something valuable for the community!

    ------------------------------
    Jacob Albrecht
    Bristol-Myers Squibb Company
    New Brunswick NJ
    ------------------------------



  • 10.  RE: Computational Tools for beginning engineers

    FORUM TREASURER
    Posted 04-07-2019 21:02
    I've submitted "Python for Chemical Engineers" as a proposed one-hour webinar on AIChE Academy given the interest so far.  I put myself down as an instructor, but any additional instructor volunteers would be appreciated!  The goal will be to provide an overview to describe how Python can be used, and where it fits in the ChE toolbox.

    ------------------------------
    Jacob Albrecht
    Bristol-Myers Squibb Company
    New Brunswick NJ
    ------------------------------



  • 11.  RE: Computational Tools for beginning engineers

    SENIOR MEMBER
    Posted 04-07-2019 21:34
    Is there a way to "vote" for your proposal so they see it has interest in the membership?




  • 12.  RE: Computational Tools for beginning engineers

    SENIOR MEMBER
    Posted 04-08-2019 05:53
    Before we get too far with Python. I have "tinkered" with both Python and Java and they seem to be about the same. Does anyone know the difference between the two and which one might be better for chemical engineers?

    ------------------------------
    Robert Kneile
    Founder and Owner
    Radical Koncepts LLC
    Mentor OH
    ------------------------------



  • 13.  RE: Computational Tools for beginning engineers

    SENIOR MEMBER
    Posted 04-09-2019 11:39
    Jacob,


    This is a fantastic idea.  I find junior engineers have a hard time justifying corporate licenses for the more expensive software packages.  A free and powerful tool like Python would allow them to present a working demo, if not continue using it for their computational needs.

    I'd like to assist in preparing/presenting such a course.  I imagine there would have to be a brief intro to the language and syntax before diving into nonlinear regression.  We should also add solving systems of ODEs as a topic (for simultaneous mass and energy balances, etc.).

    Andy Young
    Research Engineer
    NREL | Golden, CO

    ------------------------------
    Andrew Young
    Research Reactor Controls Engineer
    National Renewable Energy Laboratory
    Lakewood CO
    ------------------------------



  • 14.  RE: Computational Tools for beginning engineers

    FORUM TREASURER
    Posted 04-10-2019 00:13
    Thanks Andy- I'll let you know when (if?) I get word back on the webinar proposal.  To Robert's question, it may be worthwhile to also briefly weigh the pros and cons of Python relative to other languages.

    ------------------------------
    Jacob Albrecht
    Bristol-Myers Squibb Company
    New Brunswick NJ
    ------------------------------



  • 15.  RE: Computational Tools for beginning engineers

    SENIOR MEMBER
    Posted 04-11-2019 00:53
    The Virtual Local Section is planning to have a presentation at a future meeting about the advantages of Fortran vs. Python vs. C++ (for those of us who see these new languages coming up and wonder what the advantages are).  Maybe we could coordinate.

    ------------------------------
    -Kirsten (Virtual Local Section Chair)

    Kirsten Rosselot
    Process Profiles
    Calabasas, CA United States
    ------------------------------



  • 16.  RE: Computational Tools for beginning engineers

    SENIOR MEMBER
    Posted 04-11-2019 16:37
    If possible, can we include Java as part of the comparison with other programming software packages with the Virtual Local Section presentation?

    ------------------------------
    Robert Kneile
    Founder and Owner
    Radical Koncepts LLC
    Mentor OH
    ------------------------------



  • 17.  RE: Computational Tools for beginning engineers

    LIFE MEMBER
    Posted 04-12-2019 12:58
    As a Fortran programmer since 1967, I have witnessed many alternative languages come and go.  The main arguments I heard over the years were as follows:

    (1) Fortran didn't have a graphics display capability for complex information
    (2) It did not have strong typing requirements for variables (e.g., explicit declarations for real and integer variables)
    (3) It did not have structures of the type available elsewhere
    (4) A lot of older Fortran code had unnecessary GOTO statements that made deciphering such "spaghetti" code harder
    (5) It did not support "modular" programming
    (6) Passing information about array dimensions from calling programs was cumbersome
    (7) On-the-fly creation of local array variables was not possible
    (8) Debugging Fortran code was difficult or cumbersome, and so forth.
    Well, a lot has happened to Fortran which has had an impressive number of significant upgrades from the original IBM Fortran to Fortran II, Fortran 66, Fortran 77, Fortran 90, Fortran 95, Fortran 2003, Fortran 2008, and others yet to come.  The Fortran development community boasts an amazing collection of experts who are fully aware of developments in other languages.  Over the years, they have shown an incredible devotion to the idea that Fortran can evolve gracefully and keep abreast of such developments without "throwing out the baby with the bathwater".
    IMHO, with the possible exception of item (1) above, all other issues with Fortran have now been resolved in a demonstrably satisfactory manner.  We should note that it remains quite feasible to link Fortran code to other graphics packages to improve user interfaces and visual display of complex information.  Here, Fortran becomes a superior number cruncher behind the graphics displays.
    Today, there are quite sophisticated software packages available that convert "old" Fortran code into easier-to-maintain equivalent Fortran 95 code in a completely reliable manner.  One such example is the Polyhedron package that I have used for quite a long time.
    What the critics of Fortran fail to mention is that, unlike the other scientific programming languages, Fortran has remained true to its commitment to allow older code to be re-used UNCHANGED.  There are many millions of lines of amazing, well-tested Fortran programs (many written by the world's foremost mathematicians and numerical methods experts for solving a  tremendous variety of complex problems) that are available free of charge on the internet.  These cover just about every area of mathematics, science, and engineering.  There is no need to change these one iota, as they have always worked extremely reliably.
    Another major factor in my thinking is that Fortran compilers are blazingly fast and, despite the fantastic increases in CPU wordlength and speed in today's computers, this matters a great deal when solving truly large problems.  An example would be large-scale non-linear optimization when millions of equations must be handled simultaneously and results must be made available in real-time so that plants run more efficiently and safely.
    This is not to say that other languages or platforms (such as Maple or Julia) are not suitable for developing certain numerical algorithms more efficiently and reliably.  Julia, in particular, allows calls to existing Fortran code to be interspersed in Julia code as may be needed.  Once developed, my preference is to convert such algorithms into Fortran for general use.  However, this is a separate matter from the issue of language preference for things that must have a long shelf-life.
    I would be gratified if the forthcoming forum addresses the items I have discussed above in greater depth.
    Thank you.


    ------------------------------
    Umesh Mathur, P.E.
    Technology Advisor
    Aggreko, LLC
    Houston, Texas
    ------------------------------



  • 18.  RE: Computational Tools for beginning engineers

    SENIOR MEMBER
    Posted 04-13-2019 10:30
    Umesh

    It was interesting to read your perspective on FORTRAN. At my university, we no longer teach FORTRAN to undergraduate engineers, and we are not alone. However, it remains the language of choice for atmospheric modeling, because of the advantages that you list.

    Val

    ------------------------------
    Valerie Young
    Department Chair
    Ohio University
    Athens OH
    ------------------------------



  • 19.  RE: Computational Tools for beginning engineers

    LIFE MEMBER
    Posted 04-15-2019 10:55
    Hi, Val:
    **
    Many thanks for your response.  My concern is very simple: many major commercial packages for chemical engineers are written in Fortran and anyone interested in software development (or even maintenance) would be unable to contribute if they have never learned and practiced programming in Fortran.  Learning about algorithms and solving small-scale problems using pre-programmed packages (Maple, Matlab, Python, Julia, etc.) is extremely important but really is quite different from learning to program a major application from scratch using language compilers.  I do not quarrel with educators teaching students to think about algorithms and numerical methods using such pre-programmed packages: this surely serves to minimize frustration caused by elementary programming errors since they receive instant feedback.  However, I am concerned about students never learning to program ANY numerical methods from scratch, as each of these platforms incorporates a bevy of solvers for linear algebra and numerical methods.
    **
    I think it's fair to say that Fortran will not die anytime soon, for reasons outlined in my original post.  I had some interesting but nasty surprises when experimenting with some newer compiled languages when I learned C and dabbled in C++ (because of the claimed superiority of these platforms to help avoid writing bad code).  Well, I found that an undisciplined programmer can just as easily write lousy, spaghetti code in these languages as in Fortran.  The other problem was that transporting code from one compiler to another was often an extremely tedious business because of non-standard conventions, e.g., in headers.  Also, many such compilers produced noticeably slower executables than Fortran, which matters a lot, especially for larger applications.  (I'm sure their execution speed would have improved by now.)
    **
    I think that an additional programming course should be offered, even to undergraduates in engineering and science, for compiled programming languages including Fortran, C, and C++, the pre-requisite being the first algorithms course.  This way, they would be better prepared for a career that requires, at least, understanding how robust code must be created that can be embedded in larger applications, e.g., for modeling complex chemical processes, especially chemical reactors.  Too many undergrads think that all wisdom is encapsulated in process simuatators or other similar commercial packages, so there is no need for them to program anything; they don't even learn Visual Basic for relieving the tedium of cell formulas in Excel.
    **
    Thank you for your response as it really made me think, and I do apologize for this lengthy post.
    **
    Umesh


    ------------------------------
    Umesh Mathur, P.E.
    Technology Advisor
    Aggreko, LLC
    Houston, Texas
    ------------------------------



  • 20.  RE: Computational Tools for beginning engineers

    LIFE MEMBER
    Posted 04-15-2019 11:28
    ... process simulators ...

    ------------------------------
    Umesh Mathur, P.E.
    Technology Advisor
    Aggreko, LLC
    Houston, Texas
    ------------------------------



  • 21.  RE: Computational Tools for beginning engineers

    LIFE MEMBER
    Posted 04-15-2019 11:24
    This would be really interesting, Kirsten.  Please keep us posted when it's scheduled.
    **
    Umesh

    ------------------------------
    Umesh Mathur, P.E.
    Technology Advisor
    Aggreko, LLC
    Houston, Texas
    ------------------------------



  • 22.  RE: Computational Tools for beginning engineers

    SENIOR MEMBER
    Posted 04-02-2019 10:21
    I like the idea of Python user community and learning tools.

    ---------------------------------
    Philip Russell


    McComb MS
    ---------------------------------





  • 23.  RE: Computational Tools for beginning engineers

    FELLOW
    Posted 04-12-2019 09:31
    Great idea Jake.  This definitely serve a wide community of engineers whether entering the field or with established careers seeking to expand their technical skills.
    Let me know if you need any help.
    Cheers,

    ------------------------------
    Jose Tabora
    Research Fellow
    Bristol-Myers Squibb Company
    New Brunswick NJ
    ------------------------------



  • 24.  RE: Computational Tools for beginning engineers

    SENIOR MEMBER
    Posted 07-29-2019 07:09
    I like the idea of creating AIChE material to introduce Python for Chemical Engineers.

    ------------------------------
    Sachin Mahajan ING
    Senior Analyst Production Planning
    ADNOC Onshore
    Chorniche, Abu Dhabi
    ------------------------------



  • 25.  RE: Computational Tools for beginning engineers

    SENIOR MEMBER
    Posted 07-30-2019 15:54
    Wanted to let everyone know that the presentation Milan Curcic gave at the Virtual Local Section meeting last week has been mounted in AIChE Academy at https://www.aiche.org/academy/webinars/should-i-py-or-should-i-fortran .

    ------------------------------
    -Kirsten (Virtual Local Section Chair)

    Kirsten Rosselot
    Process Profiles
    Calabasas, CA United States
    ------------------------------



  • 26.  RE: Computational Tools for beginning engineers

    LIFE MEMBER
    Posted 08-09-2019 21:52
    I am delighted to see the responses to this very pertinent topic.

    For my part, I must recommend Julia as a superior alternative to other interpreted languages such as Python.  Some background is appropriate: Julia was developed at MIT a few years ago and incorporates a Just-In-Time (JIT) compiler.  This improves execution speed for an "interpreted language" close to something one can get only from compiled languages such as Fortran or C.  For my numerically-intensive or iterative problems, I found that the speed ratio is almost invariably better than 5:1 and can easily exceed 20:1.  Also, a great advantage (for an old-timer like me) is that all Julia arrays use an index of 1, so you would get [1 2 3 ...10] for a ten-element array.  In Python, the index is 0 which yields [0 1 2 3 ... 9]; this messes me up all the time.

    Julia has a very rich library of "packages" similar to Python that are contributed by an army of volunteers.  These are scrutinized thoroughly before acceptance.  Julia has its own graphics package but can also call other more sophisticated packages such as Gnuplot quite easily.  Another great advantage is that it can incorporate Fortran or C language code seamlessly by reference.  This is a great help when you have well-tested code for numerical methods already available in Fortran or C.  Generally, it is wise to avoid re-inventing the wheel - I have learned many painful lessons over the last 40+ years.

    Before jumping onto the Python bandwagon, you may wish to try Julia.  There is also a "Professional" version for corporations that provides paid support; however, a free Professional version for non-paying customers is available that incorporates all major mathematical packages - these update themselves automatically.  Julia is undergoing a frenetic pace of development and is likely to become far better known soon for serious computational work, IMHO.  It is already adopted by many major corporations and national labs because of its speed and debugging capabilities.

    Choosing such software for day-to-day professional work is a decision that must not be taken lightly, as it would likely influence your professional life forever.

    Thank you.



    ------------------------------
    Umesh Mathur, P.E.
    Technology Advisor
    Aggreko, LLC
    Houston, Texas
    ------------------------------



  • 27.  RE: Computational Tools for beginning engineers

    SENIOR MEMBER
    Posted 03-09-2019 00:08
    Yes. Python is very useful. Since machine learning and AI is becoming significant in Chemical Engineering this is becoming an essential part.

    ------------------------------
    Dilantha Subasinghe
    Senior Lecturer GII
    University of Moratuwa, Sri Lanka
    Moratuwa
    ------------------------------



  • 28.  RE: Computational Tools for beginning engineers

    Posted 03-13-2019 00:17
    I think the information about Python and data analytics is very encouraging and supportive of future applications in Chemical Engineering.

    ------------------------------
    Sarathi Sarbadhikary EIT
    Sr. PMC Process Engineer
    Technip FMC
    Kolkata
    ------------------------------



  • 29.  RE: Computational Tools for beginning engineers

    SENIOR MEMBER
    Posted 02-14-2019 18:32
    ASPEN was big when I was undergraduating, I do not know if it still is. Maybe (Microsoft) Access for datasets with complex relationships?




  • 30.  RE: Computational Tools for beginning engineers

    LIFE MEMBER
    Posted 02-15-2019 06:55
    ​I learned many of these in school, but unless you are working in an area where you specialize in computer modeling, Excel is by far the most used.  For statistical analysis, SAS JMP is most common, at least in the pharmaceutical industry, I have only used Minitab once.  Mathcad is also used and that is one I did not study before going to industry (pharmaceutical manufacturing).

    ------------------------------
    Dawn Downey
    Sr. Consultant Engineer
    Eli Lilly & Company
    Indianapolis IN
    ------------------------------



  • 31.  RE: Computational Tools for beginning engineers

    SENIOR MEMBER
    Posted 02-16-2019 16:07
    I thought of one I formerly used: PTC's free version of Mathcad. I once did freelance work for a publisher of textbooks. The annoying bit of changing units (USCS <> SI) was no longer educational after a page or so of problems, so I used it to do the conversions. That it could "figure out" what the end units should be but let you change them was nice too. (I am independent of that company.)




  • 32.  RE: Computational Tools for beginning engineers

    SENIOR MEMBER