Code Monkey home page Code Monkey logo

cirdles / squid Goto Github PK

View Code? Open in Web Editor NEW
12.0 14.0 27.0 72.05 MB

Squid3 is being developed by the Cyber Infrastructure Research and Development Lab for the Earth Sciences (CIRDLES.org) at the College of Charleston, Charleston, SC and Geoscience Australia as a re-implementation in Java of Ken Ludwig's Squid 2.5. - please contribute your expertise!

Home Page: http://cirdles.org/projects/squid/

License: Apache License 2.0

Java 94.29% CSS 0.50% ANTLR 0.14% XSLT 5.04% Shell 0.02%
java geochronology text-expression-parsing javafx

squid's Introduction

Squid3 Logo

Squid3

Build Status Known Vulnerabilities Codacy Badge

Please visit wiki.

Click to View New HowTo Videos

Click to View New Sustainable Software Development Video

We encourage you to download and evaluate the latest Squid3 release, the ".jar" file found here.

Squid3 requires Oracle's Java 1.8. It will not run on later versions of Java EXCEPT as explained below:

With the current release of version 1.9.0, Squid3 is now compatible with the three LTS (long-term support) versions of Java - 8, 11, and 17. You can read here about the history of Java versions. Squid3 release ".jar"s are built using Java SE8 to run correctly on 8, 11 and 17. There is an important caveat, however, that the Squid3 graphical user interface is built using JavaFX. JavaFX is included in most releases of Java 8, but has been separated into a different project in all later Java versions. The result is that, in general, a different Squid3 "jar" file must be created for each flavor of operating system - Win, Mac, and Linux, since JavaFX is coupled to the underlying environment. There are various ways to automate this process, but the most elegant and time-saving solution for us is to depend on the Liberica family of Java JDKs and JREs, which provide a "full" version that automatically brokers the JavaFX environment needed for the operating system and only requires one version of the Squid3 "jar" that will run on any system using Liberica's full JDK or JRE 8, 11, or 17.

If you are successfully running Squid3 using Oracle's Java 1.8, the following paragraph is for information only.

The Liberica full JDK or JRE for 8, 11, or 17 for your operating system can be downloaded as a compressed archive and expanded anywhere you choose. If you want to make this version the default on your operating system, there are many online tutorials to follow. The Java executable is in the "bin" folder and is named "java" for Mac and Linux, and " java.exe" for Windows. To run the Squid3 "jar" file, open a terminal window and paste in the path to the java executable, followed by a space character and the flag "-jar" followed by a space character and the path to the Squid3 " jar" file.

Windows example assuming terminal is currently in folder containing Squid3 "jar":

C:\MYJAVA\jdk8u302-full\bin\java.exe -jar Squid3-1.9.0.jar

Mac or Linux example assuming terminal is currently in folder containing Squid3 "jar":

/Users/yourName/Documents/MYJAVA/jdk8u302-full/bin/java -jar Squid3-1.9.0.jar

If you need to have a copy of Squid3 that runs on a specific OS and a Java JDK or JRE that does not include JavaFX, we can provide one or provide instructions for you to build one from the source code.

Note to Developers

Squid3 can be compiled from the source code by using Gradle 7.2 running Java 8, and it will run on any of the Liberica full JDKs or JREs 8, 11, 17. If Gradle 7.2 is set to use a higher version of Java (Liberica), then Squid3 will not run on lower numbered versions of Java.

gradle clean build 

Squid3 "jar" file can then be built:

gradle fatappjar

Addendum

Azul also provides JDKs and JREs for Java 8, 11, and 17 pre-packaged with JavaFX here.

Note to Users

Thank you for using Squid3. We depend on your feedback to keep Squid3 up-to-date and useful to you. To contribute issues and feedback, please join GitHub here. While using Squid3, the help menu provides a link that initializes a new GitHub issue for you - please use freely.

