-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Run works locally. Problem in ports UI: integer types don't show corr… #1
Merged
Merged
Changes from all commits
Commits
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -4,3 +4,6 @@ services: | |
build: | ||
dockerfile: docker/custom/Dockerfile | ||
target: production | ||
args: | ||
- KWAVE_LOGIN | ||
- KWAVE_PASSWORD |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -3,7 +3,7 @@ key: simcore/services/comp/k-wave | |
type: computational | ||
integration-version: 1.0.0 | ||
version: 1.0.0 | ||
description: A MATLAB toolbox for the time-domain simulation of acoustic wave fields. It uses the kspaceFirst3DG function to run 3D time-domain simulation of wave propagation on a GPU using C++ CUDA code. | ||
description: k-Wave is a MATLAB toolbox for the time-domain simulation of acoustic wave fields. This service uses the kspaceFirstOrder-CUDA function to run 3D time-domain simulation of wave propagation on a GPU using C++ CUDA code (k-Wave version 1.3). <br><br> Have an issue? Create one at https://github.com/ITISFoundation/k-wave/issues | ||
contact: [email protected] | ||
thumbnail: https://pbs.twimg.com/media/ER4wiXEWkAAY-GD.jpg | ||
authors: | ||
|
@@ -13,19 +13,128 @@ authors: | |
inputs: | ||
input_1: | ||
displayOrder: 1 | ||
label: input_1_label | ||
description: The input 1 description | ||
type: string | ||
defaultValue: some_value(optional) | ||
label: Input HDF5 | ||
description: Compatible HDF5 file (check [k-Wave User Manual](http://www.k-wave.org/manual/k-wave_user_manual_1.1.pdf) to know how to create it.) | ||
type: data:*/* | ||
fileToKeyMap: | ||
somefilename.ext: input_1 | ||
|
||
input.h5: input_1 | ||
input_2: | ||
displayOrder: 2 | ||
label: Compression level | ||
description: Compression level (-c) | ||
defaultValue: 0 | ||
type: ref_contentSchema | ||
contentSchema: | ||
title: Compression level | ||
type: integer | ||
minimum: 0 | ||
maximum: 9 | ||
input_3: | ||
displayOrder: 3 | ||
label: Store p_rms | ||
description: Store rms of p (acoustic pressure) | ||
type: boolean | ||
defaultValue: false | ||
input_4: | ||
displayOrder: 4 | ||
label: Store p_max | ||
description: Store max of p (acoustic pressure) | ||
type: boolean | ||
defaultValue: false | ||
input_5: | ||
displayOrder: 5 | ||
label: Store p_min | ||
description: Store min of p (acoustic pressure) | ||
type: boolean | ||
defaultValue: false | ||
input_6: | ||
displayOrder: 6 | ||
label: Store p_max_all | ||
description: Store max of p (whole domain) | ||
type: boolean | ||
defaultValue: false | ||
input_7: | ||
displayOrder: 7 | ||
label: Store p_min_all | ||
description: Store min of p (acoustic pressure) | ||
type: boolean | ||
defaultValue: false | ||
input_8: | ||
displayOrder: 8 | ||
label: Store p_final | ||
description: Store final pressure field | ||
type: boolean | ||
defaultValue: false | ||
input_9: | ||
displayOrder: 9 | ||
label: Store u | ||
description: Store ux, uy, uz | ||
type: boolean | ||
defaultValue: false | ||
input_10: | ||
displayOrder: 10 | ||
label: Store u_non_staggered_raw | ||
description: Store non-staggered raw time series of ux, uy, uz | ||
type: boolean | ||
defaultValue: false | ||
input_11: | ||
displayOrder: 11 | ||
label: Store u_rms | ||
description: Store rms of ux, uy, uz | ||
type: boolean | ||
defaultValue: false | ||
input_12: | ||
displayOrder: 12 | ||
label: Store u_max | ||
description: Store max of ux, uy, uz | ||
type: boolean | ||
defaultValue: false | ||
input_13: | ||
displayOrder: 13 | ||
label: Store u_min | ||
description: Store min of ux, uy, uz | ||
type: boolean | ||
defaultValue: false | ||
input_14: | ||
displayOrder: 14 | ||
label: Store u_max_all | ||
description: Store max of ux, uy, uz (whole domain) | ||
type: boolean | ||
defaultValue: false | ||
input_15: | ||
displayOrder: 15 | ||
label: Store u_min_all | ||
description: Store min of ux, uy, uz (whole domain) | ||
type: boolean | ||
defaultValue: false | ||
input_16: | ||
displayOrder: 16 | ||
label: Store u_final | ||
description: Store final acoustic velocity | ||
type: boolean | ||
defaultValue: false | ||
input_17: | ||
displayOrder: 17 | ||
label: Start of data collection | ||
description: Time step when data collection begins (-s) | ||
defaultValue: 1 | ||
type: ref_contentSchema | ||
contentSchema: | ||
title: Start of data collection | ||
type: integer | ||
input_18: | ||
displayOrder: 18 | ||
label: Copy sensory mask | ||
description: Copy sensor mask to the output file | ||
type: boolean | ||
defaultValue: fals | ||
|
||
outputs: | ||
output_1: | ||
displayOrder: 1 | ||
label: output_1_label | ||
description: The input 1 description | ||
type: string | ||
label: Output HDF5 file | ||
description: HDF5 that can be read by k-wave (check [k-Wave documentation](http://www.k-wave.org/documentation/example_cpp_running_simulations.php#heading6)) | ||
type: data:*/* | ||
fileToKeyMap: | ||
somefilename.ext: output_1 | ||
output.h5: output_1 | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,33 +1,32 @@ | ||
# k-Wave | ||
|
||
Source code of the o²S²PARC Service for k-Wave, A MATLAB toolbox for the time-domain simulation of acoustic wave fields. It uses the kspaceFirst3DG function to run 3D time-domain simulation of wave propagation on a GPU using C++ CUDA code. Find more information about k-Wave [here](http://www.k-wave.org/index.php). | ||
Source code of the k-Wave Service on o²S²PARC. k-Wave is MATLAB/C++ toolbox for the time-domain simulation of acoustic wave fields. This Service uses the C++ function to run 3D time-domain simulation of wave propagation on a GPU using C++ CUDA code. You can find more information about k-Wave [here](http://www.k-wave.org/index.php). | ||
|
||
## Usage | ||
The Service runs the kspaceFirstOrder-CUDA function (v1.3) | ||
|
||
## Citing the k-Wave Toolbox | ||
If you find the toolbox useful for your academic work, please consider citing one or more of the associated papers, more information [here](http://www.k-wave.org/license.php). | ||
|
||
## Information for developers of the o²S²PARC Service | ||
### Usage | ||
|
||
```console | ||
$ make help | ||
|
||
$ make build | ||
$ make info-build | ||
$ make tests | ||
$ make publish-local | ||
``` | ||
**Note**: to build the image, you need an account [to download k-Wave](http://www.k-wave.org/download.php). In version 1.0.0 the pre-compiled executables are used. | ||
|
||
## Workflow | ||
|
||
1. The source code shall be copied to the [src](k-wave/src/k_wave) folder. | ||
2. The [Dockerfile](k-wave/src/Dockerfile) shall be modified to compile the source code. | ||
3. The [.osparc](.osparc) is the configuration folder and source of truth for metadata: describes service info and expected inputs/outputs of the service. | ||
4. The [execute](k-wave/service.cli/execute) shell script shall be modified to run the service using the expected inputs and retrieve the expected outputs. | ||
5. The test input/output shall be copied to [validation](k-wave/validation). | ||
6. The service docker image may be built and tested as ``make build tests`` (see usage above) | ||
7. Optional: if your code requires specific CPU/RAM resources, edit [runtime.yml](.osparc/runtime.yml). In doubt, leave it as default. | ||
### How to test | ||
Use as input the file `validation/input/input.h5`. Running the service should generate an `output.h5` file. | ||
Is you provide optional boolean flags (either in the UI of in `inputs.json`), you should see additional data fields in the `output.h5` file. To inspect the output file you can use `h5ls -d output.h5`. | ||
|
||
## Have an issue or question? | ||
Please open an issue [in this repository](https://github.com/ITISFoundation/cookiecutter-osparc-service/issues/). | ||
|
||
Please open an issue [in this repository](https://github.com/ITISFoundation/k-wave/issues/). | ||
|
||
--- | ||
<p align="center"> | ||
<image src="https://github.com/ITISFoundation/osparc-simcore-python-client/blob/4e8b18494f3191d55f6692a6a605818aeeb83f95/docs/_media/mwl.png" alt="Made with love at www.z43.swiss" width="20%" /> | ||
</p> | ||
|
||
## Citing the k-Wave Toolbox | ||
If you find the toolbox useful for your academic work, please consider citing one or more of the associated papers, more information [here](http://www.k-wave.org/license.php). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
how are you passing these?? They should go as environs on the service, no? Perhaps you should use
oenvs
for that... It is under development in ITISFoundation/osparc-simcore#3565There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nope @pcrespov, I don't think this are environs of the service.
I use them during building to download the executable of this tool from a website that requires login. See here:
https://github.com/ITISFoundation/k-wave/blob/first_version/docker/custom/Dockerfile#L49