joss-reviews icon indicating copy to clipboard operation
joss-reviews copied to clipboard

[REVIEW]: svFSI: A Multiphysics Package for Integrated Cardiac Modeling

Open whedon opened this issue 2 years ago • 66 comments

Submitting author: @CZHU20 (Chi Zhu) Repository: https://github.com/SimVascular/svFSI Branch with paper.md (empty if default branch): Version: v1.0.0 Editor: @Kevin-Mattheus-Moerman Reviewers: @chennachaos, @JaroslavHron, @axel-loewe Archive: Pending

:warning: JOSS reduced service mode :warning:

Due to the challenges of the COVID-19 pandemic, JOSS is currently operating in a "reduced service mode". You can read more about what that means in our blog post.

Status

status

Status badge code:

HTML: <a href="https://joss.theoj.org/papers/cf1aa78cd6e9d4cbf818053aef61bc83"><img src="https://joss.theoj.org/papers/cf1aa78cd6e9d4cbf818053aef61bc83/status.svg"></a>
Markdown: [![status](https://joss.theoj.org/papers/cf1aa78cd6e9d4cbf818053aef61bc83/status.svg)](https://joss.theoj.org/papers/cf1aa78cd6e9d4cbf818053aef61bc83)

Reviewers and authors:

Please avoid lengthy details of difficulties in the review thread. Instead, please create a new issue in the target repository and link to those issues (especially acceptance-blockers) by leaving comments in the review thread below. (For completists: if the target issue tracker is also on GitHub, linking the review thread in the issue or vice versa will create corresponding breadcrumb trails in the link target.)

Reviewer instructions & questions

@chennachaos & @JaroslavHron & @ @axel-loewe, please carry out your review in this issue by updating the checklist below. If you cannot edit the checklist please:

  1. Make sure you're logged in to your GitHub account
  2. Be sure to accept the invite at this URL: https://github.com/openjournals/joss-reviews/invitations

The reviewer guidelines are available here: https://joss.readthedocs.io/en/latest/reviewer_guidelines.html. Any questions/concerns please let @Kevin-Mattheus-Moerman know.

Please start on your review when you are able, and be sure to complete your review in the next six weeks, at the very latest

Review checklist for @JaroslavHron

✨ Important: Please do not use the Convert to issue functionality when working through this checklist, instead, please open any new issues associated with your review in the software repository associated with the submission. ✨

Conflict of interest

  • [x] I confirm that I have read the JOSS conflict of interest (COI) policy and that: I have no COIs with reviewing this work or that any perceived COIs have been waived by JOSS for the purpose of this review.

Code of Conduct

General checks

  • [x] Repository: Is the source code for this software available at the repository url?
  • [x] License: Does the repository contain a plain-text LICENSE file with the contents of an OSI approved software license?
  • [x] Contribution and authorship: Has the submitting author (@CZHU20) made major contributions to the software? Does the full list of paper authors seem appropriate and complete?
  • [x] Substantial scholarly effort: Does this submission meet the scope eligibility described in the JOSS guidelines

Functionality

  • [x] Installation: Does installation proceed as outlined in the documentation?
  • [x] Functionality: Have the functional claims of the software been confirmed?
  • [x] Performance: If there are any performance claims of the software, have they been confirmed? (If there are no claims, please check off this item.)

Documentation

  • [x] A statement of need: Do the authors clearly state what problems the software is designed to solve and who the target audience is?
  • [x] Installation instructions: Is there a clearly-stated list of dependencies? Ideally these should be handled with an automated package management solution.
  • [x] Example usage: Do the authors include examples of how to use the software (ideally to solve real-world analysis problems).
  • [x] Functionality documentation: Is the core functionality of the software documented to a satisfactory level (e.g., API method documentation)?
  • [x] Automated tests: Are there automated tests or manual steps described so that the functionality of the software can be verified?
  • [x] Community guidelines: Are there clear guidelines for third parties wishing to 1) Contribute to the software 2) Report issues or problems with the software 3) Seek support