The current versions - Squid3-1.9.n.jar - provide full workflow support for processing and interpreting Shrimp data outputs in the form of Prawn xml files and 'OP' files including project, data, task, expressions, visualizations, reports, and parameters management. Squid3 provides for creating and saving Squid3 Project files that have an extension of ".squid" and are intended to save the current state of work on a project. The workflow is mapped left to right in the menus, as described below.

The Project menu provides for creating new GEOCHRON and RATIO projects. The functionality for RATIO projects is still under development - please feel free to contribute ideas. A new GEOCHRON project can be created from a single Prawn XML file, from a single Prawn XML file zipped, from merging two Prawn XML files, or from an 'OP' file. A special demonstration Squid3 project is available from this menu, thanks to @NicoleRayner. The project manager allows for naming the project, naming the analyst, and reviewing statistics about the loaded data as well as keeping notes about the project.

    All data-processing parameters are specified on the Project Manager page: whether to normalize counts for SBM; ratio calculation method; preferred index isotope, constraints on weighted means of reference materials; the common lead model for reference materials; and the physical constants model to be used in the project. Note on parameter models: See below for how to manage these models from the Parameters menu item. Changing these model selections updates all the dependent calculations within the Squid3 task. The currently-used names and values from these models are listed in the Expressions Manager left-hand panel and display as read-only expressions. The 'notes' window in the Expressions manager provides additional info about each model value. Models selected for a task are saved with the Squid3 Project (.squid) file so if anyone opens a .squid file, the included models will be added to the local store of models available to Squid3, if not already present.

The Data menu: 1) Manage Sample Names, 2) Manage Spots and Reference Materials, and 3) Audit Raw Data for all data files. For Prawn data files, it also provides for saving and swapping out data files. 'Manage Sample Names' automates with overrides the naming of samples based on delimiters or leading character counts. 'Manage Spots and Reference Materials' supports editing spot names, filtering spots by name, and setting both the project's reference material spots and concentration reference material spots by using the same filtering feature. The reference material models are selected here as well. The context menu on the left-side list is accessed by a right-mouse click and has items for removing a spot and splitting the data file into two files. Any modifications to the data file can be saved to a new file if needed. Note that saving the project preserves the changes to the data within the project file but without changing the source data file. 'Audit masses' provides time-based views of masses and is configurable to show mass differences as well.

The Task menu -

  1. 'View Current Task' provides for the user to configure the metadata about a task including choosing directives for daughter/parent ratios. Additional editing of the task is available via the 'Edit Current Task' button at the bottom of the view task page. The task editor provides for editing the masses, the index of the background mass, the ratios using these masses, the directives, and the four special expressions: ** Uncor_206Pb238U_CalibConst**, Uncor_208Pb232Th_CalibConst, 232Th238U_RM, and ParentElement_ConcenConst. Please note that Squid3 in GEOCHRON Mode requires mass labels 204, 206, 207, 208 and ratios 204/206, 207/206, and 208/206 as they inhabit the built-in expressions engine. In order to use this task with the current data file, the count of masses must match and Squid3 will alert the user if they do not. The 'Directives' allow switching between using the primary ages of 206/Pb/238U or 208Pb/232Th and whether to directly calculate 208Pb/232Th - these are the pair of choices that Squid2.5 also makes available. These choices interact with the list of preferred index isotopes shown - '208Pb' is only available when the primary age is 206Pb/238U and the calculation of 208Pb/232Th is indirect. Also, if '208Pb' is selected, the directives cannot be changed.

  2. 'New Task from ...' a) current task without custom expressions, b) current task including custom expressions, c) empty task - will each open the task editor.

  3. 'Browse, load, or edit task files ...' a) from Squid3 Built-In Tasks Library, b) Squid3 Custom Tasks Folder, c) Squid2.5 Custom Tasks Folder - each provide access to a list of tasks with their details, which can then be edited or used directly in the current task, provided the mass counts align.

