Skip to main content
The 2024 Developer Survey results are live! See the results
43 votes

Good examples of "two is easy, three is hard" in computational sciences

One example that appears in many areas of physics, and in particular classical mechanics and quantum physics, is the two-body problem. The two-body problem here means the task of calculating the ...
davidhigh's user avatar
  • 3,187
37 votes

Good examples of "two is easy, three is hard" in computational sciences

In one and two dimensions, all roads lead to Rome, but not in three dimensions. Specifically, given a random walk (equally likely to move in any direction) on the integers in one or two dimensions, ...
Mark L. Stone's user avatar
32 votes

Good examples of "two is easy, three is hard" in computational sciences

A famous example is the boolean satisfiability problem (SAT). 2-SAT is not complicated to solve in polynomial time, but 3-SAT is NP-complete.
Federico Poloni's user avatar
29 votes

Good examples of "two is easy, three is hard" in computational sciences

In social choice theory, designing an election scheme with two candidates is easy (majority rules), but designing an election scheme with three or more candidates necessarily involves making trade-...
ajd's user avatar
  • 391
27 votes

Good examples of "two is easy, three is hard" in computational sciences

Here's one close to the hearts of the contributors at SciComp.SE: The Navier–Stokes existence and smoothness problem The three-dimensional version is of course a famous open problem and the subject ...
Richard Zhang's user avatar
16 votes

Good examples of "two is easy, three is hard" in computational sciences

Simultaneous diagonalization of two matrices $A_1$ and $A_2$: $$ U_1^T A_1 V = \Sigma_1,\quad U_2^TA_2V=\Sigma_2 $$ is covered by existing generalized singular value decomposition. However, when the ...
Anton Menshov's user avatar
  • 8,702
11 votes
Accepted

How important is learning hardware/architecture for scientific computing?

I haven't worked in quantum chemistry specifically, but I've worked in other areas where high performance is a correctness requirement (along with scientific accuracy), so I think we're on the same ...
Pseudonym's user avatar
  • 351
10 votes

Good examples of "two is easy, three is hard" in computational sciences