Software paper

  • [x] Summary: Has a clear description of the high-level functionality and purpose of the software for a diverse, non-specialist audience been provided?
  • [x] A statement of need: Does the paper have a section titled 'Statement of Need' that clearly states what problems the software is designed to solve and who the target audience is?
  • [x] State of the field: Do the authors describe how this software compares to other commonly-used packages?
  • [x] Quality of writing: Is the paper well written (i.e., it does not require editing for structure, language, or writing quality)?
  • [x] References: Is the list of references complete, and is everything cited appropriately that should be cited (e.g., papers, datasets, software)? Do references in the text use the proper citation syntax?

Review checklist for @axel-loewe

✨ Important: Please do not use the Convert to issue functionality when working through this checklist, instead, please open any new issues associated with your review in the software repository associated with the submission. ✨

Conflict of interest

  • [x] I confirm that I have read the JOSS conflict of interest (COI) policy and that: I have no COIs with reviewing this work or that any perceived COIs have been waived by JOSS for the purpose of this review.

Code of Conduct

General checks

  • [x] Repository: Is the source code for this software available at the repository url?
  • [x] License: Does the repository contain a plain-text LICENSE file with the contents of an OSI approved software license?
  • [x] Contribution and authorship: Has the submitting author (@CZHU20) made major contributions to the software? Does the full list of paper authors seem appropriate and complete?
  • [x] Substantial scholarly effort: Does this submission meet the scope eligibility described in the JOSS guidelines

Functionality

  • [x] Installation: Does installation proceed as outlined in the documentation?
  • [x] Functionality: Have the functional claims of the software been confirmed?
  • [x] Performance: If there are any performance claims of the software, have they been confirmed? (If there are no claims, please check off this item.)

Documentation

  • [x] A statement of need: Do the authors clearly state what problems the software is designed to solve and who the target audience is?
  • [x] Installation instructions: Is there a clearly-stated list of dependencies? Ideally these should be handled with an automated package management solution.
  • [x] Example usage: Do the authors include examples of how to use the software (ideally to solve real-world analysis problems).
  • [x] Functionality documentation: Is the core functionality of the software documented to a satisfactory level (e.g., API method documentation)?
  • [x] Automated tests: Are there automated tests or manual steps described so that the functionality of the software can be verified?
  • [x] Community guidelines: Are there clear guidelines for third parties wishing to 1) Contribute to the software 2) Report issues or problems with the software 3) Seek support

Software paper

  • [x] Summary: Has a clear description of the high-level functionality and purpose of the software for a diverse, non-specialist audience been provided?
  • [x] A statement of need: Does the paper have a section titled 'Statement of Need' that clearly states what problems the software is designed to solve and who the target audience is?
  • [x] State of the field: Do the authors describe how this software compares to other commonly-used packages?
  • [x] Quality of writing: Is the paper well written (i.e., it does not require editing for structure, language, or writing quality)?
  • [x] References: Is the list of references complete, and is everything cited appropriately that should be cited (e.g., papers, datasets, software)? Do references in the text use the proper citation syntax?

whedon avatar Feb 01 '22 13:02 whedon

Hello human, I'm @whedon, a robot that can help you with some common editorial tasks. @chennachaos, @JaroslavHron, @ @axel-loewe it looks like you're currently assigned to review this paper :tada:.

:warning: JOSS reduced service mode :warning:

Due to the challenges of the COVID-19 pandemic, JOSS is currently operating in a "reduced service mode". You can read more about what that means in our blog post.

:star: Important :star:

If you haven't already, you should seriously consider unsubscribing from GitHub notifications for this (https://github.com/openjournals/joss-reviews) repository. As a reviewer, you're probably currently watching this repository which means for GitHub's default behaviour you will receive notifications (emails) for all reviews 😿

To fix this do the following two things:

  1. Set yourself as 'Not watching' https://github.com/openjournals/joss-reviews:

watching

  1. You may also like to change your default settings for this watching repositories in your GitHub profile here: https://github.com/settings/notifications

notifications

For a list of things I can do to help you, just type:

@whedon commands