The Isotopes menu: 1) 'Map Isotopes from Data to Task' provides for mapping the isotope or mass labels provided by the data file for each mass station to the task's isotope or mass labels. Tasks generally refer to masses using integers such as '204' or simple decimals such as '195.8', whereas the labels for the mass stations recorded in the data file usually have several significant digits of atomic mass, such as '195.75123'. The background mass can be specified here or in the task editor. After clicking the orange button at the bottom to copy the labels, the columns D (Data Isotope Label) and T (Task Isotope Label) will contain the same values.

Expressions menu - 'Manage Expressions' has a left panel organized by expression type that provides for sorting the expressions within each list by Name, Execution order, or Target spot set - reference material, concentration reference material, and unknowns - denoted by left-hand superscripts of R or C, and U. All the built-in expressions have been named in a consistent fashion per issue #164 discussions and have explanatory text in their 'notes' panel provided by @sbodorkos . Of particular note (idea thanks to @NicoleRayner ) is that the expressions targeting reference materials only are suffixed by "_RM". The tab for 'Unhealthy Expressions / Mismatched Targets' will appear in red red if any are present. Squid3 supports the assignment of a sample (a group of unknowns) as the target of custom expressions - see the drop-down box populated with the sample names to the right of the unknown samples checkbox. The drop down only appears if unknowns is checked and reference material is not checked.

    Squid3 operates under the hood with units of annum and 1-sigma absolute uncertainties as defaults. Squid3 provides a context for SHRIMP geochronology in the peek window of the expressions manager that displays ages and their absolute uncertainties in Ma as well as concentrations in ppm, and displays both absolute and percent uncertainties. Expression grammar has been simplified so that the only times that the surrounding '["..."]' brackets and quotes are needed is for isotopes, as in TotalCPS(["206"]), for ratios, as in ["204/206"], for expression names that use other that any combination of letters,digits, and the underscore, and finally for all expressions where you seek the absolute (±) or percent (%) uncertainty, as in [±"204/206"]. The expression audit includes an audit of the target spots for compatibility - it checks and reports whether the target choice of Reference Material and / or Unknowns matches at every level of an expression. Thanks to @sbodorkos for the suggestion.

Common Pb menu - 'Unknowns: 204 Count Corrections & Assign Common Pb Ratios' provides for customizing how Squid3 handles common Pb for Unknowns.

Interpretations menu - 'Reference Materials' and 'Unknowns' provide Wetherill and Tera-Wasserburg Concordia diagrams produced by Topsoil, customizable weighted means with plots, and a generic plotting function for any two expressions using reference materials.

Reports menu -

  1. 'Custom Report Builder' provides built-in reports for Reference Materials, Unknowns, and Weighted Means. The report builder supports custom categories with drag and drop columns from the left-side list of available expressions and drag and drop ordering of categories and columns. Reports can be viewed or saved as '.csv' files into the project's Squid3ProjectReports folder that is created in the same folder in which the current Squid3 project is saved.
  2. 'Summary Expressions and Values' creates reports for Reference Materials and Unknowns detailing the summary expressions defined for each.
  3. 'Project Audit' and 'Task Audit' produce meta-data reports for each.
  4. 'Generate all Reports' produces all reports into the project's Squid3ProjectReports folder mentioned above.
  5. 'Miscellaneous Reports' provides a variety of reports of interest.

Archiving menu is not yet active. We seek input from the community as to how archiving might be implemented.

Parameters menu - 'Reference Material Models', 'Common Pb Models', and 'Physical Constants Models' each open the Parameters Manager to the appropriate tab. Squid3 provides several documented default models in each category. Models can be created, imported from 'xml' files, and exported as 'xml' files. Parameter models used in a Squid3 project remain with the '.squid' project file so that opening that file provides access to the contained models. Note that reference material models can be based on TIMS-generated ratios with calculated apparent ages or using a simplified approach to support the transition from Squid2.5 that provides the requisite "Reference Dates", inspired by input from @NicoleRayner.

