Skip to content

Commit

Permalink
install script
Browse files Browse the repository at this point in the history
  • Loading branch information
lawsonfulton committed Oct 19, 2018
1 parent de961ca commit a3c0f57
Show file tree
Hide file tree
Showing 25 changed files with 78,034 additions and 228 deletions.
26 changes: 2 additions & 24 deletions README.md
Expand Up @@ -7,29 +7,7 @@ Install MKL? (make optional)
```
git clone --recursive git@github.com:zero-impact/AutoDef.git
cd AutoDef
./installDependencies.sh
# Build GAUSS
cd extern/GAUSS
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
make
cd ../../../
# Build Cubacode
cd src/Cubacode
mkdir build
cd build
cmake ..
make
cd ../../../
# Build Main app
cd src/AutoDefRuntime
mkdir build
cd build
cmake ..
make
sudo ./installDependencies.sh
./build.sh
```
29 changes: 29 additions & 0 deletions build.sh
@@ -0,0 +1,29 @@
# Build GAUSS
cd extern/GAUSS
mkdir build
cd build
cmake -DCMAKE_BUILD_TYPE=Release ..
make -j8
cd ../../../

# Build Libigl Python bindings
cd extern/libigl/python
mkdir build
cd build; cmake ..; make -j8;
cd ../../../../

# Build Cubacode
cd src/cubacode
mkdir build
cd build
cmake ..
make -j8
cd ../../../

# Build Main app
cd src/AutoDefRuntime
mkdir build
cd build
cmake ..
make -j8
cd ../../../
4 changes: 2 additions & 2 deletions configs/X.json
Expand Up @@ -38,10 +38,10 @@
"ae_encoded_dim_min": 6,
"ae_encoded_dim_max": 6,

"activation": "relu",
"activation": "elu",
"learning_rate": 0.001,
"batch_size": 800,
"training_epochs": 3000,
"training_epochs": 1000,
"batch_size_increase": false,

"cubature_type": "an08",
Expand Down
26 changes: 26 additions & 0 deletions installDependencies.sh
@@ -0,0 +1,26 @@