For example, to regenerate the paper pdf after making changes in the paper's md or bib files, type:

@whedon generate pdf

whedon avatar Feb 01 '22 13:02 whedon

Wordcount for paper.md is 1210

whedon avatar Feb 01 '22 13:02 whedon

Reference check summary (note 'MISSING' DOIs are suggestions that need verification):

OK DOIs

- 10.1016/j.jcp.2015.11.022 is OK
- 10.1161/CIRCRESAHA.110.223610 is OK
- 10.1007/s10439-016-1762-8 is OK
- 10.1115/1.4005694 is OK
- 10.1016/j.jelectrocard.2003.09.017 is OK
- 10.1007/978-3-642-23099-8 is OK
- 10.1371/journal.pcbi.1005828 is OK
- 10.1371/journal.pcbi.1009331 is OK
- 10.1016/j.jbiomech.2018.03.034 is OK
- 10.1002/cnm.3351 is OK
- 10.1615/Int.J.UncertaintyQuantification.2020033068 is OK
- 10.1007/s10237-020-01294-8 is OK
- 10.1115/1.4048032 is OK

MISSING DOIs

- None

INVALID DOIs

- None

whedon avatar Feb 01 '22 13:02 whedon

PDF failed to compile for issue #4118 with the following error:

 [WARNING] Citeproc: citation axel-loewe not found
