People who code: we want your input. Take the Survey
42

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 dynamics of two interacting particles which, for example, interact by gravitational or Coulomb forces. The solution to this problem can often be found in closed form ...


32

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, then no matter the starting point, with probability one (a.k.a. almost surely), the random walk will eventually get to a specific designated point ("Rome"). ...


28

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.


24

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-offs between various reasonable-sounding conditions. (Arrow's impossibility theorem).


23

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 of a million-dollar Clay Millenium Prize. But the two-dimensional version has already been resolved a long time ago, with an affirmative answer. Terry Tao notes ...


14

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 simultaneous reduction of three matrices to a canonical form (weaker condition compared to the above) is required: $$ Q^T A_1 Z = \tilde{A_1},\quad Q^T A_2 Z = \...


10

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 systems) is relatively easy whereas entanglement among three or more systems is an unsolved mess with probably a hundred papers written on the topic. The root of ...


9

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 page here. Broad but shallow knowledge of all of the above is absolutely necessary for the team as a whole. Deep knowledge can be acquired as needed, or hired as ...


8

Many of us in scientific computing simply have well-equipped laptops for regular software development tasks, some multicore workstations for smaller-scale testing, and access to clusters for larger runs. To give you an idea: My laptop is a Dell M3800 (4-core Intel i7, hyperthreading, 16GB of RAM). This is good enough to regularly compile my software and do ...


6

You could install BOINC on those machines. When the computers become idle, the BOINC screensaver/client requests tasks from a server and computes them. See more information about it here. This is the software used by a number of projects such as SETI@Home. You can create your own project with BOINC and then put your desktop machines to work.


6

Angle bisection with straightedge and compass is simple, angle trisection is in general impossible.


5

You can use HTCondor that is designed exactly to "steal" cpu cycles from remote machines. It may be a little difficult to setup but I think this may be the best approach.


5

Your intuition is right, for example in 3D Orbitals (German Wikipedia) the caption explicitly states that 90% iso-surfaces are used. I have however seen different percentages before where the results look similar. Did you check the Mayavi Example Atomic Orbital? If you remove the phase-coloring and find the additional parameter to contour that sets the ...


5

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, shown in the figure below, was fitted in Gnuplot using the following commands: h(x) = k * 0.5 * (1.0 - tanh(0.5 * (a * x + b))) + c * x + d fit h(x) 'plot-EV.txt' ...


5

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 Splitting Method for Orthogonality Constrained Problems.” Journal of Scientific Computing 58, no. 2 (2014): 431–449. Wen, Zaiwen, and Wotao Yin. “A Feasible Method ...


4

I'm happy to answer that there's a high-quality open source code for this: https://github.com/mcodev31/libmsym libmsym is a C library dealing with point group symmetry in molecules. It can determine, symmetrize and generate molecules of any point group. It can also generate symmetry adapted linear combinations of atomic orbitals for a subset of all point ...


4

You say you're mostly interested in geometry optimization. From a software point of view, here are a couple to get you started. USPEX, which works with crystals, isolated molecules and nanoparticles, using a genetic algorithm and linking with many DFT and empirical codes from MATLAB (e.g. VASP, CASTEP, Siesta, GULP...). The link also has good articles ...


4

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 mind are Remember to use relative velocities (relative to the system's centre of mass) when computing dynamical observables (such as the mean-squared ...


4

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.


4

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 could be vectors) and a linear constraint coupling the two variables: $$\min f_1(x_1) + f_2(x_2) $$ $$ s.t. \; A_1 x_1 + A_2 x_2 = b $$ The Augmented Lagrangian ...


3

The estimated number of cells in the human body is $3.72 \times 10^{13}$;1 the estimated number of molecules in a single cell is about $10^{14}$.2 Given that the current peta-scale supercomputers need a full day to simulate the motion of $1.2\times 10^{7}$ particles over $49$ nanoseconds3 -- and a simulation of the complexity you propose needs to keep track ...


3

NWChem's built-in B3LYP is supposed to agree with Gaussian's, modulo the grid and tolerance issues noted in Thom's answer. You can prescribe any functional form for which the constituents are supported using the explicit XC interface: http://www.nwchem-sw.org/index.php/Density_Functional_Theory_for_Molecules#XC_and_DECOMP_--_Exchange-Correlation_Potentials. ...


3

I recommend reading Thom Dunning Jr. “Gaussian basis sets for use in correlated molecular calculations. I. The atoms boron through neon and hydrogen.” J. Chem. Phys. 90, 1007 (1989) by for an answer to this question. The abstract says the following: This leads to the concept of correlation consistent basis sets, i.e., sets which include all functions in ...


3

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, you're system is very stiff, so you should use the vode or lsoda integrator using the 'bdf' option or use the Radau method implemented in the Assimulo package. ...


3

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 part of the curve: $$ f(x) = \frac{a}{1 + e^{bx - c} } + d $$ [This is similar to the suggested logistic function proposed in the first Answer, but has four ...


3

Folding a piece of paper in half without tools is easy. Folding it into thirds is hard. Factoring a polynomial with two roots is easy. Factoring a polynomial with three roots is significantly more complicated.


3

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 polynomials, of degree 3 it isn't. The former are considered well understood, the latter, called elliptic curves when a base point, i.e. a specific solution, is ...


3

A simple way to introduce orthogonality constraints is to parametrize all orthogonal matrices using, either, the Cayley transform, $Q=(I-A)(I+A)^{-1}$, or the matrix exponential, $Q = \exp(A)$. In both cases, $Q$ will be orthogonal if $A$ is skew-symmetric. Searching over the space of skew-symmetric matrices is easy, as an element of the space can be ...


3

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 you are interested in quantum chemistry because it is arguably the main area of study in computational chemistry. I would suggest a mixed approach. Learn ...


2

I once wrote a small Python script to detect the point group symmetry for a molecule. If you're interested, please see https://github.com/sunqm/pyscf/blob/master/symm/geom.py


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