Skip to content. | Skip to navigation


DNV GL Logo 175

Log in

Subscribe to our newsletter


technical overview

This overview covers software details of FRIENDSHIP-Framework. Geometry types, variation and optimization algorithms as well as interfaced CFD software and general functionality are listed and briefly described, respectively. This information is also available as product flyer.



friendship framework logo

General Modeling

General CAD functionality for conventional and fully-parametric modeling is provided with focus on smart surface design, especially for subsequent geometry variations. The user is free to introduce sophisticated relationships and dependencies among objects.

Point Types

  • 3D point
  • Intersection between two curves
  • Intersection between a curve and a surface
  • Projection onto a surface

Curve Types

  • Line
  • Circle and ellipse, circular and conic arcs
  • C-Spline approximation of point data
  • Interpolation of point data
  • Polynomial B-Spline and general NURBS
  • 3D fillet between two 3D curves
  • Fairness-optimized 2D F-Spline with user-defined tangent and area settings
  • Poly curve for combination of a number of curves
  • Generic curve for user-defined parametric 3D curves
  • Offset curve, 2D normal offset / 3D Frenet Frame
  • Intersection between two surfaces
  • Surface curve via surface domain definition
  • Projection curve
  • NACA profiles (66, 4-Digit-Series)
  • Meridional Camber Curve for the design of centrifugal impellers
  • Stream section for axial blade design

Surface Types

  • Polynomial B-Spline and general NURBS
  • Ruled surface
  • Lofted surface
  • Surface of revolution
  • Coons Patch
  • Interspace surface for parametric interpolation between two NURBS surfaces
  • Sub surface (e.g. for basic surface trimming)
  • Developable surface
  • Poly surface for combination of a number of surfaces
  • Meta surface for generalized fully-parametric surface design
  • Sweep surface
  • Offset surface

Mesh Types

  • Mesh engine for general 2D surface meshes (panels)
  • Mesh engine for blade-specific 2D meshes
  • Handling of structured and unstructured 3D meshes, in the context of result visualization i.e. post-processing.


  • Parametric translation, rotation and scaling
  • Transformation chain
  • Delta curve and surface shift for user-defined shape deformations i.e. morphing of e.g. surface meshes
  • Cartesian shift for radial deformations
  • Spot shift, bell-shape deformation
  • Delta sum and product for shift combinations
  • Generalized Lackenby shift for hull deformations where e.g. displacement is kept
  • Matrix4 for general transformation matrixes
  • Cylinder transformation for flexible blade design
  • Stream section transformation for axial blade design
  • Sweep transformation for advanced parametric surfaces


  • Double parameter for general expressions, e.g. mathematical formulas
  • Series parameter for number sequences
  • String parameter, e.g. for naming

Maritime Hull Design

  • Polygonal data type (offset)
  • Section generation on surfaces
  • Offset group and assembly
  • Section visualization
  • Hydrostatic calculation and visualization
  • Lines plan generation

Image Technology

Existing geometry can be imported and transformed by the transformation entities that are mentioned above (partially-parametric approach, also called morphing). This allows efficient geometry optimizations in case no fully-parametric model is available or required. For parametric models, images are utilized in the design process where quick transformation of geometry is needed while the dependency to the source geometry is kept. The following images types are provided:

  • Image point, curve and surface
  • Image offset group and surface group
  • Image surface meshes
  • Image Trimesh and Solid

Solid Modeling

Closed volumes can be created and merged using Boolean Operations. The technique is based on the given surface triangulations and allow e.g. a watertight STL-export of the geometry. In addition, with version 3.1, a new Brep type is available for closed boundary representations (surface trimming, fillet modeling).

  • Trimesh for adaptive surface remeshing and snapping
  • Solid based on triangle data for creation of closed volumes, included Boolean Operations
  • Radii-based fillets along edges using BReps
  • NURBS-based trimming using BReps

Blade Design

Alongside general geometry types, specific entities are provided for turbomachinery and maritime blade design. For instance,  CAESES/FRIENDSHIP-Framework is a complete propeller design software. High flexibility for e.g. individual profile design and radial functions results directly from the fully-parametric design paradigm of  CAESES/FRIENDSHIP-Framework.

  • Axial Blade Design:
    Design of turbine and compressor blades. Stream section for fully-parametric profile design in a length- (m,r*theta) and angle-preserving (m’,theta) system. Fully-parametric design of mean camber or blade metal distribution and thickness distribution. Arbitrary stacking axes and stream lines.
  • Centrifugal Blade Design:
    Flexible design of centrifugal impellers using the meridional camber curve type. Typical input for this curve are beta angle distributions and 2D meridian contours, where different developing laws are available (dm, dtheta). Check out this video.
  • Maritime and General Blade Design:
    Generic blade and cylinder transformation for fully-parametric maritime propeller blades including parametric profile design and userdefined rake, skew and pitch distributions. Multiple profile types within one blade via blending functions. Ready-to-use NACA profiles. Mathematical formula and geometric curve definitions of profiles, mean camber and thickness distributions. Propeller entity, e.g. for automatic engineering drawing. PFF-Import/Export (Propeller Free Format). Blade analysis of imported surface geometry e.g. for reconstruction of parametric models.