About menu -

  1. 'About Squid3' summarizes Squid3's purpose and identifies collaborators and financial supporters.
  2. 'How to cite Squid3' provides a link to our latest publication.
  3. 'Squid3 GitHub Repository' provides a link to this repository.
  4. 'Squid3 Development Notes' links to a wiki documenting the porting of Squid2.5 to Squid3.
  5. 'CIRDLES.org' links here, the home of the College of Charleston development team.
  6. 'Topsoil GitHub Repository' links to Topsoil, used to provide Concordia diagrams in Squid3.

Help menu -

  1. 'Video Intro to Sustainable Software Development' shows video introduction.
  2. 'Introduction and Guide to Menu' opens this document.
  3. 'Video Tutorials on YouTube' features videos produced by @NicoleRayner and found here.
  4. 'Video Tutorials on Google Drive' features the same videos and found here.
  5. 'Contribute an Issue on GitHub' is a shortcut to creating a new issue with key runtime environment metadata automatically supplied.

Thank you in advance for any suggestions you contribute. We are available for walk-throughs, etc. if needed to help convince you to participate and contribute.

Additional features will appear over time and may not be documented here concurrently. Please be patient and contribute your ideas via the issues tracker.

Please volunteer to help with documentation, how-to videos, coding, etc.

Updated 27 December 2021.

squid's People

Contributors

bowring avatar cawilson1 avatar drakene avatar jakemarotta avatar mgaonach avatar nicolerayner avatar ryanbarrett1515 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

squid's Issues

Expression Builder: refine presentation of lists of spots

It would be nice if (as is generally the case) not all spots are shown, to make the last entry an ellipsis: ". . ." to denote the missing data. Also, when both ref materials and unknowns are shown, add a blank line between the two lists.

A few suggestions from the GSC SHRIMP lab. I'll start with trivial things:

Squid3 Version: 0.3.0
Java Version: 1.8.0_171
OS: Windows 7 6.1

Issue details:

  • add DENOMINATOR and NUMERATOR to the axes of the ratio builder grid.
  • Grey out the "expression" accordion when in edit mode.
  • Add functionality to set the default folder when opening/saving the different files (.xml, .squid etc)

expression visual math still shonky on a PC

Squid3 Version: 0.1.8
Java Version: 1.8.0_131
OS: Windows 7 6.1

Issue details:
The visualization of the equations in the "Graph" window is still shady on a PC. Assume this is a fialure to find an internet library?
image

Ideas for 'file-at-once' audit of parsed XML

To complement the existing SQUID 3.0 0.0.1 interface:

(1) Analyses aggregated by number of species measured, summing to the total number of analyses collected, the idea being to highlight the presence of any analyses that have a different number of peaks to the 'mode'. The demo XML corresponds to the trivial case i.e. [Analyses with 10 species = 114; total analyses = 114].

(2) Analyses aggregated by number of scans, summing to the total number of analyses collected, the idea being to highlight the presence of any analyses that have a different number of scans to the 'mode'. The demo XML corresponds to the trivial case i.e. [Analyses with 6 scans = 114; total analyses = 114].

(3) A measure of total session duration, in hours, calculated by subtracting the first (chronological) analysis date/time from the final analysis date/time. The idea would be to provide a simple flag for sessions which have been inadvertently merged. This occurs most commonly when an analyst fails to log in to the SHRIMP control software at the start of their analytical session, in which case their new data is simply appended to the end of the XML file from the previous session. (Down the track, it would be worth looking at a mechanism for 'splitting' an XML file into time-delimited segments to help address this issue. We currently do it manually with a text-editor, and it's one of the main reasons most users still prefer working with PD input, rather than XML: even with SQUID's dumb XML parser, manually converting one XML file into two is fraught!).

(4) A count of the number of analyses containing the SQUID 3.0-generated suffix '-DUP-'. There should never be many; it would just be to help the interested analyst track down and amend them all.

(5) A two-stage prefix-based audit of all analysis-labels in the file (summing to the total number of analyses acquired), dictated by a user-specified number of leading characters. The first stage would correspond to what you have already done: using the minimum-length prefix to identify the set of reference zircon analyses (and remove them from further prefix-based consideration), with a summary (in the case of one-character prefix in the demo XML) like [T = 23, others = 91, total analyses = 114].

