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).
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 morinformation of graph modeling, link.
Table of Contents
- 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 thestart_neo4j.sh
andstart_django.sh
scripts.
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
Currently the database is availabledumpfile that is that is developed with
neo4j-community-4.2.4dump 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 od 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
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 |
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 model with units of Nmm, s.
Finally you can strat 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
- Load/ re-load data to the database based on
nrg_fts
: based on paper, App links:nrg_fts_dash
: energy feature dash
The re-maining repos are under transfer from folllowing repo, unhold due to publications. for more information contact:
sim_rnk
: based on paper, current codephysc_grph
: based on paper, current codeld_pth_detn
: based on paper, current code