Design Engines

A collection of selected variation and optimization algorithms is provided and can be used readily. These algorithms are coupled to geometry parts or even CFD configurations, e.g. for grid or speed studies. In general, any floating point number of the project can be linked to a design engine. The user is free to set up equality and inequality constraints that need to be involved and monitored. FRIENDSHIP-Framework includes an intuitive resource manager (Add-On) which easily allows distributing simulation analysis on cluster systems. Synchronous and parallel computations are viable. CFD is configured and triggered from within FRIENDSHIP-Framework and externally computed results are brought back for assessment.


  • Exhaustive Search (domain subdivision)
  • Ensemble Investigation (permutation of number sequences for different design variables)
  • Sobol (Design of Experiments DoE)
  • Design Lab (manual creation of variants using sliders)
  • Design Assembler (customized DoE)

Optimization | Single Objective

  • Brent
  • Nelder-Mead Simplex
  • Tangent Search Method
  • Newton-Raphson

Optimization | Multi-Objective

  • NSGA-II Genetic Algorithm
  • Multi-Objective Simulated Annealing

Constraint Management

Equality and inequality constraints can be defined and involved for the variation and optimization process. Considered constraints are also monitored, e.g. violated designs are clearly marked both in the object tree and in generated tables.

Variant Management

The entire data management for manual and automatic variant creation is provided. Tables are generated for variant details like values of design variables (free variables) and simulation results. Diagrams and PDF reports can be produced. In particular, switching between variants is done via double-click and CFD results can be compared for different designs by browsing through the variant tree (e.g. comparison baseline vs. optimized design).

External Optimization Packages

FRIENDSHIP-Framework can also be controlled by external optimization tools. For this purpose, a control file (fsc-file) can be parameterized in order to change design variables or parameters of a geometry model. This allows customers to make use of the powerful parametric technologies while using their established optimization software.

SSH Resource Manager

Computations can be distributed via our SSH Resource Manager. A separate web interface allows configuring the available PC resources of a network or cluster system. Such a setup is then simply chosen within FRIENDSHIP-Framework by the user. CFD simulations are sent to the external resources and fetched back again when they are finished.


A set of mechanisms allows the integration of external software that is required for the individual design process. Simulation data can be visualized directly within FRIENDSHIP-Framework for each variant produced. Coupling Interfaces:

  • Software Connector: parsing, reading and replacement functionality for arbitrary ASCII input and output files, editor available in graphical user interface. Allows users to connect any tool that runs in batch mode (meshing, simulation,...).
  • Custom Integration: Data exchange by means of standardized XML-interface (XFFL specification)
  • Postprocessing of simulation data, interactive 3D visualization of simulation data e.g. via VTK exchange
  • Feature Definition – I/O commands for parsing (string
    operations), reading, writing and generation of arbitrary
    ASCII files
  • COM-interface for connecting to e.g. Microsoft Office
    applications like Excel
  • Configuration Wizard for setting up input data for external
    software, e.g. for CFD solvers
  • User-defined generic tables

Selection of interfaced Software

The following software have been coupled from our customers or within research projects (alphabetic order):

  • Autodesk Simulation CFD
  • FS-Flow
  • ICEM
  • NAPA
  • nu-Shallo
  • OpenFOAM
  • FOAMpro
  • Rapid
  • Snappy Hex Mesh
  • XFlow

Feature Definitions

Feature definitions encapsulate arbitrary command sequences by using the command set of CAESES/FRIENDSHIP-Framework. The graphical user interface and its environment provide powerful scripting functionality for any purpose. Once created, the definitions can be documented with text and illustrations and exported for re-use, e.g. for future projects. Collections of such definitions might be stored on network PCs for centralized access by different users.

  • Encapsulate simple and complex geometric features for re-use (“CAD Feature”)
  • User-defined functions with arguments and output
  • Loop, If-Statement, Break, Goto
  • Files: create, read, write, parse, find, replace
  • External processes: create and start e.g. scripts or other software
  • Global commands like sin(), cos(), sqrt(), pow()
  • User-defined import/export formats based on ASCII files

Data Exchange | Import

  • IGES
  • STEP
  • SAT (ACIS)
  • PFF (Propeller Free Format)
  • SHF offset data (NAPA/SHIPFLOW format)
  • Wakefield (x,y,z,u,v,w)
  • SHIPFLOW configuration
  • STL
  • User-defined imports via Feature definitions
  • VTK
  • EnSight Gold
  • OpenFOAM case

Data Exchange | Export

  • IGES
  • STEP
  • SAT (ACIS)
  • STL (different formats including OpenFOAM STL)
  • PLOT3D
  • SHF offset data (NAPA/SHIPFLOW format)
  • PFF (Propeller Free Format)
  • User-defined exports via Feature definitions
  • VTK

Data Exchange | Connectors

Connectors are used for large data sets in the context of efficient visualization and transformation. Available Connectors:

  • Wavefront
  • 3ds Max
  • STL

Supported Systems

Windows XP, Windows Vista (32/64bit), Windows 7 (32/64bit), Windows 8 (64bit), Linux (32/64bit)

Document Actions