The second stage would operate solely on the set of 'others', and usually a user will have a good idea of the length of their identifier-prefixes, so could choose the number of characters that suited them best: the main idea would be to identify occasional analyses where the prefix was mistyped at the time the spot was programmed for analysis (still a vulnerable manual process). For example, for a user-defined length of 1 character, the demo XML would show [M = 1, [character] O = 16, [numeral] 0 = 49 (being the combination of 097 and 099), 1 = 25, total 'others' = 91]. Increasing to two characters would give [M2 = 1, OG = 16, 09 = 49 (being the combination of 097 and 099), 10 = 25, total analyses = 91]... note that if one of the '097' prefixes had been mistyped as '079', for example, it would show up at this point, with 07 = 1, which a user would hopefully identify as being anomalous. In the demo XML, the 'useful length' of the prefix is three characters, which would give [M25 = 1, OG1 = 16, 097 = 24, 099 = 25, 100 = 25, total analyses = 91].

It doesn't address every potential problem (e.g. analyses of one sample mislabelled as analyses of another) but it will do the job on silly typos. Note also that although the primary purpose is to permit spot-label clean-up prior to data-processing, there might be potential to store the user-anointed prefixes for later use, when the user wants to divide up the processed data for sample-specific interpretation.

Change awareness for Squid projects.

We need to implement a cross-cutting concern that records whether anything has changed at any level in the project and alert the user to the need to save when exiting a project.

Background selection multiples.

Some acquisition tables have multiple background positions, as the background count rate can change at different places in the mass spectrum. For run tables with multiple backgrounds, users will need to nominate:
-Which background to use.
-Whether to interpolate between stations (advanced- not necessary in first instance).

Squid may want to:
initially assign nearest background to peaks AS LONG AS USER CAN CHANGE THIS later

Defining masses from Prawn xml file - two decimal places needed for species ID

When I open a new prawn xml file, the species are identified by their closest integer mass. This results in "duplicate" masses for species that are close to one another (e.g. 204 and 204.1 aka background). The masses in the prawn file are given to 6 decimal places, so it must be rounding and that is causing the problem. Please display the masses from the prawn file with 2 decimal places (if it were only 1 decimal place in some cases if it rounded up/down it might confuse masses, more than that is overkill).
prawnfile audit _ masses in prawn file vs task

Provide for manual spot rejection in Weighted Means of Reference Materials.

Design, implement, and test this functionality for manual spot rejection in Weighted Means of Reference Materials.

Background

Per email to me of 10 May 2018 from @sbodorkos:
Re: weighted means, remember there aren’t all that many calculated in the automated processing (although maybe we’ll need to think about what defaults we want if people include calls to WtdAv in their Task equations). Note also that none of this applies to TukeysBiweight. All of the following relates only to invocations of WtdAv in different situations.

“Preferences”
The “Preferences”-style option for users to bypass auto-rejection procedures applies specifically to WtdMeanA calculations on the Standard (i.e. not elsewhere). Ludwig’s idea was that there ought to be no source of ‘geological’ variation in WtdMeanA, so that is the only place where auto-rejection could be uncritically applied (the corresponding situation in any given Sample, where geological variation is likely to be the primary cause of dispersion, is handled by FindCoherentGroup, a subroutine as yet untraversed).

Users requested the option of specifically ‘switching off’ the auto-rejection routines applying to WtdMeanA on the Standard, in recognition of the fact that there will always be a subclass of users who take such rejections as gospel, even while being ignorant of the reasoning (remember that SQ2.50 does not provide ‘rejection reason’, and I am really happy that SQ3.0 will change this). That measure was intended essentially to protect inexperienced users from themselves. (Ludwig’s philosophy here is odd: everywhere else in SQ2.50, he sets very stringent tests for outlier rejection, and commonly outliers are retained even when they look to the human eye as if they ‘should’ be rejected… the population defining WtdMeanA is a glaring exception, where his auto-procedures often result in ‘too many’ rejections!)

