Simulation

--

From the inception of the U.S. patent system in 1790 until 1880, the Patent Office required that each patent application be submitted with a scale model of the invention. The models, usually made of wood by highly skilled carpenters, gave the patent examiners something tangible to use when evaluating the novelty of each patent idea.

The model requirement was repealed long ago, but modeling has continued to play an important role in research, development, and innovation. Automobile makers, architects, and aircraft designers have long used small-scale models of their ideas — partly to get a feel for what they would look like in “real life,” but also for market research and engineering testing, such as aerodynamics testing in wind tunnels.

However, physical models have drawbacks. They are often time-consuming and expensive to make — an important consideration when being first to market with an innovation can mean the difference between commercial success and failure. Furthermore, some models, being necessarily smaller and lighter, may not behave the same in testing as their full-size counterparts, resulting in bad data and designs that don’t perform to expectations.

Fortunately, advances in computer-aided design (CAD) software and computer hardware performance have enabled the use of virtual models. Not only can objects be designed on a computer and displayed visually using three-dimensional graphics rendering, they can be tested in simulated physical conditions using the same CAD software in which they were designed.

Simulation in CAD

The traditional use of CAD software in systems development was concerned only with the size and shape of an object, whether a tiny part for a machine or a giant ship, aircraft, or building. But CAD software users, recognizing the value of simulation, began to demand the ability to test their virtual objects in virtual environments, and CAD software developers were happy to oblige.

In order to test a virtual object under conditions that approximate the real world as closely as possible, simply knowing the size and shape of the object is not enough. You also need to know its physical properties, and you need to be able to represent these properties in the computer model. Further, you need to know how these properties influence the performance of the object under test. This is usually done with equations — that is, a mathematical model of the system’s behavior, to go along with the system’s shape, size, and material properties.

For example, when testing a virtual aircraft, it’s important to know how the air flowing around the wing generates lift. We have a well-established body of mathematical equations to handle the physics of airfoils, and they can be incorporated into the CAD representation of the system. Further, the materials used in the wing are important, because they determine how heavy the wing is and how it bends and flexes under load and in various situations, such as takeoff, landing, and turbulence. Thus, physical properties such as coefficient of friction and various parameters that determine the strength of the wing structure must also be incorporated into the model.

An important approach to simulation modeling in CAD is the use of finite element modeling (FEM). Physical phenomena are often described by complex equations that are impractical or impossible to solve for every point in an object. FEM addresses this problem by subdividing the object into small three-dimensional chunks; CAD software enables meshing, the process of creating a 3D grid within the object to define the subdivisions.

Meshing

With the mathematical model and meshing in place, model testing can be conducted with a variety of simulated experiments under multiple virtual scenarios. Furthermore, the design can be tweaked and the simulations re-run, which is often impractical to do with a real system.

Who Uses Simulation Modeling?

Simulation modeling is used in all engineering disciplines and in a broad range of industries as well as academia. Here are a few examples:

  • Electrochemistry: Researchers in next-generation battery technology use simulation to design new micro- and nano-scale materials to increase battery capacity, reduce charging time, increase overall battery lifetime (charge-discharge cycles), and increase battery safety.
  • Telecommunications: Designers of 5G telecom equipment use simulation for everything from designing base station antennas for maximum range to determining the placement of base stations for maximum coverage to solving problems in providing service in moving trains and buses. Designers also test new communications protocols by modeling base stations, mobile devices, and algorithms under various communication scenarios.
  • Geology: By understanding the mathematical relationships among various types of soils, rocks, and subterranean structures, geologists and seismologists can use simulation to predict the effects of different types of earthquakes on the amount of surface shaking that would occur.
  • Optics: Engineers can simulate the optical properties of materials — including so-called metamaterials, which have nano-scale surface designs that alter their properties — to design and test new lenses and other optical instruments for many different applications.

It’s important to note that simulation modeling is not limited to designing and testing physical objects, although these applications lend themselves to modeling in CAD software. Business processes can also be modeled and simulated to test their performance. Using modeling and simulation, a business can get answers to questions such as:

  • How many technical support personnel do I need to staff? Do I need to temporarily add staff for a big product launch?
  • If I add a shipping clerk to my logistics team, what effect will it have on our order fulfillment performance?
  • If we add a product line, can our manufacturing infrastructure handle the extra demand, or do I need to add a production line and personnel? What if I outsource the production instead?
  • If I automate a manufacturing process, will the warehouse be able to absorb the additional products?

Key Benefits of Simulation

Simulation modeling — both in engineering and business disciplines — can realize numerous benefits for an organization that uses it. The main benefits are:

  • Shorter design and testing cycles: The ability to modify and re-test a virtual design means you don’t have to spend time (or money) building and testing multiple prototype iterations. You can settle on a design that satisfies the requirements in simulation before building an actual prototype.
  • More (and more realistic) test scenarios: With physical prototypes, it’s not always possible to test all possible operating conditions. In simulation, however, there’s no practical limit to the operating scenarios that can be modeled and tested.

Thus, simulation modeling has advantages over more traditional approaches, such as data analytics, forecasting, and optimization. These approaches are far more theoretical and are based on various assumptions about how an object will behave. With simulation, you don’t need as many assumptions — with the proper mathematical model, you can try different scenarios and know exactly what the behavior will be.

How to build Simulation software:

To build Simulation software we have used AWS for managing resources and JAVA Spring Boot framework for backend and Angular framework for frontend development.

CAD solutions requires high performance computing(HPC), for that we have used AWS Parallel Cluster for this workload.

What is AWS ParallelCluster ?

AWS ParallelCluster is an AWS-supported open source cluster management tool that makes it easy for you to deploy and manage High Performance Computing (HPC) clusters on AWS. ParallelCluster uses a simple text file to model and provision all the resources needed for your HPC applications in an automated and secure manner. It also supports multiple instance types and job submission queues, and job schedulers like AWS Batch and Slurm.

AWS ParallelCluster is built on the popular open source CfnCluster project and is released via the Python Package Index (PyPI). ParallelCluster’s source code is hosted on the Amazon Web Services repository on GitHub. AWS ParallelCluster is available at no additional charge, and you pay only for the AWS resources needed to run your applications.

Working of AWS Parallel Cluster

Benefits of AWS Parallel Cluster:

1. Automatic Resource Scaling

With AWS ParallelCluster, you can use a simple text file to model, provision, and dynamically scale the resources needed for your applications in an automated and secure manner.

2. Easy Cluster Management

With AWS ParallelCluster you can provision resources in a safe, repeatable manner, allowing you to build and rebuild your infrastructure without the need for manual actions or custom scripts.

3. Seamless Migration to the Cloud

AWS ParallelCluster supports a wide variety of operating systems and batch schedulers so you can migrate your existing HPC workloads with little to no modifications.

How we have deployed Simulation web application in AWS ?

To deploy simulation software we have created docker image of our application and simply we have launch using AWS fargate service. And AWS Farget gives

Also, we have implemented CI-CD (Continuous Integration and Continuous Deployment) for our application with the help of AWS Codepipeline service.

CI-CD Pipeline

As shown in above workflow, whenever any developer do any changes in code and push it to github then AWS CodeCommit will take newer code from github and triggers AWS CodeBuild and codebuild will do some automated testing and create docker image of application and push it to AWS ECR(Elastic Container Registry). After Pushing docker image to AWS ECR, AWS CodeBuild will trigger AWS Code Deploy and it will replace all old running task with new task with newer docker image.

I hope you got lot of useful information from this article.

Thanks for reading. 😃

--

--

No responses yet