BEM Code Numerical Improvements Assembly Part 1

Key Information

Register
Submit
Status: ‌Cancelled requirements infeasible

Challenge Overview

Project Overview

We are going to improve the Nemog https://github.com/lawsonro3/Nemoh - A frequency-domain potential flow hydrodynamics code developed by École Centrale de Nantes that has recently been released under the Apache 2.0 license 

 

Competition Task Overview

In this competition we need to improve the open source BEM code Nemoh.

 

The Requirements:

  • General cleanup: large parts of the code were written in Fortran 77 a long time ago. They make use of obsolete data structures (COMMON blocks). Variable names are often not explicit. Most of the code is not or insufficiently commented/explained. In this contest, we are expecting competitors to rewrite the code in F95 or later.
  • Speed improvements:
    • Code acceleration: influence matrix is recalculated for each BVP. It is a inefficient because actually, it changes only if the frequency changes. One should make use of this property to speed up the calculations.
    • Solver for the matrix equation: only Gauss solver is implemented, which has a numerical complexity of O(N3). At least a GMRES should be implemented as well, O(N²).
    • Implementation of OpenMP so that multiple processors on a single chip can be used to run simulations - Right now the code is serial, that is it can only run on one processor. By implementing OpenMP, we could allow the code to take advantage of the architecture of today's multi-core chips. One of the nice things about OpenMP is that it should allow any number of cores to be used. We have no preference how the code is parallelized or speeded up, as long as it runs faster. 

Technology Overview

  • Fortran 

Documentation Provided

Documentation and Applications that will be provided to registered members in the forum.



Final Submission Guidelines

Required document:

  • The updated code
  • The changeLog file records all the code changes
  • The TC standard deployment guide how to configure and verify the application

ELIGIBLE EVENTS:

2014 TopCoder(R) Open

REVIEW STYLE:

Final Review:

Community Review Board

Approval:

User Sign-Off

SHARE:

ID: 30039459