OPAL issueshttps://gitlab.psi.ch/groups/OPAL/-/issues2018-03-05T10:56:35+01:00https://gitlab.psi.ch/OPAL/runOPAL/-/issues/2Replace use of depecrated commands module by subprocess module2018-03-05T10:56:35+01:00snuverink_jjochem.snuverink@psi.chReplace use of depecrated commands module by subprocess moduleThe module `commands` is deprecated: https://docs.python.org/2/library/commands.html and instead the module `subprocess` is recommended. https://docs.python.org/2/library/subprocess.htmlThe module `commands` is deprecated: https://docs.python.org/2/library/commands.html and instead the module `subprocess` is recommended. https://docs.python.org/2/library/subprocess.htmlsnuverink_jjochem.snuverink@psi.chext-neveu_nsnuverink_jjochem.snuverink@psi.chhttps://gitlab.psi.ch/OPAL/pyOPALTools/-/issues/3Pareto front viewer2017-06-29T13:27:00+02:00adelmannPareto front viewerUpdate to new format
[1_Ring.dat_0.json](/uploads/c428655026db65955a65d3cad90754a5/1_Ring.dat_0.json)Update to new format
[1_Ring.dat_0.json](/uploads/c428655026db65955a65d3cad90754a5/1_Ring.dat_0.json)frey_mfrey_mhttps://gitlab.psi.ch/OPAL/opt-pilot/-/issues/18add design variable ranges (bounds) to the Json file2017-06-16T13:48:16+02:00adelmannadd design variable ranges (bounds) to the Json fileExample
"ranges":
{
"dpeak1": 14.00 18.00,
"dpeak2": 14.00 18.00,
}Example
"ranges":
{
"dpeak1": 14.00 18.00,
"dpeak2": 14.00 18.00,
}frey_mfrey_mhttps://gitlab.psi.ch/OPAL/NightlyBuild/-/issues/5gitlab doesn't open in frameset used on http://amas.web.psi.ch2017-09-16T14:17:14+02:00krausgitlab doesn't open in frameset used on http://amas.web.psi.chKlicking onto the links on the result page for the regresison tests results into an empty frame on http://amas.web.psi.ch. This is fixed in !1Klicking onto the links on the result page for the regresison tests results into an empty frame on http://amas.web.psi.ch. This is fixed in !1krauskraushttps://gitlab.psi.ch/OPAL/NightlyBuild/-/issues/6git revision hash in gnuplot graphs isn't extracted correctly2017-09-16T14:17:40+02:00krausgit revision hash in gnuplot graphs isn't extracted correctly@adelmann introduced # sign before the git revision hash. The regex to extract this hash has to be updated. This is done in !1. @gsell please merge this request.@adelmann introduced # sign before the git revision hash. The regex to extract this hash has to be updated. This is done in !1. @gsell please merge this request.krauskraushttps://gitlab.psi.ch/OPAL/src/-/issues/96DKS 1.1.0 for OPAL 1.6 branch2017-06-17T20:38:34+02:00gsellDKS 1.1.0 for OPAL 1.6 branchDKS 1.1.0 must be used in OPAL 1.6. So we have the same toolchain for OPAL 1.6 and masterDKS 1.1.0 must be used in OPAL 1.6. So we have the same toolchain for OPAL 1.6 and masterhttps://gitlab.psi.ch/OPAL/opt-pilot/-/issues/21Creation of first generation not optimal when infeasible solutions exist2017-08-15T16:32:45+02:00snuverink_jjochem.snuverink@psi.chCreation of first generation not optimal when infeasible solutions existSay we have a problem where a large number of solutions do not return proper objective values. In the first generation opt-pilot dispatches `n` jobs, where `n = initialPopulation`. When say 50% give an infeasible solution, then `n/2` job...Say we have a problem where a large number of solutions do not return proper objective values. In the first generation opt-pilot dispatches `n` jobs, where `n = initialPopulation`. When say 50% give an infeasible solution, then `n/2` jobs are dispatched of which 50% fail, then `n/4` are dispatched, etc., until the full population has a solution.
This will mean that many cores are idle.
It would be better to dispatch as many jobs as possible (nr of cores) until there are more than `n` feasible solutions.Yves IneichenYves Ineichenhttps://gitlab.psi.ch/OPAL/pyOPALTools/-/issues/7Timing: Parse problem size2018-01-25T12:20:11+01:00frey_mTiming: Parse problem sizeMentioned in https://gitlab.psi.ch/OPAL/src/issues/181#note_4222.Mentioned in https://gitlab.psi.ch/OPAL/src/issues/181#note_4222.frey_mfrey_mhttps://gitlab.psi.ch/OPAL/opt-pilot/-/issues/22Cleaning of opt-pilot repo2017-07-18T10:52:21+02:00snuverink_jjochem.snuverink@psi.chCleaning of opt-pilot repoGoing through the files I noticed that the following files are currently not in use (possibly more):
* Optimizer/EA/PisaVariator (seems superseeded by new FixedPisaNsga2)
* Drivers/oneMaster.cpp
* Drivers/hwloc.cpp
* Comm/Topology/HwLo...Going through the files I noticed that the following files are currently not in use (possibly more):
* Optimizer/EA/PisaVariator (seems superseeded by new FixedPisaNsga2)
* Drivers/oneMaster.cpp
* Drivers/hwloc.cpp
* Comm/Topology/HwLocCommTopology.h
* Optimizer/homotopy directory
@ineichen : Can these be indeed removed (of course they will still be available through the history) or be put in an "obsolete" folder?snuverink_jjochem.snuverink@psi.chsnuverink_jjochem.snuverink@psi.chhttps://gitlab.psi.ch/OPAL/runOPAL/-/issues/7Suggested improvements for Merlin52018-05-23T15:35:03+02:00Valeria RizzoglioSuggested improvements for Merlin5Here the suggestions from a discussion with Dmitry Ozerov:
1- prepare a single slurm script containing an **array of jobs**
`ex: sbatch -a 1-100 test.sh`
this will submit in one command 100 jobs to slurm. The trick to be nice with...Here the suggestions from a discussion with Dmitry Ozerov:
1- prepare a single slurm script containing an **array of jobs**
`ex: sbatch -a 1-100 test.sh`
this will submit in one command 100 jobs to slurm. The trick to be nice with the other users:
`sbatch -a 1-100%10 test.sh`
(or similar %25, %50)
2- **nodes and tasks**:
for ntasks < 16 than it would be more meaningful to ensure that the ntasks run on the same node. Now:
`#SBATCH --ntasks=4`
`#SBATCH --ntasks-per-node=4`
suggested:
`#SBATCH --ntasks=4`
`#SBATCH --nodes=1`
3- **Loading modules** in slurm script
`module load gcc.....`
so everything what is needed to load, setup to run the job (otherwise it's a dependence on what there is in .bashrc or environment (from which the job is submitted).snuverink_jjochem.snuverink@psi.chsnuverink_jjochem.snuverink@psi.chhttps://gitlab.psi.ch/OPAL/pyOPALTools/-/issues/9Implementation of envelope plot2018-03-27T13:58:58+02:00frey_mImplementation of envelope plotThe envelope plot is a nice view of the beamline for OPAL-T.
Please fill the gaps in
[LatticeParser.py](https://gitlab.psi.ch/OPAL/pyOPALTools/blob/master/utilities/LatticeParser.py)
and
[plot_envelope function](https://gitlab.psi.ch...The envelope plot is a nice view of the beamline for OPAL-T.
Please fill the gaps in
[LatticeParser.py](https://gitlab.psi.ch/OPAL/pyOPALTools/blob/master/utilities/LatticeParser.py)
and
[plot_envelope function](https://gitlab.psi.ch/OPAL/pyOPALTools/blob/master/opal/visualization/plots.py#L155)ganz_pganz_phttps://gitlab.psi.ch/OPAL/pyOPALTools/-/issues/12Removal of deprecated timing class.2018-04-14T20:08:27+02:00frey_mRemoval of deprecated timing class.The plots of ```pyOPALTools/timing/TimePlot.py``` got replaced by [opal/visualization/timing/plots.py](https://gitlab.psi.ch/OPAL/pyOPALTools/blob/master/opal/visualization/timing/plots.py). Therefore, I remove the old class and all the ...The plots of ```pyOPALTools/timing/TimePlot.py``` got replaced by [opal/visualization/timing/plots.py](https://gitlab.psi.ch/OPAL/pyOPALTools/blob/master/opal/visualization/timing/plots.py). Therefore, I remove the old class and all the tests.frey_mfrey_mhttps://gitlab.psi.ch/OPAL/src/-/issues/76Make normalization of 3D fieldmaps optional2017-06-17T20:38:35+02:00krausMake normalization of 3D fieldmaps optionalCurrently the z-component of the (electric, if present) field of a 3D fieldmaps is normalized. The user should be able to disable this normalizaton to simulate e.g. transverse deflecting cavities.Currently the z-component of the (electric, if present) field of a 3D fieldmaps is normalized. The user should be able to disable this normalizaton to simulate e.g. transverse deflecting cavities.OPAL 2.0.0krauskraushttps://gitlab.psi.ch/OPAL/opt-pilot/-/issues/6Pre forward solve constraint evaluation2018-04-10T13:32:10+02:00Yves IneichenPre forward solve constraint evaluationAs discussed in #2 we should greedily evaluate all constraint expressions that we can before running a forward solver. This will allow us to avoid running (probably expensive) simulations. Currently we support constraints such as `d1 < d...As discussed in #2 we should greedily evaluate all constraint expressions that we can before running a forward solver. This will allow us to avoid running (probably expensive) simulations. Currently we support constraints such as `d1 < d2` but they will be evaluated after the simulation run.snuverink_jjochem.snuverink@psi.chsnuverink_jjochem.snuverink@psi.chhttps://gitlab.psi.ch/OPAL/pyOPALTools/-/issues/15Plotting Recommendation2020-04-07T11:00:46+02:00ext-roussel_rPlotting RecommendationThe plotting modules could be improved by using the object oriented approach to the matplotlib API. Functions returning matplotlib.pyplot.Figure or matplotlib.pyplot.Axes objects are far easier to work with when customizing plots. See fr...The plotting modules could be improved by using the object oriented approach to the matplotlib API. Functions returning matplotlib.pyplot.Figure or matplotlib.pyplot.Axes objects are far easier to work with when customizing plots. See from https://matplotlib.org/api/pyplot_summary.html
> Most of these functions also exist as methods in the matplotlib.axes.Axes class. You can use them with the “Object Oriented” approach to Matplotlib.
While it is easy to quickly generate plots with the matplotlib.pyplot module, we recommend using the object-oriented approach for more control and customization of your plots. See the methods in the matplotlib.axes.Axes() class for many of the same plotting functions. For examples of the OO approach to Matplotlib, see the API Examples.
I suggest having a kwargs argument that takes an matplotlib.pyplot.Axes object that determines if the function creates a new figure or not, ie.
```python
def plot(x,y,ax=''):
if not ax:
fig,ax = plt.subplots()
ax.plot(x,y)
return ax
```
This works well for a user who creates an array of plots and wants to fill each axis with a particular plot.ext-roussel_rext-roussel_rhttps://gitlab.psi.ch/OPAL/pyOPALTools/-/issues/18Logger2019-07-04T11:30:59+02:00frey_mLoggerInstall a logging system for pyOPALTools. Started with b232ef78b82f07b6ab7b1db82b3868b544a68363. Before I did the commit, I created a [tag](https://gitlab.psi.ch/OPAL/pyOPALTools/tags/pyOPALTools-0.0.1). So, the users can still have the ...Install a logging system for pyOPALTools. Started with b232ef78b82f07b6ab7b1db82b3868b544a68363. Before I did the commit, I created a [tag](https://gitlab.psi.ch/OPAL/pyOPALTools/tags/pyOPALTools-0.0.1). So, the users can still have the old behaviour.frey_mfrey_mhttps://gitlab.psi.ch/OPAL/documentation/manual/-/issues/18SBend3D field map description does not mention the mirror symmetry about the ...2020-04-21T18:31:35+02:00snuverink_jjochem.snuverink@psi.chSBend3D field map description does not mention the mirror symmetry about the midplane.As discovered by @nesteruk_k, the `SectorMagneticFieldMap` class applies mirror symmetry around the midplane: https://gitlab.psi.ch/OPAL/src/blob/master/src/Classic/Fields/SectorMagneticFieldMap.cpp#L211
This should be mentioned in the ...As discovered by @nesteruk_k, the `SectorMagneticFieldMap` class applies mirror symmetry around the midplane: https://gitlab.psi.ch/OPAL/src/blob/master/src/Classic/Fields/SectorMagneticFieldMap.cpp#L211
This should be mentioned in the manual, https://gitlab.psi.ch/OPAL/Manual-2.1/wikis/elements#sec.elements.SBend3Dext-rogers_cext-rogers_chttps://gitlab.psi.ch/OPAL/pyOPALTools/-/issues/19Dataset Information2019-04-06T15:27:00+02:00frey_mDataset InformationAs discussed with @snuverink_j we should add a function like ```summary``` to the dataset classes that prints the available variables etc.
- [x] DatasetBase.py
- [x] H5Dataset.py
- [x] MemoryDataset.py
- [x] PeakDataset.py
- [x] SolverD...As discussed with @snuverink_j we should add a function like ```summary``` to the dataset classes that prints the available variables etc.
- [x] DatasetBase.py
- [x] H5Dataset.py
- [x] MemoryDataset.py
- [x] PeakDataset.py
- [x] SolverDataset.py
- [x] TrackOrbitDataset.py
- [x] OptimizerDataset.py
- [x] ProbeHistDataset.py
- [x] StatDataset.py
- [x] GridDataset.py
- [x] LBalDataset.py
- [x] OutputDataset.py
- [x] SamplerDataset.py
- [x] TimeDataset.py
frey_mfrey_mhttps://gitlab.psi.ch/OPAL/documentation/manual/-/issues/19Description for Pillbox cavity and Transverse Deflecting Structure2020-04-16T16:27:26+02:00krausDescription for Pillbox cavity and Transverse Deflecting StructureThe two new elements that are prepared in OPAL/src!190 need to be documented.The two new elements that are prepared in OPAL/src!190 need to be documented.krauskraushttps://gitlab.psi.ch/OPAL/src/-/issues/115Emission2017-06-17T20:38:35+02:00adelmannEmissionEmission is very slow and hardly can be used above 1E7 particles. Reason the algorithm does not scale.Emission is very slow and hardly can be used above 1E7 particles. Reason the algorithm does not scale.OPAL 1.9.xadelmannadelmann