There are plenty of examples in quantum computing, although I've been out of this for a while and so don't remember many. One major one is that bipartite entanglement (entanglement between two ...
Dan Stahlke's user avatar
9 votes
Accepted

Choice between DAE or ODE formulation for chemical systems

The trade-off is generally this: ODEs are numerically a lot of easier to solve than DAEs, in particular if the algebraic constraint is nonlinear (yours is linear). So that argues for the ODE ...
Wolfgang Bangerth's user avatar
8 votes

Good examples of "two is easy, three is hard" in computational sciences

Here's a neat one from optimization: the Alternating Direction Method of Multipliers (ADMM) algorithm. Given an uncoupled and convex objective function of two variables (the variables themselves ...
Nathaniel Kroeger's user avatar
8 votes

Good examples of "two is easy, three is hard" in computational sciences

A smooth curve of degree 2 (i.e. given as the solution of $f(x,y) = 0$ where $f$ is a polynomial of degree 2) with a given point is rational, meaning that it can be parameterized by quotients of ...
doetoe's user avatar
  • 593
7 votes

Good examples of "two is easy, three is hard" in computational sciences

Angle bisection with straightedge and compass is simple, angle trisection is in general impossible.
davidhigh's user avatar
  • 3,187
6 votes

Good examples of "two is easy, three is hard" in computational sciences

The problem on which I originally made that comment is a linear algebra problem: consider the linear matrix equation $$ \sum_{i=1}^k A_i X B_i = C, $$ where $A_i,B_i,C \in \mathbb{R}^{n\times n}$ are ...
Federico Poloni's user avatar
6 votes

Choice between DAE or ODE formulation for chemical systems

Let's look at the results from 3 different chemical reaction DAE systems: Chemical Akzo OREGO ROBER These are all implemented using ModelingToolkit.jl in order to generate the various forms. It's 3 ...
Chris Rackauckas's user avatar
6 votes

Starting configuration for Molecular Dynamics

Usually one needs to employ periodic boundary conditions (at least in the horizontal directions). Any atoms which fly outside of the box will be mapped to the opposite side. This also has to be ...
MPIchael's user avatar
  • 3,005
5 votes

Good examples of "two is easy, three is hard" in computational sciences

Type inference for Rank-n types. Type inference for Rank-2 is not especially difficult, but type inference for Rank-3 or above is undecidable.
André Popovitch's user avatar
5 votes
Accepted

What equation should I fit this set of data points to?

You could either fit a logistic function (possibly composing it with a linear function), use segmented regression, or classification and regression trees, among other options. The original data, ...
Juan M. Bello-Rivas's user avatar
5 votes
Accepted

Maximize a function of an orthogonal matrix

There are specialized methods for the minimization of a differentiable function $f(X)$ subject to the orthogonality constraint $X^{T}X=I$. See for example: Lai, Rongjie, and Stanley Osher. “A ...
Brian Borchers's user avatar
5 votes
Accepted

Getting started with Computational Chemistry

Computational chemistry is a broad field, even more nowadays with increasing number of machine learning applications related to chemistry. As you have not specified what you are after I will suppose ...
Tricko's user avatar
  • 66
4 votes

Good examples of "two is easy, three is hard" in computational sciences

In a two-dimensional space, you can introduce complex structure, which can be used to elegantly solve many problems (e.g. potential flow problems), but no analogue exists in 3 dimensions.
Patrick Sanan's user avatar
4 votes

Good examples of "two is easy, three is hard" in computational sciences

In discretized PDEs you find very sparse matrices: even with a matrix size of billions, the number of nonzeros per row is O(1). Doing Gaussian elimination on such a matrix destroys that sparsity: a ...
Victor Eijkhout's user avatar
4 votes

Good examples of "two is easy, three is hard" in computational sciences

The infinite square well potential problem in non-relativistic quantum mechanics has energy eigenvalues $E_n=n^2\hbar^2\pi^2/2mL^2$,where $n^2=\sum_{k=1}^Nn_k^2$($N$=number of dimensions). A problem ...
Manas Dogra's user avatar
4 votes

What are the things I should keep in mind before doing an analysis of my gromacs simulation?

I think that this question is too generic for a complete answer, as the latter would depend entirely on what you are simulating and what observables you are interested in. The only things that come to ...
lr1985's user avatar
  • 687
4 votes

Applications of Julia in Chemistry and Molecular Physics?

It's an entire programming language with a large community, so it's pretty much impossible to dig up all examples of its usage in these fields, but I can point to a few resources to get you started. ...
Chris Rackauckas's user avatar
4 votes

How important is learning hardware/architecture for scientific computing?

I want to support the response from @Pseudonym, who makes the point that not everyone in the team needs to contribute to every aspect of the project. Something related to consider is that you are ...
Philip Roe's user avatar
  • 1,154
4 votes
Accepted

Quasi-Newton Method with a Transformed Hessian

It might help us give a better answer if you give more details of your problem. But I think what's going on is effectively elimination of equality constraints. I'll take just translation as an example....
Daniel Shapero's user avatar
4 votes

Does it make any sense to acquire some sort of knowledge about manufacturing or engineering for computational design optimization?

Computation science lives by the grace of computing something. So if you learn about that something you will 1. make yourself more employable as an engineer, specializing in computational stuff, or 2. ...
Victor Eijkhout's user avatar
3 votes

Good examples of "two is easy, three is hard" in computational sciences

The TREE function. We can calculate TREE(2) = 3, but TREE(3) is not calculable in the ...
justhalf's user avatar
  • 133
3 votes

What equation should I fit this set of data points to?

An assortment of curves for fitting chemistry examples is presented in these Colby College class notes. Of particular application is the sigmoid response curve with variable "slope" for the central ...
hardmath's user avatar
  • 3,429
3 votes

Solve rate equations with different reaction orders using SciPy ode

First of all, there seems to be an inconsistency between the equation you wrote for $r_w$ and the code (a minus sign). Then, there are two issues with your problem: As indicated in the comments, ...
GertVdE's user avatar
  • 6,159

Only top scored, non community-wiki answers of a minimum length are eligible