Note that the Preferences should apply equally to all potential WtdMeanA calculations e.g. in a Perm1 situation, where the range of potential WtdMeanA values spans 4corr206/238, 7corr206/238, and 8corr206/238, the Preference setting should be the same for all.

“Redo”
What we will need to deal with more broadly is the Redo functionality of WtdAv. Remember that WtdAv as implemented in Isoplot has a Boolean argument CanReject, and when this is set to TRUE, the Rejection ‘sub-subroutine’ (invoked via GOSUB in subroutine WeightedAverage) is enacted. For example, when WtdAv is invoked during a WtdMeanA calculation, CanReject is indeed set to TRUE, and the Rejection sub-subroutine is that responsible for the second round of auto-rejections (the first round being the ‘large error’ rejections independently undertaken beforehand).

But irrespective of the CanReject setting of any initial WtdAv invocation, a “Redo” occurs after an initial WtdAv has been calculated, and after the user has had to that chance to modify any auto-rejections (or FindCoherentGroup rejections) that might have happened. As a consequence of these things, when WtdAv is invoked via “Redo”, it is essential that:

(1) Auto-rejection routines (as applying to WtdMeanA; see above) must be bypassed completely

(2) CanReject must be FALSE

The combined effect of these two measures is to force WtdAv, when invoked via “Redo”, to perform its calculations solely on the ‘non-rejected’ set of analyses specified by the user.

Expression Builder - eliminate unneeded call to remove expression

It seems that in this snippet from save() lines 2170-2175, that the removeExpression call should only occur twice if the the expression names are different?

        //Remove if an expression already exists with the same name
        task.removeExpression(exp);
        if (currentMode.get().equals(Mode.EDIT)) {
            task.removeExpression(selectedExpression.get());
        }
        task.addExpression(exp);

Bug-> PrawnFile -> Manage Spots & Choose Reference Materials

Squid3 Version: 0.1.4
Java Version: 1.8.0_131
OS: Windows 7 6.1

Issue details:
After editing duplicate spot names, all other spots starting with that initial letter are not selected when filtering by prefix. EG if two of the 28 Tem-X grains are renamed, then they are the only ones which show up when filtering.
100157.squid.zip

Prawn file - additional parameters to audit part 2

Plots of time vs analytical conditions info from xml file. Primarily it would be nice to see a plot of time vs of primary beam intensity (nA) throughout the session as an option in Audit. There are likely other parameters too, like counts per second of essential elements (like Zr 196 in zircon).

Duplicate names bug

Introduced in previous bug fix making spot names case insensitive ... need to detect duplicates also with case-insensitive filter.

Loading some arbitrary ratio tasks yields a lot of unhealthy expressions- Manage Expressions screen doesn't load

