About Us
About Us
20+ years of shaping engineering and design
I'm a The Finite Element Method for Problems in Physics.
An introduction to the finite element method as applicable to a range of problems in physics and engineering sciences. The treatment is mathematical, but only for the purpose of clarifying the formulation. The emphasis is on coding up the formulations in a modern, open-source environment that can be expanded to other applications, subsequently.
The course includes about 45 hours of lectures covering the material I normally teach in an introductory graduate class at University of Michigan. The treatment is mathematical, which is natural for a topic whose roots lie deep in functional analysis and variational calculus. It is not formal, however, because the main goal of these lectures is to turn the viewer into a competent developer of finite element code. We do spend time in rudimentary functional analysis, and variational calculus, but this is only to highlight the mathematical basis for the methods, which in turn explains why they work so well. Much of the success of the Finite Element Method as a computational framework lies in the rigor of its mathematical foundation, and this needs to be appreciated, even if only in the elementary manner presented here. A background in PDEs and, more importantly, linear algebra, is assumed, although the viewer will find that we develop all the relevant ideas that are needed. The development itself focuses on the classical forms of partial differential equations (PDEs): elliptic, parabolic and hyperbolic. At each stage, however, we make numerous connections to the physical phenomena represented by the PDEs. For clarity we begin with elliptic PDEs in one dimension (linearized elasticity, steady state heat conduction and mass diffusion). We then move on to three dimensional elliptic PDEs in scalar unknowns (heat conduction and mass diffusion), before ending the treatment of elliptic PDEs with three dimensional problems in vector unknowns (linearized elasticity). Parabolic PDEs in three dimensions come next (unsteady heat conduction and mass diffusion), and the lectures end with hyperbolic PDEs in three dimensions (linear elastodynamics). Interspersed among the lectures are responses to questions that arose from a small group of graduate students and post-doctoral scholars who followed the lectures live. At suitable points in the lectures, we interrupt the mathematical development to lay out the code framework, which is entirely open source, and C++ based.
Our Strategy
Producer Made with Philosophy Model Design
I'm a The Unix Workbench.
Unix forms a foundation that is often very helpful for accomplishing other goals you might have for you and your computer, whether that goal is running a business, writing a book, curing disease, or creating the next great app. The means to these goals are sometimes carried out by writing software. Software can’t be mined out of the ground, nor can software seeds be planted in spring to harvest by autumn. Software isn’t produced in factories on an assembly line. Software is a hand-made, often bespoke good. If a software developer is an artisan, then Unix is their workbench. Unix provides an essential and simple set of tools in a distraction-free environment. Even if you’re not a software developer learning Unix can open you up to new methods of thinking and novel ways to scale your ideas.
This course is intended for folks who are new to programming and new to Unix-like operating systems like macOS and Linux distributions like Ubuntu. Most of the technologies discussed in this course will be accessed via a command line interface. Command line interfaces can seem alien at first, so this course attempts to draw parallels between using the command line and actions that you would normally take while using your mouse and keyboard. You’ll also learn how to write little pieces of software in a programming language called Bash, which allows you to connect together the tools we’ll discuss. My hope is that by the end of this course you be able to use different Unix tools as if they’re interconnecting Lego bricks.
​
Unix Tools: Data, Software and Production Engineering
Processing information is the hallmark of all modern organizations, which are increasingly digital: absorbing, processing and generating information is a key element of their business.
Being able to interact flexibly and efficiently with the underlying data and software systems is an indispensable skill. Knowledge of the Unix shell and its command-line tools boosts the effectiveness and productivity of software developers, IT professionals, and data analysts.
The Unix tools were designed, written, actively used and refined by the team that defined the modern computing landscape. They allow the performance of almost any imaginable computing task quickly and efficiently by judiciously combining key powerful concepts. The power of Unix tools for exploring, prototyping and implementing big data processing workflows, and software engineering tasks remains unmatched. Unix tools, running on hardware ranging from tiny IoT platforms to supercomputers, uniquely allow an interactive, explorative programming style, which is ideal for the efficient solution of many of the engineering and business analytics problems that we face every day.
Through the use of Unix tools:
-
Software developers can quickly explore and modify code, data, and tests.
-
IT professionals can scrutinize log files, network traces, performance figures, filesystems and the behavior of processes.
-
Data analysts can extract, transform, filter, process, load, and summarize huge data sets.
Our Values
01
Discretion
I'm a paragraph. Click here to add your own text and edit me. I’m a great place for you to tell a story and let your users know a little more about you.
02
Innovation
I'm a paragraph. Click here to add your own text and edit me. I’m a great place for you to tell a story and let your users know a little more about you.
03
Partnership
I'm a paragraph. Click here to add your own text and edit me. I’m a great place for you to tell a story and let your users know a little more about you.