Error producing PDF.
! Undefined control sequence.
\hyper@@link ->\let \Hy@reserved@a 
                                   \relax \@ifnextchar [{\hyper@link@ }{\hyp...
l.356 }

Looks like we failed to compile the PDF

whedon avatar Feb 01 '22 13:02 whedon

Software report (experimental):

github.com/AlDanial/cloc v 1.88  T=3.70 s (107.1 files/s, 46964.6 lines/s)
---------------------------------------------------------------------------------------
Language                             files          blank        comment           code
---------------------------------------------------------------------------------------
Fortran 77                              79           6159           7485          37515
C                                      121           8078           7418          32300
C++                                      5           3117           6762          27459
C/C++ Header                            50           2780           4050          12528
Fortran 90                               5           1081            353           6067
make                                    46            419            585           2621
CMake                                   35            436            928           2118
Bourne Shell                            35            255            260            680
Markdown                                 5            237              0            680
CSS                                      1             92             47            217
TeX                                      1             16              0            160
Tcl/Tk                                   3             50            110            150
Bourne Again Shell                       7             66             90            142
Windows Module Definition                1              1              6             53
WiX source                               1             10              0             23
HTML                                     1              0              0             12
---------------------------------------------------------------------------------------
SUM:                                   396          22797          28094         122725
---------------------------------------------------------------------------------------


Statistical information for the repository 'e26e085a5a0b9d4a326f71d9' was
gathered on 2022/02/01.
The following historical commit information, by author, was found:

Author                     Commits    Insertions      Deletions    % of changes
Chi                              1             6              2            0.00
Vijay Vedula                     7           257            205            0.27
alexkaiser                       1             0          50067           29.37
osmsc                            1        119931              0           70.35

Below are the number of rows from each author that have survived and are still
intact in the current revision:

Author                     Rows      Stability          Age       % in comments
Chi Zhu                       4          100.0          0.6                0.00
Vijay Vedula                256           99.6          8.3               18.75
osmsc                     69660           58.1          0.0               19.87

whedon avatar Feb 01 '22 13:02 whedon

@whedon re-invite @axel-loewe as reviewer

Kevin-Mattheus-Moerman avatar Feb 01 '22 13:02 Kevin-Mattheus-Moerman

OK, the reviewer has been re-invited.

@axel-loewe please accept the invite by clicking this link: https://github.com/openjournals/joss-reviews/invitations

whedon avatar Feb 01 '22 13:02 whedon

@axel-loewe apologies for the second invite. I had added you initially as @ @axel-loewe by mistake. It should be fixed now.

Kevin-Mattheus-Moerman avatar Feb 01 '22 13:02 Kevin-Mattheus-Moerman

@chennachaos, @JaroslavHron, @axel-loewe thanks for your help with this review!!!! :partying_face: You may now start. Let me know if you have any questions.

Kevin-Mattheus-Moerman avatar Feb 01 '22 13:02 Kevin-Mattheus-Moerman

@whedon generate pdf

axel-loewe avatar Feb 11 '22 11:02 axel-loewe

:point_right::page_facing_up: Download article proof :page_facing_up: View article proof on GitHub :page_facing_up: :point_left:

whedon avatar Feb 11 '22 11:02 whedon

Hi @Kevin-Mattheus-Moerman - it seems that i have missed the invitation, and its now expired - could you reinvite me.

JaroslavHron avatar Feb 11 '22 11:02 JaroslavHron

@whedon re-invite @JaroslavHron a reviewer

Kevin-Mattheus-Moerman avatar Feb 11 '22 11:02 Kevin-Mattheus-Moerman

I'm sorry human, I don't understand that. You can see what commands I support by typing:

@whedon commands

whedon avatar Feb 11 '22 11:02 whedon

Zhu et al. present svFSI, a simulation software for cardiac physiology. It covers multiple cardiac functions (physics): solid mechanics, hemodynamics and apparently cardiac electrophysiology. The effort of developing a software for this challenging coupled problem and making if publicly available is appreciated.

License: Does the repository contain a plain-text LICENSE file with the contents of an OSI approved software license?

While there is no LICENSE file, there is Copyright-Simvasscular.txt which holds a license. Renaming might help to make this information more easily findable. The text seems to be the MIT license, I recommend mentioning this explicitly and also adding this information to the metadate of the GitHub project.

Contribution and authorship: Has the submitting author (@CZHU20) made major contributions to the software? Does the full list of paper authors seem appropriate and complete?

From the commit history, this does not seem to be the case (3 minor commits only). I am aware that the public commits may not be representative of the entire history of the project. Please comment on it.

Installation: Does installation proceed as outlined in the documentation?

I did not manage to compile the code with clang 13.0 (Undefined identifiers in METISLib). Do you see an option to increase compatibility with other compilers or to provide a container? In the current form, I cannot evaluate svFSI's functionality.

Functionality: Have the functional claims of the software been confirmed?

svFSI is introduced as a multi-physics simulator including electrophysiology, tissue mechanics and blood dynamics. Unfortunately, I could not find any information on electrophysiology in the paper or the documentation (http://simvascular.github.io/docssvFSI.html). As such, I suggest to either document these features or to remove these aspects from the paper. Later on I found this link at the bottom of the README file: http://simvascular.github.io/docsSimCardio.html#cep-modeling It's not entirely clear to me how SimCardio relates to svFSI and I strongly recommend to provide a comprehensive overview of all relevant documentation for svFSI at a central place.

Installation instructions: Is there a clearly-stated list of dependencies? Ideally these should be handled with an automated package management solution.

The website lists them but there is no automated way of installing them. Later on, I discovered more detailed information in the INSTALL-DEPS.md file in the repository. Would be good to sync this information with the web page documentation. Given the high number of dependencies and very specific versions being referred to in the documentation, I encourage you to consider providing a containerized version.

State of the field: Do the authors describe how this software compares to other commonly-used packages?

Functionality documentation: Is the core functionality of the software documented to a satisfactory level (e.g., API method documentation)?

As coupling multiple physics is a complex problem and also multiplies the number of user-chosen parameters, types of boundary conditions, pre- and postprocessing steps etc., I assume that svFSI probably provides only a subset of features of established single-physics simulators. I believe it would be important for potential new users to learn about which features are supported. The brief paper remains rather vagues and does not mention the concrete scope. The documentation I found on the website is a tutorial for setting up a fluid-structure simulation (which I believe will be valuable for new users). However, I could not find a comprehensive user manual. The Documentation folder only contains a Doxygen configuration file. I feel that a proper user documentation is a prerequisite for svFSI to be really useful beyond the group of developers.

Automated tests: Are there automated tests or manual steps described so that the functionality of the software can be verified?

Could not find such information. There are no CI pipelines implemented as GitHub actions. Cannot judge on external CI.

Community guidelines: Are there clear guidelines for third parties wishing to 1) Contribute to the software 2) Report issues or problems with the software 3) Seek support