To date, only a few tasks have been investigated and as a result many expressions are not recognized and some may throw exceptions not anticipated, hence the expressions window failing to load. In addition, many expressions from imported tasks are intended to be ignored because they are really about output formatting. I concur, as a start, (per @cwmagee 's suggestion) we specify a set of say 10 tasks for a 10-peak analysis and walk through each task, deciding how Squid3 will handle each expression. We will find that there are functions not yet ported from LudwigLibrary and that there are naming conventions to be handled, etc. This will be a tedious learning process for Squid3, but we should start. Step 1 is to select these ten tasks for initial analysis and proceed to decide how to handle each contained expression. Step 2 is to implement and test handling these expressions. Step 3 is to repeat with more. We should consider a Google drive folder fo the tasks we are considering. Thoughts - @cwmagee and @sbodorkos ?

Prawn file - Audit: additional parameters to audit

Audit of masses is good. Would also like to see audit of offsets between masses, for example the difference in the magnet mass value between 196 Zr (an autocentred peak) and 204 (non auto-centred). This should stay constant but if ONE of these drifts off mass it is easier to spot in the offset rather than the straight mass. I could provide a list of common offsets that we check, but ideally we could have some sort "offset builder" and then those are shown in an audit plot.

Expressions - Built in expressions -- error in age calculation

I opened one of our existing Prawn xml files and a accompanying task. When I inspect the task, there are 2 204corr206Pb/238U age equations under "Built in expressions". One expression (highlighted in yellow in the screen snap attached) is empty (returns 0 in the viewer). The other (which is selected in the screen snap) does return an equation but the result in wrong. The problem is that the denominator should not simply be lambda238 but lambda238*10^6 in order to return the age in Ma.
error in age calculation

I haven't tried this experiment with one of your test files. Perhaps the issue is the parsing of my SQUID2.5 task but wanted to flag.

Help -> Online resources -> Github repository bug

Squid3 Version: 0.1.7
Java Version: 1.8.0_131
OS: Windows 7 6.1

Issue details:
Help -> Online resources -> Github repository bug does not open anything in a browser. It doesn't do anything at all. Maybe a GA firewall issue?

Reports - change in menu hierarchy

As discussed today, I would find it more intuitive if the order of the nested options in the Report menu was:
Report --> Reference Material/Unknowns --> Within spot results/Spot average results (not exactly sure if "results" is the right word, but I find "ratio" a bit non-intuitive because these aren't just reports of ratios they are reports of the output of every expression.

Display issue for equations

Squid3 Version: 0.1.4
Java Version: 1.8.0_131
OS: Windows 7 6.1

Equation font size and line positions don't seem to match up.
Issue details:
image

Expression Builder selection mode sometimes fails.

Currently, importing a Squid2.5 task produces two temporary custom expressions: DUMMY and DUMMYsum, both with the value of "5" but DUMMYsum has the summary switch on. When you open the Custom Expressions accordion and click on DUMMY, then click on DUMMYsum, nothing changes in the Peek window. If you click on another expression and then on DUMMYsum, it is correct, but clicking on DUMMY has no effect. This behavior does not exist in the deprecated Expression Manager. We need to determine and fix the cause in Expression Builder.

Prawn file schema change required

Here is a snapshot of the error message that I get for a new .xml file. I will email you the actual xml file in case this isn't adequate to know exactly what change is need in the schema

prawn file schema error message

Expression Builder needs two modifiers added to drag-and-drop: % and ±

Note: this will apply to ratios and NU-switched expressions only (for now)
Note: % = per cent unct and ± = absolute unct

Two strategies:

  1. add to context menu the choices of inserting these symbols in, for example: ["204/206"]

  2. add a new accordion panel "Modifiers" with these two symbols.

I favor choice 1.

Relax user constraints in Expression Builder

  1. Allow for editing, removal, export, loading, etc of "NU-switched", "Built-in", and "Unhealthy" expressions. Keep Ratios constrained.

  2. Provide enabled NU-switch checkbox next to Summary Calculation checkbox - remember this field is Expression (not ExpressionTree) specific

  3. Enable Summary Calculation checkbox

Provide for splitting and joining Prawn XML files.

Specs: a new project menu item for either using a single prawn file or for joining two prawn files. Provide a context menu in the project manager's 'Manage Spots' tab for the left-hand list of all spots
to select splitting the runs at the selected run (second half begins with selected run) using the visible edited data with duplicates noted, or the original data without edits or duplicated noted.

Select ratio table

Squid3 Version: 0.1.7
Java Version: 1.8.0_131
OS: Windows 7 6.1

Issue details:
It would be the axes ought to be labelled "numerator" and "denominator". Also, selecting an entire row or column by clicking the label would be handy. The display will have issues with run tables were decimal mass stations are used, unless some sort of auto scaling can be done.

Update the behavior of menu items "Expressions / Load ... from xml File".

  1. Currently, an expression with the same name as an existing expression can be loaded - thus if you export an expression and then load it, there will be two expressions with the same name. We should have a warning to the user and allow them to cancel or replace or rename.

  2. Also, once loaded, the focus returns to the deprecated Expression Manager instead of to the new Expression Builder. The focus should always go to the Expression Builder and then also highlight the newly loaded expression.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.