Skip to main content

Open Source @ Ansys

What open source means for Ansys

Open Source is changing the world, one line of code at a time.

Ansys has a strong commitment to open-source projects, both internal and external, and we are always excited to work with our ecosystem on new solutions. Ansys is working to provide a combination of open-source components and tools that work in conjunction with our commercial solver technologies, to enable developers and engineers to make the most of our world class solvers in their own workflows and with their own specific needs in mind. We are also supporters of numerous open-source projects through contributions and donation as well as direct developer participation in several areas of OSS.

Would you like to contribute to Ansys software or work with our teams on Ansys Open-Source tools? Get started below!

Not sure about OSS? Read here to find out more about it!

Open source software

Ansys works with OSS in much the same way that other organizations do, through GitHub and our developer portal/forum. However, there are a couple of key exceptions that you should be aware of before you get started:

  • Ansys does not allow anonymous or unverified contributors to commit to our open-source repositories. Because of this, we require everyone who wants to contribute to agree to our Terms and Conditions and Contribution License Agreement prior to being allowed access to our repositories. You will also have to register for an Ansys SSO account using your business or academic email address.

  • Ansys is not providing our core solver and commercial software as Open Source at this time. We reserve the right to change this, but this means that currently our OSS software is limited to our PyAnsys family of Python client libraries.

If these terms are acceptable, then it is very easy to begin by accepting the CLA and signing up for your SSO account (which will also give you full access to the forums, documentation, and other parts of the Ansys ecosystem).

What is Open Source Software (OSS)?

"Open source software is software with source code that anyone can inspect, modify, and enhance." and the opposite of "Closed Source" software. Microsoft Paint is a great example of "Closed Source" software. People can not, as a rule, access the source code of the application. We can use the tool as it is presented but if we wanted to build an extension to it, say, or a version of our own with a custom logo on it... we just can't. The source code that we would need to have access to, to do this is closed to us. Whereas the browser Firefox is a classic example of open source software. If you have access to the internet you can look at Firefox's code. It's just there for anyone to see!. You can even use it to make your own browser if you want (see Waterfox for an example). The source code is open for anyone to look at.

 

If you’ve never contributed to an open-source project before, here is the basic process we follow at Ansys:

Figure out what you are going to work on

Most open-source contributions come from people working on their own interests. However, if you don’t know what you want to work on, or are just looking to get familiar with what OSS @ Ansys has to work on, here are some tips:

  • Look in the repositories on GitHub for issues and see if there are any that you would be interested in working on.
  • Join us in the forums and let us know you’re interested in getting to know our PyAnsys libraries. We’re very happy to help researchers and partners get up to speed with the codebase.

Define what the scope of the change is

  • Most pull requests are small with minor changes to the overall code base. In these cases, there is not much extra for you to do, just code it and get your PR submitted.
  • Sometimes changes can be large or involve many features that cut across the whole of the project. In these cases, we recommend you post your idea in the forums, and ask for feedback on the proposed change BEFORE posting a PR.

Open a pull request

  • If you are not ready for the pull request to be reviewed, create a draft pull request first. You can convert it to a full PR by pressing the “Ready for review” button in GitHub when you are ready.
  • Start your PR as a draft PR, and use the prefix of “[WIP]” to indicate you are still working on the PR. We will skip these when we review PRs allowing you to get everything ready before it goes to review.
  • Absolutely reach out on the forums for review guidance and help! We are always happy to support anyone wanting to contribute and the project maintainers are always willing to look at proposed PRs

Work through any issues on the PR until it is accepted

  • We will generally only block a PR for major issues so your review should be relatively quick and painless.
  • Once the PR has been accepted and the CI confirms as passed, that’s it for you, we will do the rest.

THANK YOU for your contribution!

We have also compiled a short series of articles around open source and, contributing to it, for those of you that are completely new to the topic.