Could not find such information in the repository or the svFSI part of the SimVascular webpage.

References: Is the list of references complete, and is everything cited appropriately that should be cited (e.g., papers, datasets, software)? Do references in the text use the proper citation syntax?

Line 27: Please change the reference to openCARP to this one: https://dx.doi.org/10.1016/j.cmpb.2021.106223

  • Is the Readme.md file required? Seems it does not hold relevant information for users/developers and might be confused with README.md. Will also cause trouble on non-case-sensitive file systems.

axel-loewe avatar Feb 11 '22 12:02 axel-loewe

@Kevin-Mattheus-Moerman - it seems that there was some typo in the re-invitation and it failed

JaroslavHron avatar Feb 11 '22 19:02 JaroslavHron

@whedon re-invite @JaroslavHron as reviewer

danielskatz avatar Feb 11 '22 19:02 danielskatz

OK, the reviewer has been re-invited.

@jaroslavhron please accept the invite by clicking this link: https://github.com/openjournals/joss-reviews/invitations

whedon avatar Feb 11 '22 19:02 whedon

:wave: @JaroslavHron, please update us on how your review is going (this is an automated reminder).

whedon avatar Feb 15 '22 13:02 whedon

:wave: @chennachaos, please update us on how your review is going (this is an automated reminder).

whedon avatar Feb 15 '22 13:02 whedon

@chennachaos, @JaroslavHron, can you given an update on review progress? Thanks.

Kevin-Mattheus-Moerman avatar Feb 25 '22 14:02 Kevin-Mattheus-Moerman

@CZHU20 can you respond to the issues raised above by Axel Loewe? :point_up:

Kevin-Mattheus-Moerman avatar Feb 25 '22 14:02 Kevin-Mattheus-Moerman

Hi @Kevin-Mattheus-Moerman. I have not started yet. I will start it next week.

chennachaos avatar Feb 26 '22 11:02 chennachaos

Hi @Kevin-Mattheus-Moerman, I will discuss the issues raised by Axel with my coauthors and post the formal response as soon as possible. Thank you.

CZHU20 avatar Feb 26 '22 18:02 CZHU20

@CZHU20 I hope you are doing well. I am just checking in to see how you are getting on addressing those issues. Can you provide an update? No worries if you need more time.

Kevin-Mattheus-Moerman avatar Mar 10 '22 12:03 Kevin-Mattheus-Moerman

@Kevin-Mattheus-Moerman Thanks for the reminder and sorry for the delay. I am afraid that it will take a little bit longer. This is my first time submitting to JOSS. May I ask if I can revise the manuscript based on first reviewer's comments now? Will this affect other reviewers? Thank you.

CZHU20 avatar Mar 10 '22 16:03 CZHU20

Hi, just to let you know - I should be able to submit my review by the end of this week.

JaroslavHron avatar Mar 10 '22 16:03 JaroslavHron

@Kevin-Mattheus-Moerman Thanks for the reminder and sorry for the delay. I am afraid that it will take a little bit longer. This is my first time submitting to JOSS. May I ask if I can revise the manuscript based on first reviewer's comments now? Will this affect other reviewers? Thank you.

@CZHU20 yes you can keep responding/fixing as the comments/issues come in. There is no former review round system. So yes people do start addressing reviewer comments and continue to do so.

Kevin-Mattheus-Moerman avatar Mar 11 '22 15:03 Kevin-Mattheus-Moerman

Just a quick update on the revision. We are still addressing some of the comments, especially those related to software documentations. Thank you for your help and patience.

CZHU20 avatar Apr 07 '22 13:04 CZHU20

Hi @Kevin-Mattheus-Moerman, I started the review for this but I am not able to check the boxes. Could you please assist me in this regard?

chennachaos avatar Apr 13 '22 10:04 chennachaos