...
Warning |
---|
Attention: All scripts in this page are assuming that your current shell is Bash. - If you are using some other shell such as tcsh, you can switch to bash in your current session by typing "bash" in your terminal.
- If you wish to switch permanently to Bash as your default shell here are some instructions:
In order to change your default shell at login from tcsh (or any other shell) to Bash, please execute the following command on a Linux server on the AFS network, such as a rhel6-64* node. (You will be prompted for your password during this process): After that, close the terminal and open a new one. You will be using Bash as the default shell. You can check if all went well with the following command in a new Terminal window: |
JavaAt the time of this writing, the latest version of Java available in Development and Production is 1.8.0_181 (64-bit). In order to use this Java version, source the following scripts depending on your environment:
...
Note |
---|
For Oracle compatibility, the Oracle client used must also be compiled for 64-bit. In order to use the supported 64-bit Oracle client, source the following scripts depending on your environment: - Development
/afs/slac/g/lcls/tools/oracle/oracleSetup-R11.2.0.4.bash
- Production
/usr/local/lcls/tools/oracle/oracleSetup-R11.2.0.4.bash
|
EPICS Java APIs
The EPICS Java APIs are located at:
...
- epicsCoreJava
Includes EPICS 7 (pvaccess, ntypes, pvdata) and JCA libraries - pvaClientJava
Inlcudes pvaClientJava library developed by Marty Kraimer phoebus
This repository contains the whole phoebus code (replacement for the CS-Studio backend) but it also contains the new pva client library developed by Kay Kasemir.
pva
Includes the pva library
MATLAB Anchor |
---|
| matlab_installation |
---|
| matlab_installation |
---|
|
InstallationFor MATLAB admins (epicsmgr group members) only:
...
Account | Default MATLAB version |
---|
physics | 2012a |
softegr | 2019a |
laci | 2012a |
Anchor |
---|
| matlab_2012a_installation |
---|
| matlab_2012a_installation |
---|
|
2012aThis is 32-bit software and will no longer be supported with OS versions later than RHEL6.
The Java version used by this Matlab is Java 6.
- Development Environment
- Production Environment
Anchor |
---|
| matlab_2019a_installation |
---|
| matlab_2019a_installation |
---|
|
2019aThis is 64-bit software.
The Java version used by this Matlab is Java 8.
- Development
/afs/slac/g/lcls/package/matlab/2019a - Production
/usr/local/lcls/package/matlab/2019a
Anchor |
---|
| matlab_2020a_installation |
---|
| matlab_2020a_installation |
---|
|
2020aThis is 64-bit software.
The Java version used by this Matlab is Java 8.
- Development
/afs/slac/g/lcls/package/matlab/2020a - Production
/usr/local/lcls/package/matlab/2020a
Anchor |
---|
| running_matlab |
---|
| running_matlab |
---|
|
Running MATLABIn order to set up your environment to use one of the supported versions of MATLAB, follow one of the appropriate procedures below.
Anchor |
---|
| running_matlab_2012a |
---|
| running_matlab_2012a |
---|
|
2012aDevelopment
Warning |
---|
Do not run MATLAB instances on mcclogin or lcls-prod02. MATLAB should be run on mcc-simul in DEV. |
Code Block |
---|
|
source /afs/slac/g/lcls/epics/setup/epicsenv-3.14.12.bash
source /afs/slac/g/lcls/tools/oracle/oracleSetup_11g.bash
source /afs/slac/g/lcls/tools/matlab/setup/matlabSetup_dev.bash
# Launch in desktop mode:
matlab &
# Launch in terminal mode:
run_matlab.bash --matlab=2012a |
Production
Code Block |
---|
|
source /usr/local/lcls/tools/script/ENVS.bash
# Launch in desktop mode:
matlab &
# Launch in terminal mode:
run_matlab.bash --matlab=2012a |
Anchor |
---|
| running_matlab_2019a |
---|
| running_matlab_2019a |
---|
|
2019aDevelopment
Warning |
---|
Do not run MATLAB instances on mcclogin or lcls-prod02. MATLAB should be run on mcc-simul in DEV. |
Code Block |
---|
|
source /afs/slac/g/lcls/epics/setup/epicsenv-7.0.2-1.0.bash
source /afs/slac/g/lcls/tools/oracle/oracleSetup-R11.2.0.4.bash
export MATLAB_VER=2019a export MLM_LICENSE_FILE="27010@license1,27010@license2,27010@license3"
source /afs/slac/g/lcls/tools/matlab/setup/matlabSetup64.bash
# Launch in desktop mode:
matlab &
# Launch in terminal mode:
run_matlab.bash --matlab=2019a |
Production
Code Block |
---|
|
source /usr/local/lcls/epics/setup/epicsenv-7.0.2-1.0.bash
source /usr/local/lcls/tools/oracle/oracleSetup-R11.2.0.4.bash
export MATLAB_VER=2019a
source /usr/local/lcls/tools/matlab/setup/matlabSetup64.bash
# Launch in desktop mode:
matlab &
# Launch in terminal mode:
run_matlab.bash --matlab=2019a |
Anchor |
---|
| running_matlab_2020a |
---|
| running_matlab_2020a |
---|
|
2020aDevelopment
Warning |
---|
Do not run MATLAB instances on mcclogin or lcls-prod02. MATLAB should be run on mcc-simul in DEV. |
Code Block |
---|
|
source /afs/slac/g/lcls/epics/setup/epicsenv-7.0.2-1.0.bash
source /afs/slac/g/lcls/tools/oracle/oracleSetup-R11.2.0.4.bash
export MATLAB_VER=2020a
export MLM_LICENSE_FILE="27010@license1,27010@license2,27010@license3"
source /afs/slac/g/lcls/tools/matlab/setup/matlabSetup64.bash
# Launch in desktop mode:
matlab &
# Launch in terminal mode:
run_matlab.bash --matlab=2020a |
Production
Code Block |
---|
|
source /usr/local/lcls/epics/setup/epicsenv-7.0.2-1.0.bash
source /usr/local/lcls/tools/oracle/oracleSetup-R11.2.0.4.bash
export MATLAB_VER=2020a
source /usr/local/lcls/tools/matlab/setup/matlabSetup64.bash
# Launch in desktop mode:
matlab &
# Launch in terminal mode:
run_matlab.bash --matlab=2020a |
Anchor |
---|
| configuring_matlab |
---|
| configuring_matlab |
---|
|
Configuring MATLABFor the Development and Production environments, a set of working configuration files is already provided for users and invoked upon login. Users can override the usage of these files by having their own custom files in the folder where they launch MATLAB (see: Creating A Custom MATLAB Environment).
MATLAB is non-standard Unix software and does not adhere to values set by PATH, LD_LIBRARY_PATH, CLASSPATH and other global environment variables that are used by most other Unix software. Instead, MATLAB uses the following configuration files to set its environment:
...
java.optsDescription: This file is used to pass variables and configurations to the Java JVM used by MATLAB.
Location:
<matlabroot>/bin/<architecture>/java.opts
e.g., in Development environment: /afs/slac/g/lcls/package/matlab/2019a/bin/glnxa64/java.opts
Below are the working java.opts files for Development and Production.
2012a
Development
Code Block |
---|
|
-Xbootclasspath/p:/afs/slac/g/lcls/package/iona/orbacus/prod/JOB/lib/OB.jar
-DAIDA_NAMESERVER_IOR_URL=http://mccas0.slac.stanford.edu/aida/NameServerPROD.ior
-DOOC_COSEVENTCONFIG_PATHNAME=/afs/slac/g/lcls/package/err/common/script/ooc_CosEvent_server.conf
-DAIDA_CLIENT_TIMEOUT=90
-DEPICS_PVA_SERVER_PORT=5075
-DEPICS_PVA_BROADCAST_PORT=5076
-DEPICS_PVA_AUTO_ADDR_LIST=FALSE
-DEPICS_PVA_ADDR_LIST=134.79.219.255 lcls-dev1.slac.stanford.edu mcc-simul.slac.stanford.edu
-Dcom.cosylab.epics.caj.CAJContext.addr_list=134.79.219.255 172.26.97.63
-Dcom.cosylab.epics.caj.CAJContext.auto_addr_list=false
-Dcom.cosylab.epics.caj.CAJContext.max_array_bytes=80000000
-Dcom.cosylab.epics.caj.CAJContext.repeater_port=5067
-Dcom.cosylab.epics.caj.CAJContext.server_port=5066 |
Production
Code Block |
---|
|
-Xbootclasspath/p:/usr/local/lcls/package/iona/orbacus/prod/JOB/lib/OB.jar
-DAIDA_NAMESERVER_IOR_URL=http://mccas0.slac.stanford.edu/aida/NameServerPROD.ior
-DOOC_COSEVENTCONFIG_PATHNAME=/u1/lcls/tools/orbacus/ooc_CosEvent_server.conf
-DAIDA_CLIENT_TIMEOUT=90
-DEPICS_PVA_SERVER_PORT=5075
-DEPICS_PVA_BROADCAST_PORT=5076
-DEPICS_PVA_AUTO_ADDR_LIST=FALSE
-DEPICS_PVA_ADDR_LIST=172.27.3.255 172.27.131.255 172.27.43.255 172.21.40.63 mcc-dmz mccas0.slac.stanford.edu
-Dcom.cosylab.epics.caj.CAJContext.addr_list=172.27.3.255:5068 mcc-dmz 172.21.40.63:5064 172.27.72.24:5070 172.27.131.255:5068 172.27.43.255:5068
-Dcom.cosylab.epics.caj.CAJContext.auto_addr_list=false
-Dcom.cosylab.epics.caj.CAJContext.max_array_bytes=80000000
-Dcom.cosylab.epics.caj.CAJContext.repeater_port=5069
-Dcom.cosylab.epics.caj.CAJContext.server_port=5068 |
2019a and 2020a
Development
Code Block |
---|
|
-Xbootclasspath/p:/afs/slac/g/lcls/package/iona/orbacus/prod/JOB/lib/OB.jar
-DAIDA_NAMESERVER_IOR_URL=http://mccas0.slac.stanford.edu/aida/NameServerPROD.ior
-DOOC_COSEVENTCONFIG_PATHNAME=/afs/slac/g/lcls/package/err/common/script/ooc_CosEvent_server.conf
-DAIDA_CLIENT_TIMEOUT=90
-Dgov.aps.jca.jni.JNIContext.jca.use_env=true
-Djca.use_env=true
-DEPICS_PVA_SERVER_PORT=5075
-DEPICS_PVA_BROADCAST_PORT=5076
-DEPICS_PVA_AUTO_ADDR_LIST=FALSE
-DEPICS_PVA_ADDR_LIST=134.79.219.255 lcls-dev1.slac.stanford.edu mcc-simul.slac.stanford.edu |
Production
Code Block |
---|
|
-Xbootclasspath/p:/usr/local/lcls/package/iona/orbacus/prod/JOB/lib/OB.jar
-DAIDA_NAMESERVER_IOR_URL=http://mccas0.slac.stanford.edu/aida/NameServerPROD.ior
-DOOC_COSEVENTCONFIG_PATHNAME=/u1/lcls/tools/orbacus/ooc_CosEvent_server.conf
-DAIDA_CLIENT_TIMEOUT=90
-Dgov.aps.jca.jni.JNIContext.jca.use_env=true
-Djca.use_env=true
-DEPICS_PVA_SERVER_PORT=5075
-DEPICS_PVA_BROADCAST_PORT=5076
-DEPICS_PVA_AUTO_ADDR_LIST=FALSE
-DEPICS_PVA_ADDR_LIST=172.27.3.255 172.27.131.255 172.27.43.255 172.21.40.63 mcc-dmz mccas0.slac.stanford.edu |
Anchor |
---|
| matlab_classpath |
---|
| matlab_classpath |
---|
|
classpath.txtDescription: This file is used to augment the Java classpath used by MATLAB.
Location:
<matlabroot>/toolbox/local/classpath.txt
e.g., in Development environment: /afs/slac/g/lcls/package/matlab/2019a/toolbox/local/classpath.txt
...
Note |
---|
The lines listed for each file below must be APPENDED to the end of the existing default MATLAB classpath.txt file for the configuration to work. Do not remove the preceding lines in the default MATLAB classpath.txt file. |
2012a
Development
Code Block |
---|
|
# Additions to classpath.txt
/afs/slac/g/lcls/package/oracle/product/11.1.0.6/client/jdbc/lib/ojdbc5.jar
/afs/slac/g/lcls/package/iona/orbacus/prod/JOB/lib/OB.jar
/afs/slac/g/lcls/package/iona/orbacus/prod/JOB/lib/OBEvent.jar
/afs/slac/g/lcls/package/iona/orbacus/prod/JOB/lib/OBUtil.jar
/afs/slac/g/lcls/physics/package/except/lib/except.jar
/afs/slac/g/lcls/physics/package/err/lib/err.jar
/afs/slac/g/lcls/physics/package/aida/lib/aida.jar
/afs/slac/g/lcls/physics/release/hlaExtensions/hlaExtensions-R1-2-13/jar/hlaExtensions.jar
/afs/slac/g/lcls/physics/release/xal4lcls-R0-8-4A/build/jar/ext.jar
/afs/slac/g/lcls/physics/release/xal4lcls-R0-8-4A/build/jar/xal.jar
/afs/slac/g/lcls/physics/release/hlaCommon/hlaCommon-R1-0-16/jar/hlaCommon.jar
/afs/slac/g/lcls/epics/extensions/extensions-R3-14-12/lib/linux-x86
#/usr/local/facet/tools/matlab/sdds/java/SDDS.jar
/afs/slac/g/lcls/physics/release/MessageLogAPI-R0-0-1A/jar/MessageLogAPI.jar
# integration with EPICSv4 (greg)
# Note that the following MUST be compiled so as to target a Java 6 compiler at most,
# since matlab 2012b of LCLS is shipped with Java 6. pvAccess as shipped requires Java 7.
# But we use a special source version, adapted by Matej to compile under java 6.
/afs/slac/g/lcls/epics/base/base-java6-R4-4-0/easyPVAJava-0.4.3.jar
/afs/slac/g/lcls/epics/base/base-java6-R4-4-0/pvAccessJava-4.2.0-Java6-SNAPSHOT.jar
/afs/slac/g/lcls/epics/base/base-java6-R4-4-0/pvDataJava-4.0.2.jar |
Production
Code Block |
---|
|
# Additions to classpath.txt
/usr/local/lcls/package/oracle/product/11.1.0.6/client/jdbc/lib/ojdbc5.jar
/usr/local/lcls/package/iona/orbacus/prod/JOB/lib/OB.jar
/usr/local/lcls/package/iona/orbacus/prod/JOB/lib/OBEvent.jar
/usr/local/lcls/package/iona/orbacus/prod/JOB/lib/OBUtil.jar
/usr/local/lcls/physics/package/except/lib/except.jar
/usr/local/lcls/physics/package/err/lib/err.jar
/usr/local/lcls/physics/package/aida/lib/aida.jar
/usr/local/lcls/physics/release/hlaExtensions/hlaExtensions-R1-2-13/jar/hlaExtensions.jar
/usr/local/lcls/physics/release/xal4lcls-R0-8-4A/build/jar/ext.jar
/usr/local/lcls/physics/release/xal4lcls-R0-8-4A/build/jar/xal.jar
/usr/local/lcls/physics/release/hlaCommon/hlaCommon-R1-0-16/jar/hlaCommon.jar
/usr/local/lcls/epics/extensions/extensions-R3-14-12/lib/linux-x86
/usr/local/facet/tools/matlab/sdds/java/SDDS.jar
/usr/local/lcls/physics/release/MessageLogAPI-R0-0-1A/jar/MessageLogAPI.jar
# integration with EPICSv4 (greg)
# Note that the following MUST be compiled so as to target a Java 6 compiler at most,
# since matlab 2012b of LCLS is shipped with Java 6. pvAccess as shipped requires Java 7.
# But we use a special source version, adapted by Matej to compile under java 6.
/usr/local/lcls/epics/base/base-java6-R4-4-0/easyPVAJava-0.4.3.jar
/usr/local/lcls/epics/base/base-java6-R4-4-0/pvAccessJava-4.2.0-Java6-SNAPSHOT.jar
/usr/local/lcls/epics/base/base-java6-R4-4-0/pvDataJava-4.0.2.jar |
2019a and 2020a
Development
Code Block |
---|
|
# Additions to classpath.txt
# ****************************************************************************************************************
# EPICS 7 Java Interface
# ****************************************************************************************************************
/afs/slac/g/lcls/epics/java/epicsCoreJava/R7.0.2-1.0.0/products/epics-pvdata-6.1.2.jar
/afs/slac/g/lcls/epics/java/epicsCoreJava/R7.0.2-1.0.0/products/epics-pvaccess-5.1.2.jar
/afs/slac/g/lcls/epics/java/epicsCoreJava/R7.0.2-1.0.0/products/epics-ntypes-0.3.2.jar
/afs/slac/g/lcls/epics/java/epicsCoreJava/R7.0.2-1.0.0/products/epics-util-1.0.0.jar
/afs/slac/g/lcls/epics/java/epicsCoreJava/R7.0.2-1.0.0/products/jca-2.4.2.jar
#/afs/slac/g/lcls/epics/extensions/R0.5.0/javalib/jca.jar
/afs/slac/g/lcls/epics/java/pvaClientJava/R4.3.2-0.0.1/products/epics-pvaclient-4.3.2.jar
# ****************************************************************************************************************
# ****************************************************************************************************************
# Oracle Database connectivity
# ****************************************************************************************************************
/afs/slac/g/lcls/package/oracle/product/11.2.0.4/linux-x86_64/jdbc/lib/ojdbc5.jar
# ****************************************************************************************************************
# ****************************************************************************************************************
# IONA ORBacus ==> CORBA-based Client Server API
# ****************************************************************************************************************
/afs/slac/g/lcls/package/iona/orbacus/prod/JOB/lib/OB.jar
/afs/slac/g/lcls/package/iona/orbacus/prod/JOB/lib/OBEvent.jar
/afs/slac/g/lcls/package/iona/orbacus/prod/JOB/lib/OBUtil.jar
# ****************************************************************************************************************
# ****************************************************************************************************************
# AIDA Interface
# ****************************************************************************************************************
/afs/slac/g/lcls/physics/package/aida/lib/aida.jar
/afs/slac/g/lcls/physics/package/aida/lib/aidadp.jar
/afs/slac/g/lcls/physics/package/err/lib/err.jar
/afs/slac/g/lcls/package/except/lib/except.jar
# ****************************************************************************************************************
# ****************************************************************************************************************
# SLAC Java APIs
# ****************************************************************************************************************
/afs/slac/g/lcls/physics/release/hlaExtensions/hlaExtensions-R2-0-0/jar/hlaExtensions.jar
/afs/slac/g/lcls/physics/release/xal4lcls/xal4lcls-R1-0-0/build/jar/ext.jar
/afs/slac/g/lcls/physics/release/xal4lcls/xal4lcls-R1-0-0/build/jar/xal.jar
/afs/slac/g/lcls/physics/release/hlaCommon/hlaCommon-R2-0-0/jar/hlaCommon.jar
/afs/slac/g/lcls/epics/extensions/R0.5.0/lib/rhel6-x86_64
/afs/slac/g/lcls/physics/release/MessageLogAPI/MessageLogAPI-R1-0-0/jar/MessageLogAPI.jar
# **************************************************************************************************************** |
Production
Code Block |
---|
|
# Additions to classpath.txt
# ****************************************************************************************************************
# EPICS 7 Java Interface
# ****************************************************************************************************************
/usr/local/lcls/epics/java/epicsCoreJava/R7.0.2-1.0.0/products/epics-pvdata-6.1.2.jar
/usr/local/lcls/epics/java/epicsCoreJava/R7.0.2-1.0.0/products/epics-pvaccess-5.1.2.jar
/usr/local/lcls/epics/java/epicsCoreJava/R7.0.2-1.0.0/products/epics-ntypes-0.3.2.jar
/usr/local/lcls/epics/java/epicsCoreJava/R7.0.2-1.0.0/products/epics-util-1.0.0.jar
/usr/local/lcls/epics/java/epicsCoreJava/R7.0.2-1.0.0/products/jca-2.4.2.jar
#/usr/local/lcls/epics/extensions/R0.5.0/javalib/jca.jar
/usr/local/lcls/epics/java/pvaClientJava/R4.3.2-0.0.1/products/epics-pvaclient-4.3.2.jar
# ****************************************************************************************************************
# ****************************************************************************************************************
# Oracle Database connectivity
# ****************************************************************************************************************
/usr/local/lcls/package/oracle/product/11.2.0.4/linux-x86_64/jdbc/lib/ojdbc5.jar
# ****************************************************************************************************************
# ****************************************************************************************************************
# IONA ORBacus ==> CORBA-based Client Server API
# ****************************************************************************************************************
/usr/local/lcls/package/iona/orbacus/prod/JOB/lib/OB.jar
/usr/local/lcls/package/iona/orbacus/prod/JOB/lib/OBEvent.jar
/usr/local/lcls/package/iona/orbacus/prod/JOB/lib/OBUtil.jar
# ****************************************************************************************************************
# ****************************************************************************************************************
# AIDA Interface
# ****************************************************************************************************************
/usr/local/lcls/physics/package/aida/lib/aida.jar
/usr/local/lcls/physics/package/aida/lib/aidadp.jar
/usr/local/lcls/physics/package/err/lib/err.jar
/usr/local/lcls/package/except/lib/except.jar
# ****************************************************************************************************************
# ****************************************************************************************************************
# SLAC Java APIs
# ****************************************************************************************************************
/usr/local/lcls/physics/release/hlaExtensions/hlaExtensions-R2-0-0/jar/hlaExtensions.jar
/usr/local/lcls/physics/release/xal4lcls/xal4lcls-R1-0-0/build/jar/ext.jar
/usr/local/lcls/physics/release/xal4lcls/xal4lcls-R1-0-0/build/jar/xal.jar
/usr/local/lcls/physics/release/hlaCommon/hlaCommon-R2-0-0/jar/hlaCommon.jar
/usr/local/lcls/epics/extensions/R0.5.0/lib/rhel6-x86_64
/usr/local/facet/tools/matlab/sdds/java/SDDS.jar
/usr/local/lcls/physics/release/MessageLogAPI/MessageLogAPI-R1-0-0/jar/MessageLogAPI.jar
# **************************************************************************************************************** |
Anchor |
---|
| matlab_librarypath |
---|
| matlab_librarypath |
---|
|
librarypath.txtDescription: This file is used to augment the library search path used by MATLAB.
...
Note |
---|
The lines listed for each file below must be APPENDED to the end of the existing default MATLAB librarypath.txt file for the configuration to work. Do not remove the preceding lines in the default MATLAB librarypath.txt file. |
2012a
Development
Code Block |
---|
|
/afs/slac/g/lcls/epics/extensions/extensions-R3-14-12/lib/linux-x86
/afs/slac/g/lcls/epics/base/base-R3-14-12/lib/linux-x86 |
Production
Code Block |
---|
|
/usr/local/lcls/epics/extensions/extensions-R3-14-12/lib/linux-x86
/usr/local/lcls/epics/base/base-R3-14-12/lib/linux-x86 |
2019a and 2020a
Development
Code Block |
---|
|
/afs/slac/g/lcls/epics/extensions/R0.5.0/lib/rhel6-x86_64
/afs/slac/g/lcls/epics/base/R7.0.2-1.0/lib/rhel6-x86_64
/afs/slac/g/lcls/package/oracle/product/11.2.0.4/linux-x86_64/lib |
Production
Code Block |
---|
|
/usr/local/lcls/epics/extensions/R0.5.0/lib/rhel6-x86_64
/usr/local/lcls/epics/base/R7.0.2-1.0/lib/rhel6-x86_64
/usr/local/lcls/package/oracle/product/11.2.0.4/linux-x86_64/lib |
Anchor |
---|
| custom_matlab_env |
---|
| custom_matlab_env |
---|
|
Creating A Custom MATLAB EnvironmentIf you need to use a MATLAB environment configuration that does not match the default environment provided in Development or Production, you will need to create your own java.opts, classpath.txt or librarypath.txt files in your working directory prior to launching MATLAB.
...