Skip to content

Fraunhofer-SCAI/GAE-vehicle-safety

Repository files navigation

Graph Assisted Engineering in Vehicle SafetyGAE-vehicle-safety

GAE is a Django project (Python) for the creation and study of the graph database for the CAE models as a Graph to build a knowledge graph for CAE. Converting Computer Aided Engineering (CAE) to Graph Aided Engineering (GAE).

App Overview

GAE is a graph modeling for CAE analysis in automotive R&D development processes, in connection with its design requirement. The first release of GAE considers vehicle safety with EuroNCAP safety requirements. We connect CAE data to the protocols that are used to assess vehicle safety performances. The R&D process includes CAD engineering and safety attributes, with a focus on multidisciplinary problem-solving. For more information of graph modeling, link.


Table of Contents
  1. Run Database Server
  2. Databases

Quick setup for displaying simKnowledge data

  • Run these commands from the terminal. (After starting neo4j server wait for few seconds until it is up and running.)
mkdir test_gae
cd test_gae
git clone https://github.com/Fraunhofer-SCAI/GAE-vehicle-safety.git
cd GAE-vehicle-safety
./setup.sh
gnome-terminal -- ./start_neo4j.sh
./start_django.sh
  • Open the browser to http://127.0.0.1:8000/

  • Script setup.sh should be called only once !. To view the results next time, one can call only the start_neo4j.sh and start_django.sh scripts.

Dependencies

Install the requirements via conda or python venv for python 3.10.8, for anacona envs:

conda create -n envs python=3.8.6
conda activate envs

for virtual env, install python 3.8.6 and venv and then you can use:

python venv ./envs
source envs/bin/activate

Run Database Server

Currently the database is available as a dump file that is that is developed with neo4j-community-4.2.4. The dump file can be loaded into neo4j-community-4.2.4. We provide this version as it is no longer availble on neo4j webpage. You can extract it and then run the server with

tar -xzvf neo4j-community-4.2.4.tar.gz
neo4j-community-4.2.4/bin/neo4j start

Then you can load one of the available .dump file databases to your database.

./neo4j-community-4.2.4/bin/neo4j-admin load --from=../database/FILE.dump --database=neo4j --force

the --force will take care of the upgrade if you use a more recent version of neo4j, just remember to edit the config file in conf\neo4j.conf and set ``dbms.allow_upgrade=true`, more info

Databases

Here we have 5 dump files in .\database that are:

Databases Info
00_GAE_v1.0.dump Merged version of all 4 databases
01_modelCompare_v1.0.dump FE-model changes, graph for ModelCompare tool
02_simKnowledge_v1.0.dump F-simulation as a graph with energy features, "Knowledge discovery assistants for crash simulations with graph algorithms and energy absorption features", "Simrank++ Update for Crash Simulation Similarity Precidtion with Energy Absorption Features, link
03_euroNcap_v1.0.dump Graph modeling EuroNCAP safety requirements with web scrawling.
04_safetyLoad_v1.0.dump load-case specification that is used in CAEWebVis visualization

Run Django

After solving the dependencies and setting up the database. You need to set the login info in a .env under src/.env. You can edit at the src/.env-sample and save it as src/.env.

To set the dependencies of your data to be loaded to the database, you need to define the constants in src/gae/constatns.py

## OEM or VEHICLE
OEM_NAME = 'YARIS'

## UNITs
IE_UNIT = 1e-3
TIME_UNIT = 1000

## DATA PATH
DATA_PATH = '/home/ndv/stud/data/YARIS/full_front/CCSA_submodel/crash_modes/'
SIM_PATTERN = 'CCSA_submodel_60*'

The units are defined base on the configuration of your model required to convert the values to kNmm, ms. This example is for a model with units of Nmm, s.

Finally you can start the Django server locally with:

python src/manage.py runserver

This project has in total five modules. This repo already includes:

  • ld_data: based on paper, App links:
    • Load/ re-load data to the database based on constants.py configuratoion: ld_data/load
    • The data ontology report: ld_data/ontology-report
  • nrg_fts: based on paper, App links:
    • nrg_fts_dash: energy feature dash

The re-maining repos are under transfer from the following repo, on hold due to publications. For more information contact:

About

Graph Assisted Engineering in Vehicle Safety

Resources

Stars

9 stars

Watchers

2 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors