Google Summer of Code

The SOFA consortium is taking part in the Google Summer of Code 2018!

Google Summer of Code is a global program focused on bringing more student developers into open source software development. Students work with an open source organization on a 3 month programming project during their break from school.

Two students accepted for the GSoC with SOFA!

Selected projects

SOFA + Pulse

Objectives

The objective of this project is to create an open-source plugin for SOFA building an interface with the open-source library Pulse platform. This engine provides comprehensive models for the human physiology. Both API are very close to each other: C++, Cmake, a core library with optional plugins. The integration will be helped with two mentors: one from the SOFA community and another one from the Pulse community.This project will therefore bring a new open-source technology to drive medical education, research, and innovation.

Contact

Hugo Talbot

Communication plugin improvement

Objectives

The purpose of this project is to improve the communication plugin by adding more protocols in it such as vrpn, serial bus communication, and also improve the way it works. This plugin has an abstract base to run and implement different protocols asynchronously to the main sofa-framework thread. In a near future it has to be the default base for communicating with SOFA.

The motivation is to prevent multiple outdated network/protocol communication plugins and group all of them in a single abstract plugin.
The objective is to improve the communication plugin, add protocols such as vrpn, serial bus, etc.

Contact

Erwan Douaille

Other project(s)

Emscriptening Sofa

Objectives

SOFA is an open-source framework to simulate in real-time a wide range of object behaviors in complex contacts situations. The kind of situation that are common in medical simulation, robot interacting with soft material and soft-robotics.

We now would like to be able to execute SOFA in the browser to promote the development of simulation based web-based applications. As SOFA a implemented in C++ this is not straightforward.

The purpose of this GSOC is to adapt the core of the SOFA simulation framework so that it can be compiled with Emscripten. Emscripten is a compiler that takes C/C++ code and compiles it to efficient subsets of JavaScript as asm.js and webassembly.

Difficulty

Hard

Desirable skills

C++, webassembly, asm.js,

Contact

Damien Marchal

Back to Top