Giter Club home page Giter Club logo

contique's Introduction

Hi there ๐Ÿ–๏ธ,

this is Andreas, a mechanical engineer graduated from Graz University of Technology, based in ๐Ÿฐโ›ฐ๏ธ Graz, Austria ๐Ÿ‡ฆ๐Ÿ‡น. In my free time, I like running ๐Ÿƒโ€, skiing โ›ท๏ธ and snowboarding ๐Ÿ‚ while I also enjoy family times at home ๐Ÿ‘จโ€๐Ÿ‘ฉโ€๐Ÿ‘งโ€๐Ÿ‘ฆ.

GitHub stats

Currently, I'm an engineer in industry (during the day) and a PhD student at Graz University of Technology at the Institute of Structural Durability and Railway Technology (well, at night... ๐Ÿ“š ๐Ÿ•ฏ๏ธ). All the tools related to my scientific work are available here on my GitHub profile.

sparsity-pattern

I'm the author of ๐Ÿ” FElupe, an open-source finite element analysis package focussing on the formulation and numerical solution of nonlinear problems in continuum mechanics of solid bodies. Most of the open source finite element packages I found are either super-difficult to install, needs to be compiled or are great but slow (or at least too slow for my needs).

With FElupe, I try to fill a gap in between.

I'm convinced that static input files ๐Ÿ–จ๏ธ which are passed to a standalone fea solver ๐Ÿ–ฉ are a thing of the last decades ๐Ÿ’พ. Instead, scripts are input files: easy to adopt scripts with access to third-party libraries ๐Ÿ›’, written in common scripting languages are the way to go. With common languages I mean something easy-to-learn for engineers, like Python, Matlab/Octave or Julia, not another proprietary simulation file format. FElupe is just another one of many open-source finite element analysis packages using this approach. Well defined and public available scripting interfaces hopefully accelerate the introduction of flexible natural language-processing for simulations.

Projects

Python Fortran Julia PyPI Markdown Jupyter GitHub Pages PyTorch Codecov

Star History Chart

Code Snippets

contique's People

Contributors

adtzlr avatar kinow avatar

Stargazers

 avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

Forkers

kinow

contique's Issues

Add user-defined pre-modification of unknowns as well as update and check functions in Newton-Rhapson iterations

This should involve

  • preprocess the unknowns y = pre(x) and by consequence, calculate f as f(y, *args); this defaults to pre = lambda x: x
  • update the solution x = update(x, dx); this defaults to lambda x, dx: x + dx
  • check if success success = check(dx, x, f); this defaults to check = lambda dx, x, f, tol=np.finfo(float).eps: np.linalg.norm(dx) < tol

With this modifications it should be possible to combine contique and felupe. The resulting newtonrhapson function should be very abstract and hence, the code should have good readability.

[Enhancement] Add constant part of external forces

For now (v0.1.7) it is only possible to prescribe external quantities and apply a lpf-value to a certain type of these quantities (e.g. normal forces). It would be great to seperate constant and lpf-associated properties. This would especially be of interest for the kinematic-type of lpf, where some gridvector components should be fixed.

[Enhancement] Implement State Variables

Contique should be able to update the function args or at least some sub-elements containt state variables after each step. Therefore the equilibrium equation - function would have to return its args along the residuals.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.