# Scientific Computing Category

**URL:** <https://discourse.julialang.org/t/scientific-computing-category/276>\
**Category:** Meta Discussion\
**Created:** [November 14, 2016, 12:51am UTC](https://discourse.julialang.org/t/scientific-computing-category/276 "2016-11-14T00:51:38Z")\
**Posts on this page:** 11\
**Page:** 1

<div class="post-metadata">

**Author:** ![ChrisRackauckas](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/chrisrackauckas/32/77_2.png) [@ChrisRackauckas](https://discourse.julialang.org/u/ChrisRackauckas)\
**Post date:** [November 14, 2016, 12:51am UTC](https://discourse.julialang.org/t/scientific-computing-category/276/1 "2016-11-14T00:51:38Z")

</div>

Scientific computing is a large group of users who do applied mathematics, numerical linear algebra, numerical differential equations, mathematical modeling, etc. One of the first questions on the discourse site was on FEM discretization of PDEs. With how tailor made Julia is to scientific computing, it should probably have its own domain.

While some may not like the name, it’s always been named either this or Computational Science, [see anything you count as a reference](https://en.wikipedia.org/wiki/Computational_science). The StackOverflow for this group is named [Computational Science](http://scicomp.stackexchange.com/) but is prefixed with “scicomp” for scientific computing. It’s pretty much agreed on what “Scientific Computing” means.

---

<div class="post-metadata">

**Author:** ![vchuravy](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/vchuravy/32/8_2.png) [@vchuravy](https://discourse.julialang.org/u/vchuravy)\
**Post date:** [November 14, 2016, 1:47am UTC](https://discourse.julialang.org/t/scientific-computing-category/276/2 "2016-11-14T01:47:49Z")

</div>

I feel that **Scientific Computing** is too broad to be effectively useful as a category. To quote the wikipedia entry:

> Computational science (also scientific computing or scientific computation (SC)) is a rapidly growing multidisciplinary field that uses advanced computing capabilities to understand and solve complex problems. Computational science fuses three distinct elements:

> - Algorithms (numerical and non-numerical) and modeling and simulation software developed to solve science (e.g., biological, physical, and social), engineering, and humanities problems
> - Computer and information science that develops and optimizes the advanced system hardware, software, networking, and data management components needed to solve computationally demanding problems
> - The computing infrastructure that supports both the science and engineering problem solving and the developmental computer and information science

In essence most of the debates in the **Domains** category is going to be about scientific computing.  
For me categories should be as broad as possible, while being as specific as possible. As you said

> [@ChrisRackauckas](#):
>
> With how tailor made Julia is to scientific computing, it should probably have its own domain.

I am not categorically opposed to create a category for **Scientific Computing** , but I would prefer that the different sub-topics of **Scientific Computing** , get their own categories, e.g. **Bio** , **Physics** , **Numerics** , **…**.

---

<div class="post-metadata">

**Author:** ![Ralph\_Smith](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/ralph_smith/32/10344_2.png) [@Ralph\_Smith](https://discourse.julialang.org/u/Ralph_Smith)\
**Post date:** [November 14, 2016, 2:29am UTC](https://discourse.julialang.org/t/scientific-computing-category/276/3 "2016-11-14T02:29:59Z")

</div>

I would like to suggest **Numerical Methods** for this. Wikipedia equates this to **Numerical Analysis** but those of us with some mathematical training probably think **analysis** means the theorems that justify the methods. The [Wikipedia article](https://en.wikipedia.org/wiki/Numerical_analysis) says NM/NA includes

- Computing values of functions
- Interpolation, extrapolation, and regression
- Solving equations and systems of equations
- Solving eigenvalue or singular value problems
- Optimization
- Evaluating integrals
- Differential equations

It seems that optimization is the only one of these with enough activity to deserve its own category here (for now), but I second Chris’ point that the many posts in this general area deserve a domain.

---

<div class="post-metadata">

**Author:** ![ChrisRackauckas](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/chrisrackauckas/32/77_2.png) [@ChrisRackauckas](https://discourse.julialang.org/u/ChrisRackauckas)\
**Post date:** [November 14, 2016, 5:50am UTC](https://discourse.julialang.org/t/scientific-computing-category/276/4 "2016-11-14T05:50:47Z")

</div>

> [@vchuravy](#):
>
> I am not categorically opposed to create a category for Scientific Computing, but I would prefer that the different sub-topics of Scientific Computing, get their own categories, e.g. Bio, Physics, Numerics

Those aren’t subtopics of Scientific Computing as it’s commonly used. Computational Biology tends to be more Bioinformatics / Data Science, though Computational Physics tends to be highly related to Scientific Computing, and Numerical Analysis is addressed below.

> [@Ralph\_Smith](#):
>
> I would like to suggest Numerical Methods for this. Wikipedia equates this to Numerical Analysis but those of us with some mathematical training probably think analysis means the theorems that justify the methods.

The field numerical analysis is the mathematical part and scientific computing is the application, i.e. putting it on a computer and the algorithmic issues associated with it. That’s at least how journals tend to distinguish it. A better source would be SIAM:

[https://www.siam.org/journals/sinum.php](https://www.siam.org/journals/sinum.php)

[https://www.siam.org/journals/sisc/redefined.php](https://www.siam.org/journals/sisc/redefined.php)

Maybe it’s the best tern we have that those outside the field won’t misunderstand (though I would’ve thought scientific computing is well-established enough to be a specific term. The real problem is it’s relatively common for people in Data Science don’t tend to know about Scientific Computing, I’ve had this discussion a few times and know it’s a confusing term to those who aren’t in the discipline).

---

<div class="post-metadata">

**Author:** ![akis](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/akis/32/156_2.png) [@akis](https://discourse.julialang.org/u/akis)\
**Post date:** [November 14, 2016, 6:36am UTC](https://discourse.julialang.org/t/scientific-computing-category/276/5 "2016-11-14T06:36:30Z")

</div>

A big number of broad categories and less broad subcategories down to narrow ones of low traffic [should not be a problem](https://discourse.julialang.org/t/discussion-categories/85/26), as long as people reading their titles can easily distinguish them. There will always be threads that are relevant to more than one categories, that’s not a problem either. The problem is when subcategories are relevant to more than one categories. I believe that’s the meaning of “specificity” @vchuravy suggests.

There are more than one ways to construct a tree of categories. In multi-word category names, the important word to construct a tree after is the **first** one. For example:

1. “ **Scientific** Computing” could house “ **Biology** ”.
2. “ **Computational** Science” could house “ **Computational** Physics”.
3. “ **Numerical** Analysis/Methods” could house “ **Differential** equations”.

Mixing competitive ways would confuse users, so it’s important the name choices to be consistent across the tree. Even if an individual name is not the most fashionable in the respective scientific community, people will still understand it when they read it. Therefore, instead of discussing individual category names in separate threads, we should use a wiki to discuss all names in parallel. Unlike with package names, where each team decided a name individually, the effort here in Discourse is to integrate the ecosystem, so as to **make its value higher than the sum of its parts** , for the benefit of the whole Julia community.

---

<div class="post-metadata">

**Author:** ![ChrisRackauckas](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/chrisrackauckas/32/77_2.png) [@ChrisRackauckas](https://discourse.julialang.org/u/ChrisRackauckas)\
**Post date:** [November 14, 2016, 7:12am UTC](https://discourse.julialang.org/t/scientific-computing-category/276/6 "2016-11-14T07:12:10Z")

</div>

> [@akis](#):
>
> “Scientific Computing” could house “Biology”.

No it can’t, not without changing the meaning of scientific computing from its common use to its literal words.

> [@akis](#):
>
> “Computational Science” could house “Computational Physics”.

No, just the talk about methodology for computing specific equations. That’s where the overlap is.

> [@akis](#):
>
> “Numerical Analysis/Methods” could house “Differential equations”.

It can, but in the way it’s actually used it’s not about implementation of differential equations. I am pretty sure more people who are here are talking about implementation and using packages, not convergence proofs, which is why I’d call it scientific computing.

---

<div class="post-metadata">

**Author:** ![vchuravy](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/vchuravy/32/8_2.png) [@vchuravy](https://discourse.julialang.org/u/vchuravy)\
**Post date:** [November 14, 2016, 7:46am UTC](https://discourse.julialang.org/t/scientific-computing-category/276/7 "2016-11-14T07:46:45Z")

</div>

My primary concern is to minimise confusion for new users. How about we add two domains, one for Numerics and a second one for Modelling?

The first one is to talk about numerical algorithms, and the development thereof. And the second one is application focused, on how to apply computational methods to a certain problem and which tools to use.

---

<div class="post-metadata">

**Author:** ![ChrisRackauckas](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/chrisrackauckas/32/77_2.png) [@ChrisRackauckas](https://discourse.julialang.org/u/ChrisRackauckas)\
**Post date:** [November 14, 2016, 8:10am UTC](https://discourse.julialang.org/t/scientific-computing-category/276/8 "2016-11-14T08:10:56Z")

</div>

I could see that being sensical.

---

<div class="post-metadata">

**Author:** ![vchuravy](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/vchuravy/32/8_2.png) [@vchuravy](https://discourse.julialang.org/u/vchuravy)\
**Post date:** [November 14, 2016, 11:05am UTC](https://discourse.julialang.org/t/scientific-computing-category/276/9 "2016-11-14T11:05:51Z")

</div>

I created **Numerics** and **Modelling&Simulation** , the description posts are wikis so please feel free to edit them.

---

<div class="post-metadata">

**Author:** ![StefanKarpinski](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/stefankarpinski/32/24_2.png) [@StefanKarpinski](https://discourse.julialang.org/u/StefanKarpinski)\
**Post date:** [November 14, 2016, 3:20pm UTC](https://discourse.julialang.org/t/scientific-computing-category/276/10 "2016-11-14T15:20:33Z")

</div>

I suspect we may eventually want to split modeling and simulation into two categories, but that may be a ways off.

---

<div class="post-metadata">

**Author:** ![akis](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/akis/32/156_2.png) [@akis](https://discourse.julialang.org/u/akis)\
**Post date:** [November 14, 2016, 9:33pm UTC](https://discourse.julialang.org/t/scientific-computing-category/276/11 "2016-11-14T21:33:11Z")

</div>

This is my final post on this thread, as my argument is not about the suggested category. I’m interested not in people’s preferences, but in the [big picture of things](https://discourse.julialang.org/t/discussion-categories/85).

> [@ChrisRackauckas](#):
>
> No it can’t, not without changing the meaning of scientific computing from its common use to its literal words.

> [@ChrisRackauckas](#):
>
> No, just the talk about methodology for computing specific equations. That’s where the overlap is.

It definitely can, it’s only a matter of a few clicks. But these are not suggestions for names, they are mere examples of the proper relationship between the name of a category and the names of its subcategories. In such cases there is no such thing as a perfect name, cause they all have their disadvantages, cause human language itself is imperfect, as are the people using it.

> [@ChrisRackauckas](#):
>
> I am pretty sure more people who are here are talking about implementation and using packages, not convergence proofs, which is why I’d call it scientific computing.

You focused on the wrong part of my post, namely the examples. People could endlessly argue about proper calling, especially when they don’t make an effort to consider alternative points of view. And majorities come and go, their advice rarely passes the test of time.

My point is for everyone to raise their heads a little and try to look beyond the limits of a single category or package or organization they happen to spend most of their time in, so as to cooperate in finding names that in the long term will benefit the whole community. This isn’t the case so far. If people refuse to look around them, fragmentation can easily take place even inside a single forum.