### install Anaconda
CONTREPO=https://repo.continuum.io/archive/
# Stepwise filtering of the html at $CONTREPO
# Get the topmost line that matches our requirements, extract the file name.
ANACONDAURL=$(wget -q -O - $CONTREPO index.html | grep "Anaconda3-" | grep "Linux" | grep "86_64" | head -n 1 | cut -d \" -f 2)
mkdir deps/
wget -O deps/anaconda.sh $CONTREPO$ANACONDAURL
bash deps/anaconda.sh


# Keras stuff? Libigl python bindinggsss



### For tensorflow cc
sudo apt-get install build-essential curl git cmake unzip autoconf autogen automake libtool mlocate \
zlib1g-dev g++-7 python python3-numpy python3-dev python3-pip python3-wheel wget
sudo updatedb

cd extern/tensorflow_cc/tensorflow_cc
mkdir build && cd build
# for static library only:
cmake ..
make -j8 && sudo make install

@@ -0,0 +1,8 @@
n_tets: 3
relErr: 0.184437
Selected tets: 6184, 24829, 21277,
Weights: 47103.4, 2973.29, 12403.3,
n_nonzero: 3

Running time so far: 0.420346s

@@ -0,0 +1,8 @@
n_tets: 6
relErr: 0.0472099
Selected tets: 6184, 24829, 21277, 5536, 17749, 20527,
Weights: 26518.5, 4509.76, 12668.7, 4274.13, 0, 5331.39,
n_nonzero: 5

Running time so far: 0.57504s

1 change: 1 addition & 0 deletions models/X/keras_models/autoencoder.json
@@ -0,0 +1 @@
{"class_name": "Model", "config": {"name": "model_1", "layers": [{"name": "encoder_input", "class_name": "InputLayer", "config": {"batch_input_shape": [null, 1], "dtype": "float64", "sparse": false, "name": "encoder_input"}, "inbound_nodes": []}, {"name": "dense_encode_layer_0", "class_name": "Dense", "config": {"name": "dense_encode_layer_0", "trainable": true, "units": 200, "activation": "elu", "use_bias": true, "kernel_initializer": {"class_name": "VarianceScaling", "config": {"scale": 1.0, "mode": "fan_avg", "distribution": "uniform", "seed": null}}, "bias_initializer": {"class_name": "Zeros", "config": {}}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "inbound_nodes": [[["encoder_input", 0, 0, {}]]]}, {"name": "dense_encode_layer_1", "class_name": "Dense", "config": {"name": "dense_encode_layer_1", "trainable": true, "units": 200, "activation": "elu", "use_bias": true, "kernel_initializer": {"class_name": "VarianceScaling", "config": {"scale": 1.0, "mode": "fan_avg", "distribution": "uniform", "seed": null}}, "bias_initializer": {"class_name": "Zeros", "config": {}}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "inbound_nodes": [[["dense_encode_layer_0", 0, 0, {}]]]}, {"name": "encoded_layer", "class_name": "Dense", "config": {"name": "encoded_layer", "trainable": true, "units": 6, "activation": "elu", "use_bias": true, "kernel_initializer": {"class_name": "VarianceScaling", "config": {"scale": 1.0, "mode": "fan_avg", "distribution": "uniform", "seed": null}}, "bias_initializer": {"class_name": "Zeros", "config": {}}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "inbound_nodes": [[["dense_encode_layer_1", 0, 0, {}]]]}, {"name": "dense_decode_layer_0", "class_name": "Dense", "config": {"name": "dense_decode_layer_0", "trainable": true, "units": 200, "activation": "elu", "use_bias": true, "kernel_initializer": {"class_name": "VarianceScaling", "config": {"scale": 1.0, "mode": "fan_avg", "distribution": "uniform", "seed": null}}, "bias_initializer": {"class_name": "Zeros", "config": {}}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "inbound_nodes": [[["encoded_layer", 0, 0, {}]]]}, {"name": "dense_decode_layer_1", "class_name": "Dense", "config": {"name": "dense_decode_layer_1", "trainable": true, "units": 200, "activation": "elu", "use_bias": true, "kernel_initializer": {"class_name": "VarianceScaling", "config": {"scale": 1.0, "mode": "fan_avg", "distribution": "uniform", "seed": null}}, "bias_initializer": {"class_name": "Zeros", "config": {}}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "inbound_nodes": [[["dense_decode_layer_0", 0, 0, {}]]]}, {"name": "decoder_output_layer", "class_name": "Dense", "config": {"name": "decoder_output_layer", "trainable": true, "units": 1, "activation": "linear", "use_bias": true, "kernel_initializer": {"class_name": "VarianceScaling", "config": {"scale": 1.0, "mode": "fan_avg", "distribution": "uniform", "seed": null}}, "bias_initializer": {"class_name": "Zeros", "config": {}}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "inbound_nodes": [[["dense_decode_layer_1", 0, 0, {}]]]}], "input_layers": [["encoder_input", 0, 0]], "output_layers": [["decoder_output_layer", 0, 0]]}, "keras_version": "2.0.8", "backend": "tensorflow"}
1 change: 1 addition & 0 deletions models/X/keras_models/decoder.json
@@ -0,0 +1 @@
{"class_name": "Model", "config": {"name": "model_3", "layers": [{"name": "decoder_input", "class_name": "InputLayer", "config": {"batch_input_shape": [null, 6], "dtype": "float64", "sparse": false, "name": "decoder_input"}, "inbound_nodes": []}, {"name": "dense_decode_layer_0", "class_name": "Dense", "config": {"name": "dense_decode_layer_0", "trainable": true, "units": 200, "activation": "elu", "use_bias": true, "kernel_initializer": {"class_name": "VarianceScaling", "config": {"scale": 1.0, "mode": "fan_avg", "distribution": "uniform", "seed": null}}, "bias_initializer": {"class_name": "Zeros", "config": {}}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "inbound_nodes": [[["decoder_input", 0, 0, {}]]]}, {"name": "dense_decode_layer_1", "class_name": "Dense", "config": {"name": "dense_decode_layer_1", "trainable": true, "units": 200, "activation": "elu", "use_bias": true, "kernel_initializer": {"class_name": "VarianceScaling", "config": {"scale": 1.0, "mode": "fan_avg", "distribution": "uniform", "seed": null}}, "bias_initializer": {"class_name": "Zeros", "config": {}}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "inbound_nodes": [[["dense_decode_layer_0", 0, 0, {}]]]}, {"name": "decoder_output_layer", "class_name": "Dense", "config": {"name": "decoder_output_layer", "trainable": true, "units": 1, "activation": "linear", "use_bias": true, "kernel_initializer": {"class_name": "VarianceScaling", "config": {"scale": 1.0, "mode": "fan_avg", "distribution": "uniform", "seed": null}}, "bias_initializer": {"class_name": "Zeros", "config": {}}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "inbound_nodes": [[["dense_decode_layer_1", 0, 0, {}]]]}], "input_layers": [["decoder_input", 0, 0]], "output_layers": [["decoder_output_layer", 0, 0]]}, "keras_version": "2.0.8", "backend": "tensorflow"}
1 change: 1 addition & 0 deletions models/X/keras_models/encoder.json
@@ -0,0 +1 @@
{"class_name": "Model", "config": {"name": "model_2", "layers": [{"name": "encoder_input", "class_name": "InputLayer", "config": {"batch_input_shape": [null, 1], "dtype": "float64", "sparse": false, "name": "encoder_input"}, "inbound_nodes": []}, {"name": "dense_encode_layer_0", "class_name": "Dense", "config": {"name": "dense_encode_layer_0", "trainable": true, "units": 200, "activation": "elu", "use_bias": true, "kernel_initializer": {"class_name": "VarianceScaling", "config": {"scale": 1.0, "mode": "fan_avg", "distribution": "uniform", "seed": null}}, "bias_initializer": {"class_name": "Zeros", "config": {}}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "inbound_nodes": [[["encoder_input", 0, 0, {}]]]}, {"name": "dense_encode_layer_1", "class_name": "Dense", "config": {"name": "dense_encode_layer_1", "trainable": true, "units": 200, "activation": "elu", "use_bias": true, "kernel_initializer": {"class_name": "VarianceScaling", "config": {"scale": 1.0, "mode": "fan_avg", "distribution": "uniform", "seed": null}}, "bias_initializer": {"class_name": "Zeros", "config": {}}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "inbound_nodes": [[["dense_encode_layer_0", 0, 0, {}]]]}, {"name": "encoded_layer", "class_name": "Dense", "config": {"name": "encoded_layer", "trainable": true, "units": 6, "activation": "elu", "use_bias": true, "kernel_initializer": {"class_name": "VarianceScaling", "config": {"scale": 1.0, "mode": "fan_avg", "distribution": "uniform", "seed": null}}, "bias_initializer": {"class_name": "Zeros", "config": {}}, "kernel_regularizer": null, "bias_regularizer": null, "activity_regularizer": null, "kernel_constraint": null, "bias_constraint": null}, "inbound_nodes": [[["dense_encode_layer_1", 0, 0, {}]]]}], "input_layers": [["encoder_input", 0, 0]], "output_layers": [["encoded_layer", 0, 0]]}, "keras_version": "2.0.8", "backend": "tensorflow"}
40 changes: 40 additions & 0 deletions models/X/model_config.json
@@ -0,0 +1,40 @@
{
"training_dataset": "models/X/unified_generate/high_res/training_data/training/",
"validation_dataset": "",
"learning_config": {
"save_objs": false,
"skip_training": false,
"skip_jacobian": false,
"use_mass_pca": false,
"record_full_loss": false,
"autoencoder_config": {
"search_for_dims": true,
"outer_dim_max_vert_error": 0.018,
"inner_dim_max_vert_error": 0.006,
"non_pca_layer_sizes": [
200,
200
],
"ae_encoded_dim_min": 6,
"ae_encoded_dim_max": 6,
"train_in_full_space": false,
"pca_init": true,
"activation": "elu",
"learning_rate": 0.001,
"batch_size": 800,
"batch_size_increase": false,
"training_epochs": 1000,
"do_fine_tuning": false,
"loss_weight": 1.0
},
"energy_model_config": {
"type": "an08",
"enabled": true,
"pca_dim": 40,
"num_sample_tets": 500,
"brute_force_iterations": 100,
"target_anneal_mins": 5,
"rel_error_tol": 0.05
}
}
}
57 changes: 57 additions & 0 deletions models/X/sim_config.json
@@ -0,0 +1,57 @@
{
"mesh": "models/X/tets.mesh",
"logging_enabled": false,
"save_objs": false,
"save_pngs": false,
"save_training_data": false,
"save_training_data_path": "",
"alternative_full_space_mesh": "",
"material_config": {
"density": 1000,
"youngs_modulus": 60000,
"poissons_ratio": 0.47
},
"integrator_config": {
"reduced_space_type": "autoencoder",
"use_reduced_energy": true,
"use_partial_decode": true,
"reduced_energy_method": "an08",
"use_preconditioner": true,
"pca_dim": 1,
"ae_encoded_dim": 6,
"ae_decoded_dim": 1,
"timestep": 0.005,
"lbfgs_config": {
"lbfgs_max_iterations": 1000,
"lbfgs_epsilon": 1e-08,
"lbfgs_delta": 1e-08,
"lbfgs_delta_past": 0,
"lbfgs_m": 8
},
"gravity": -9.8,
"gravity_axis": 1,
"start_pose_from_training_data": -1,
"quasi_static": false,
"save_obj_every_iteration": false
},
"visualization_config": {
"gpu_decode": true,
"show_stress": false,
"show_energy": false,
"show_lines": false,
"interaction_spring_stiffness": 30,
"spring_grab_radius": 0.03,
"use_spring_grab_radius_for_reduced": false,
"full_space_constrained_axis": 1,
"constrained_axis_eps": 0.001,
"flip_constrained_axis": false,
"fixed_point_constraint": [
0,
0.124,
-0.1
],
"fixed_point_radius": -1,
"print_every_n_frames": 10,
"max_frames": 0
}
}

0 comments on commit a3c0f57

Please sign in to comment.