EikonalNet
No description available
Install / Use
/learn @fsahli/EikonalNetREADME
EikonalNet
Code for the paper: Sahli Costabal F, Yang Y, Perdikaris P, Hurtado DE and Kuhl E (2020) Physics-Informed Neural Networks for Cardiac Activation Mapping. Front. Phys. 8:42. doi: 10.3389/fphy.2020.00042
Dependencies:
- tensorflow v1.0
- pyDOE:
pip install pydoe - matplotlib, numpy, scipy
- Non-parametric Entropy Estimation Toolbox: https://github.com/gregversteeg/NPEET
There are two files containing the models: models_tf.py, which is a single neural network and models_para_tf.py, which implements the randomized prior functions and trains multiple neural networks in parallel.
Within the models_tf.py there is a 2D and a 3D model:
-
Eikonal2DnetCV2, which has the inputs:x, y: location of the collocation points to enforce the residual penalty. Each of them must be of shapeN_colloc, 1.x_e, y_e: location of the data points. Each of them must be of shapeN_data, 1.T_e: activation times data. Must be of shapeN_data, 1.layers: list with the number of neurons of each layer for the activation times, for example[2,20,20,1].CVlayers: list with the number of neurons of each layer for the conduction velocity, for example[2,5,5,1].C: maximum conduction velocity.alpha: regularization coefficient for the conduction velocity.alphaL2: regularization coefficient for the weights of the neural network.jobs: number of cpus to use to train the model.
-
Eikonal3DnetCV2, which has the inputs:X: location of the collocation points to enforce the residual penalty. For a triangular mesh, this corresponds to the centroid of each triangle. Must be of shapeN_colloc, 3.normals: unit vectors representing the normal of the surface at the pointsX. For a triangular mesh, this corresponds to the normal of each triangle. Must be of shapeN_colloc, 3X_e: location of the data points. Each of them must be of shapeN_data, 3.T_e: activation times data. Must be of shapeN_data, 1.layers: list with the number of neurons of each layer for the activation times, for example[3,20,20,1].CVlayers: list with the number of neurons of each layer for the conduction velocity, for example[3,5,5,1].C: maximum conduction velocity.alpha: regularization coefficient for the conduction velocity.alphaL2: regularization coefficient for the weights of the neural network.jobs: number of cpus to use to train the model.
Within the models_para_tf.py there is a 2D and a 3D model as well:
-
Eikonal2DnetCV2RPF, which has the additional inputs thanEikonal2DnetCV2:Batch: the number of neural networks to train in parallel.noise_level: which is the expected standard deviation of the measurements.
-
Eikonalnet3DRPF, which has the additional inputs thanEikonal3DnetCV2:Batch: the number of neural networks to train in parallel.noise_level: which is the expected standard deviation of the measurements.
The files 2Dexample.ipynb demonstrates the use of a single neural network and the file active_learning_2Dexample.py demontrates the use of multiple neural networks with active learning.
Related Skills
node-connect
343.3kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
92.1kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
343.3kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
qqbot-media
343.3kQQBot 富媒体收发能力。使用 <qqmedia> 标签,系统根据文件扩展名自动识别类型(图片/语音/视频/文件)。
