Difference between revisions of "NairnFEAMPM"

From OSUPDOCS
Jump to navigation Jump to search
Line 9: Line 9:
== Downloads ==
== Downloads ==


The application <tt>NairnFEAMPM</tt> is a 64 bit, Intel-only application. Install by expanding the downloaded zip file and dragging <tt>NairnFEAMPM</tt> to your Applications folder. These versions require MacOS 10.9 or newer (but no longer tested below 10.11).
The application <tt>NairnFEAMPM</tt> is a 64 bit, Intel-only application. Install by expanding the downloaded zip file and dragging <tt>NairnFEAMPM</tt> to your Applications folder. This application require MacOS 10.9 or newer (but no longer tested below 10.11).


{| class="wikitable"
{| class="wikitable"
|-
|-
! NairnFEAMPM Download !! Size (MB) !! Updated
! NairnFEAMPM Download !! Size (MB) !! Updated
|-
| width="450"|[http://www.geditcom.com/downlds/NairnFEAMPM.zip NairnFEAMPM 8.0, With Binaries] - This version is the full-featured version of <tt>NairnFEAMPM</tt> and it contains compiled binaries for finite element analysis and for material point method analysis along with the <tt>xerces</tt> library that is used to process <tt>XML</tt> data. This version is for those wanting to try out the software may require a separate install of <tt>zerces</tt> to work (at least in recent version of MacOS). || align="center" width="65"|6.0 || align="center" width="85"|4 JAN 2021
|-
|-
| width="450"|[http://www.geditcom.com/downlds/NairnFEAMPMBare.zip NairnFEAMPM 8.0, No Binaries] - This version is also full-featured version of <tt>NairnFEAMPM</tt>, but it does not contain any binaries (which makes it smaller). This version is intended for those [[Download Source Code|checking out]] and [[Compile the Code Engines|compiling the source code]] and running running the binaries they create. See application help on "Code Engine Development" for running in this mode. || align="center" width="65"|3.1 || align="center" width="85"|4 JAN 2021
| width="450"|[http://www.geditcom.com/downlds/NairnFEAMPMBare.zip NairnFEAMPM 8.0, with Xerces] - This version is a full-featured version of <tt>NairnFEAMPM</tt> for running [[NairnFEA]] and [[ NairnMPM]] but it does not contain those binaries . To run calculations, you have to [[Download Source Code|check out]] and [[Compile the Code Engines|compiling the source code]] and with those binaries. See application help on "Code Engine Development" for running in this mode. || align="center" width="65"|3.1 || align="center" width="85"|4 JAN 2021
|}
|}


After starting the application, please read the help information (in the "Help" menu) menu to get started (including some quick start, sample calculations) and to see "what's new" (for previous users). If for some reason, you cannot get the binaries to run on your computer, you should switch to [[Download Source Code|checking out]] and [[Compile the Code Engines|compiling the source code]] to create external binaries. See the application's "Code Engine Development" help topic for more information.
I have given up trying to stay ahead of Apple to keep this package easy to reun. Every new MacOS makes it harder. Probably the last straw was that it is not possible to provide a parallel version of the software using Apple developer tools. They do not support Open MP methods for parallel code unless you install a compiler, click clang-mp, that supports. If you are going to install that compile, it is just better to create you own binaries to best work around Apple. Below are steps to run NairnFEAMPM. Many of these only need to be done once.
 
==== Limitations on Embedded Binaries ====
 
<tt>NairnFEAMPM</tt> (and [[NairnFEAMPMViz]]) can be delivered as a stand-alone package with all compiled tools and libraries embedded within the application's resources. While this approach is good to quickly try out the software with calculations, it has limitations:


<dl>
<dt>Install Xerces</dt>
<dd>The cone engines use public-domain <tt>xerces</tt> package to robust reading of <tt>XML</tt>. The binary is included in the above download and Apple used all binaries to link to that executable, but that no longer seems possible. To install it:
<ol>
<ol>
<li>The binaries have been compiled with standard Apple compiler and linked to C++ libraries available in standard MacOS installations. Unfortunately, the Apple compiler does not support <tt>OpenMP</tt> that is used for parallel coding. When using embedded binaries, you are limited to serial calculations. It is also possible your installation will not even have the correct C++ libraries available (meaning no calculations can be done).</li>
<li>Control click on NairnFEAMPM app and choose "Show Package Contents"</li>
<li>It is difficult to update binaries when new versions become available.</li>
<li>Navigate to folder Contents\Resources\binaries\lib</li>
<li>Open a new Finder window, choose menu command "Go to Folder...", enter "/usr". You will need to provide you password to open this folders (that Apple does not want you to see).</li>
<li>In /usr folder, navigate to folder /usr/local/lib (you may need to create the "local" or "lib" folders if not already there.</li>
<li>Drag the two <tt>xerces</tt> files from the "binaries" folder in NairnFEAMPM app to /usr/local/lib.</li>
</ol>
</ol>
<dd>


Both these limitations are removed by [[Download Source Code|checking out]] and [[Compile the Code Engines|compiling the source code]] to create your own binaries as well as [[Compile the Code Engines|installing your own version of <tt>xerces</tt>]]. Once this approach is set up, you can use either <tt>NairnFEAMPM</tt> app download in the above table and refer to the "Code Engine Development" help to learn how to run the binaries you create. Finally, when new versions are available, just update and recompile the project; <tt>NairnFEAMPM</tt> will use the new ones immediately.
<dt>Compile NairnFEA and NairnMPM Binaries</dt>
 
<dd>[Download Source Code|Check out]] and [[Compile the Code Engines|compiling the binaries]] as explained in those links.</dd>
=== App Store Version ===
 
The App Store version is ready to run and can do both FEA and MPM calculations, but it is sandboxed application. While sandboxing may be a benefit to users for security, it is not fully compatible with some uses of <tt>NairnFEAMPM</tt> that treat your computer as your workstation for research rather than as a sandbox for play time. The main differences needed for sandboxing are listed below; if you need any of these missing features, simply switch to the full-feature version instead. If not, the sandboxed version should be fine.
 
<dl>
<dt><b>Workspace Folder</b>
<dd>The App Store version cannot read or write any of your own files unless you grant it specific permission. The solution is for you to designate a workspace folder with that permission. You will be asked to pick a workspace folder the first time <tt>NairnFEAMPM</tt> is launched. You can change this selection at any time in the preferences window. All calculations should be saved in this folder only.
 
<dt><b>External Code Engines</b>
<dd>A powerful way to use <tt>NairnFEAMPM</tt> is for code engine development, but running executable binaries in arbitrary locations is a challenge for a sandboxed application. The solution was to eliminate this option for the App Store version. If you want to run external code engines, you need to use the full-featured version.


<dt><b>Background Processes</b>
<dd>Open help window for NairnFEAMPM and see the help section on "Code Engine Development". It explains how to set the preferences to run the binaries you created in the previous step.</dd>
<dd>The full-featured version lets you submit long calculations to background process that will run even if you quit <tt>NairnFEAMPM</tt>. Creating such independent processes within a sandboxed application does not appear possible. If you want to be allowed to submit background jobs, you need to use the full-featured version. In addition the process info window is only needed for monitoring background jobs and therefore it is only available in the full-featured version.


<dt><b>Scripting</b>
In the future, you can just download updates to NairnFEAMPM and use it without needing to reinstall <tt>xerces</tt> or recompile binaries. If the code engines are updated, you can download just the new source code and recompile and they will run it whatever version of NairnFEAMPM you already have. You can even recompile them while running NairnFEAMPM and the next run will use the new version.
<dd>Although <tt>NairnFEAMPM</tt> is a scriptable application, it is a challenge to support robust scripting options in a sandboxed application (and python, which I prefer, seems to not be allowed). As a result, the scripts menu is only available in the full-featured version. If you would like to use scripts to control calculations, you should switch to the full-featured version.


</dl>
Apple is now switching to new chips. If you are using a new Mac that does not have Intel chips, you will likley need intsall a new <tt>xerces</tt> binary to work on the new chips too.


== Free Registration ==
== Free Registration ==


The <tt>NairnFEAMPM</tt> system is free but uses an unlocking code to help monitor its use. By registering you will hear about developments and/or about any problems that might arise. To get a free registration code, use the "Reguest Registration Code…" command in the "Help" menu. A free code will usually arrive by email within a few days. While waiting you can use the application in "Trial Mode."
The <tt>NairnFEAMPM</tt> system is free but uses an unlocking code to help monitor its use. By registering you will hear about developments and/or about any problems that might arise. To get a free registration code, use the "Reguest Registration Code…" command in the "Help" menu. A free code will usually arrive by email within a few days. While waiting you can use the application in "Trial Mode."

Revision as of 10:28, 5 January 2021

NairnFEAMPM is a Mac-only application to create simulations, run them, and visualize them.

Introduction

The NairnFEAMPM application is finite element and material point method analysis software for the Macintosh. NairnFEAMPM is being developed by Prof. John A. Nairn from the Wood Science and Engineering Department Oregon State University. This application is free but it is a dynamic work in progress as part of an active research program.

If you are not using a Mac, you can do almost the same things using the java application NairnFEAMPMViz.

Downloads

The application NairnFEAMPM is a 64 bit, Intel-only application. Install by expanding the downloaded zip file and dragging NairnFEAMPM to your Applications folder. This application require MacOS 10.9 or newer (but no longer tested below 10.11).

NairnFEAMPM Download Size (MB) Updated
NairnFEAMPM 8.0, with Xerces - This version is a full-featured version of NairnFEAMPM for running NairnFEA and NairnMPM but it does not contain those binaries . To run calculations, you have to check out and compiling the source code and with those binaries. See application help on "Code Engine Development" for running in this mode. 3.1 4 JAN 2021

I have given up trying to stay ahead of Apple to keep this package easy to reun. Every new MacOS makes it harder. Probably the last straw was that it is not possible to provide a parallel version of the software using Apple developer tools. They do not support Open MP methods for parallel code unless you install a compiler, click clang-mp, that supports. If you are going to install that compile, it is just better to create you own binaries to best work around Apple. Below are steps to run NairnFEAMPM. Many of these only need to be done once.

Install Xerces
The cone engines use public-domain xerces package to robust reading of XML. The binary is included in the above download and Apple used all binaries to link to that executable, but that no longer seems possible. To install it:
  1. Control click on NairnFEAMPM app and choose "Show Package Contents"
  2. Navigate to folder Contents\Resources\binaries\lib
  3. Open a new Finder window, choose menu command "Go to Folder...", enter "/usr". You will need to provide you password to open this folders (that Apple does not want you to see).
  4. In /usr folder, navigate to folder /usr/local/lib (you may need to create the "local" or "lib" folders if not already there.
  5. Drag the two xerces files from the "binaries" folder in NairnFEAMPM app to /usr/local/lib.
Compile NairnFEA and NairnMPM Binaries
[Download Source Code|Check out]] and compiling the binaries as explained in those links.
Open help window for NairnFEAMPM and see the help section on "Code Engine Development". It explains how to set the preferences to run the binaries you created in the previous step.
In the future, you can just download updates to NairnFEAMPM and use it without needing to reinstall xerces or recompile binaries. If the code engines are updated, you can download just the new source code and recompile and they will run it whatever version of NairnFEAMPM you already have. You can even recompile them while running NairnFEAMPM and the next run will use the new version. Apple is now switching to new chips. If you are using a new Mac that does not have Intel chips, you will likley need intsall a new xerces binary to work on the new chips too.

Free Registration

The NairnFEAMPM system is free but uses an unlocking code to help monitor its use. By registering you will hear about developments and/or about any problems that might arise. To get a free registration code, use the "Reguest Registration Code…" command in the "Help" menu. A free code will usually arrive by email within a few days. While waiting you can use the application in "Trial Mode."