5 votes

Getting started with finite element modelling

I would suggest that you start with FreeCAD. It is a CAD software and you can do Finite Element Analysis using the graphic interface pretty straightforward. FreeCAD provides you all the stages needed ...
nicoguaro's user avatar
  • 8,490
5 votes
Accepted

Truncated power series algebra implementation

Julia TPSA.jl being developed at https://github.com/bmad-sim/TPSA.jl. Should be operational soon.
DavidS's user avatar
  • 166
5 votes
Accepted

Obstacle too thin in fluid-structure interaction, so I consider it as membrane

About your question #1: Whether something is "thin enough to be a membrane" or not is not a question of thickness. A "membrane" is an object that has no resistance to bending, just ...
Wolfgang Bangerth's user avatar
4 votes

Obstacle too thin in fluid-structure interaction, so I consider it as membrane

For comment #2 I would suggest looking into the immersed boundary (IB) method. The idea behind this method is to combine an Eulerian description of the fluid with a Lagrangian description of the solid ...
IPribec's user avatar
  • 597
3 votes

GPGPU computing, software selection

OpenCL is runnable on multicore cpu, intel hd graphics and even DSP cards. It was pretty much the standard for cross platform gpu computing until compute shaders were introduced. There are various ...
iliar's user avatar
  • 253
3 votes
Accepted

Recommendation for a fixed-step ODE solver?

I think DifferentialEquations.jl in Julia has a very comprehensive suite of ODE solvers, including the ones you mentioned (Adams-Bashfort and GBS) and many others. This Julia library is becoming more ...
Anton Menshov's user avatar
  • 8,652
3 votes

Software for cellular automota

Well Mathematica provides a reasonable amount of intrinsic functionality for working with Cellular Automata. It's not an area of the system I have extensive experience of and I don't know how it ...
High Performance Mark's user avatar
3 votes

Getting started with finite element modelling

In my experience, learning FEM is less about coding and more about learning the math that constitutes the foundation of the method. Essentially coding FEM simulations boils down to physics and ...
cbcoutinho's user avatar
3 votes

Sparse Matrix Library for GPU

Look at cupy. It supports basically all common sparse formats along with the common operations.
Uwe.Schneider's user avatar
3 votes
Accepted

Simulate Jump-Diffusion $dX_t = \mu(X_t)dt + \sigma(X_t)dW(t) + \int_{\{|c| <1 \}}g(X_t,c)\tilde{N}(dt,dc) + \int_{\{|c| \ge 1 \}}h(X_t,c)N(dt,dc)$

You can try DifferentialEquations.jl for jump diffusions. It has a tutorial on jump diffusion models: https://diffeq.sciml.ai/stable/tutorials/jump_diffusion/ and more documentation at: https://diffeq....
Chris Rackauckas's user avatar
3 votes

Good IDE for GNU Octave?

QtOctave (source1, source2) among many others like OctaveOnline, Jupyter Notebook, Emacs, Sublime Text, VS Code, etc. support Octave code editing, syntax highlighting, and more. ...
shripal mehta's user avatar
3 votes

AMR-Capable meshing software that is not based on quad/octrees

deal.II can subdivide cells in ways that are not geometrically 2:1, but "graded" in certain directions. It does this by "mapping" the new mid-points of edges and cells in non-...
Wolfgang Bangerth's user avatar
2 votes

Library for Discontinuous Galerkin method: FEniCS vs deal.ii

For Hyperbolic PDEs I can highly recommend Trixi, a (if you want) high order Discontinuous Galerkin based solver with adaptive mesh refining capabilities written in ...
Dan Doe's user avatar
  • 1,033
2 votes

Software for cellular automota

CellularAutomata.jl is a fairly efficient CA simulation package. https://github.com/MartinuzziFrancesco/CellularAutomata.jl
Chris Rackauckas's user avatar
2 votes

Software for cellular automota

You may want to try Ready https://gollygang.github.io/ready/ especially if you are going for continous valued/reaction diffusion/FDTD type systems: Ready is a program for exploring continuous and ...
masterxilo's user avatar
2 votes

Disjunctive programming software

I haven't used it, but Pyomo, a seemingly well-supported modeling software includes a module for generalized disjunctive programming. One of the many examples they provide at the above link appears as ...
Richard's user avatar
  • 3,961
2 votes

Numerical packages to solve Volterra integral equations

You can usually solve these kinds of equations via a transformation. Shampine discusses how Volterra integral equations can be transformed into an ODE which is then solved with a stiff ODE solver. If ...
Chris Rackauckas's user avatar
2 votes
Accepted

Writing code on the CPU while developing, running it on the GPU when live - which approach?

ArrayFire has a C++ API as well as a Python API. You can switch between several backends including CPU, CUDA, and OpenCL. It will also handle memory movement and kernel fusion for you. An example: <...
Richard's user avatar
  • 3,961
2 votes

Writing code on the CPU while developing, running it on the GPU when live - which approach?

One way to do this is to use Julia. Julia's CUDAnative.jl allows for automated recompilation of pretty general code to GPUs using the LLVM PTX backend. It just works on standard Julia code, so types, ...
Chris Rackauckas's user avatar
2 votes

GPGPU computing, software selection

Before you start down this path it's important to determine whether there's enough data parallelism in your current code to make using a GPU worthwhile. I'd encourage you to start by describing your ...
Brian Borchers's user avatar
2 votes
Accepted

GPGPU computing, software selection

It is recommended to think about parallelization first and then discuss the implementation. Think about what the code does, what data dependencies exist, and what operations can be carried out in ...
carlosvalderrama's user avatar
2 votes

Tool to compare if two logical expressions are same!

Based on m previous comment, here is an example of a Python implementation to check in a brute-force manner that two conditions are equivalent. I just basically test all possible combinations for the ...
Laurent90's user avatar
  • 1,808
2 votes

Tool to compare if two logical expressions are same!

Here is not exactly a tool but a convenient way to compare logical expressions graphically. Use electric circuits to represent your Boolean expressions: each resistor can be open gate (F) or closed ...
Maxim Umansky's user avatar
2 votes
Accepted

Unstructured mesh preprocessing

I would leave out a few things to make it more simple. This is how we do it for our code which is capable of using polyhedral meshes: https://github.com/nikola-m/freeCappuccino-dev/blob/master/src/...
Johntra Volta's user avatar
2 votes
Accepted

Simple, easy to install and use Python FEM solver (and example) for 2D cylindrical Laplace equation

You did not provide all the details so I made some assumptions. First, assuming symmetry in $\theta$, the Laplace equation in cylindrical coordinates reads $$\partial_r^2 u + \frac{1}{r} \partial_r u +...
knl's user avatar
  • 2,076
1 vote

Integrate a function from samples using computer codes

If your samples were done following a grid, then you could integrate it using a quadrature method. These methods are available in several programming languages, such as Python or Matlab. Also, as ...
nicoguaro's user avatar
  • 8,490
1 vote

Need software for generating self-avoiding random walks on a tetrahedral lattice

I fixed the compilation issues in the Roulattice package you mentioned and it now compiles and seems to do stuff. Most of the issues were easily solvable, though there's an uninitialized memory error ...
Richard's user avatar
  • 3,961
1 vote

Tool to compare if two logical expressions are same!

If I recall correctly, every formula has a unique canonical conjunctive normal form and for each possible truth table you could make from some set of variables there is a corresponding canonical CNF. ...
Richard's user avatar
  • 3,961

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