This is part of the labels / documentation for <a href='http://jcm.chooseclimate.org'>Java Climate Model</a><hr/>

#circmenu		¨addJCM5		§An experimental circular menu for quickly finding JCM components, as an alternative navigation system to @jcmtree

#jcm.mod		¨addJCM5		§@Packages containing the scientific code of JCM, most of it in @modules

#jcm.mod.obj		¨addJCM5		§This package contains modules which set the objective and calculate the scenario driving the rest of JCM. ;;{{
*: The fundamental choice is made by the parameter @objective in module @controller, which switches primary control between top-down stabilisation or bottom-up no-policy baseline.  Emissions for both are calculated, for comparison, but only one set is applied to the global carbon-cycle, atmopsheric chemistry, radiative forcing and climate. The menu to change the baseline @sresmenu is also here.
*: The module @globco2emit shows a plot of both the baseline and policy scenarios, since the ratio between these is used for scaling in many parts of JCM. It also contains global parameters affecting global CO2 scenarios.
*: The key module managing @stabilisation scenarios is here
*: The parameter determining the @socregions is also here in @regset
*: @sresdata is also stored here (@expert)
*: @sresext based on a "Kaya" extrapolation of population, GDP/capita and emissions /GDP
}}

See also (old JCM4 link): @emitcc

#jcm.mod.soc		¨addJCM5		§This package gathers modules for regionally distributed socioeconomic factors and emissions. All @qtsets in this package share the same adjustable @socregions. 

@socreg curves combine @history with future projections based on either @futbasescen or @stabilisation scenarios (depending on the chosen @objective). In the latter case, the distribution between regions depends on parameters in @shares. @equity may also be explored through @costs and @responsibility modules.

#controller		¨addJCM5		§This module directs the flow of the JCM calculation loop, determining which other modules are called in which sequence, depending on the fundamental question / paradigm set by the parameter @objective



See also: 

@philosophy 

 old label: @mitigation

----

#futbasescen		¨addJCM5		§This module calculates  bottom-up scenarios based on the evolution of driving forces, following storylines such as @aboutsres

See also old modules: @sres @people
See also @interpolator

#shares		¨addJCM5		§Regional emissions under mitigation policy scenarios are calculated by applying various "effort sharing" criteria - such as emissions per capita emissions per gdp ("intensity"), historical responsibility, costs etc. 
;;


The sum of all these regional emissions equals the global emissions (see @globco2emit, @othgasemit) which provide the input to the carbon cycle, atmospheric chemistry, radiative forcing and temperature. This shares module works by a @topdown approach, starting from the available global budget derived from a @stabilisation scenario, and sharing this out between countries. Therefore the global calculation is independent of the parameters here, and this module only calculates if regional curves are needed (see @interactions).

It is not specified, whether these regional emissions are tradeable quotas or real emissions.                 
In the history (which 

----
Old Documentation to be updated:
see old modules: @regshares, @kyoto
see old plot @distribplot
see old label: @distribution

#socreg		¨addJCM5		§This module acts as a container for all regional socioeconomic and emissions curve sets. You can change the set of regions with the parameter @regions 


Note also @regiondatasource, @history, @futbasescen

Old documentation to be updated:
Future regional emissions may be mitigated according to various formulae -see @stabilisation, @distribution,
See old modules:  @regshares,  @people
See old plot: @distribplot
----

#calclucemit		¨addJCMHELLO		§Land use change is the second greatest anthropogenic source of CO2, after fossil fuel combustion (see @emitfosbase). However these emissions are very uncertain because of the absence of international statistical data,  even though it is quite necessary to estimate the disturbance caused by human activities in the carbon cycle and the natural carbon cycle.

This module calculates the historical land use change CO2 emissions by agriculture and pasture expansion based on the HYDE land use database by country. Calculating the area differences of each biome (associated to carbon factors) converted to cropland (including urban areas) and pastures by country we calculated the land use change CO2 emission over the past 300 years.



see also @biome 





----

#berncarbon		¨addJCM5		§JCM carbon cycle is based on the Bern model, as used by IPCC. This was originally calibrated using chemical tracer and isotope data, and its predictions fall in the mid-range of model intercomparisons.
The page below explains a bit how it works, and the parameters you can adjust.
----
Note that another module, @carboncycle, handles the interface with the rest of JCM, and also the @qtsets {{
*: @atco2flux 
*: @atco2conc
}}
Also in separate modules are {{
*: @carbonstoragecurves
*: @carbonatechemistry 
}}

 €€adju Note: It is easier to understand the effect of the parameters, when the model is working in forwards rather than @inverse mode: -see @sinksdynamic

  ---- 
€€adju ££sinksocean 
€€cogs  ===Ocean sink: HILDA model ===
  (HILDA = High-Latitude Diffusion Advection)   {{
*:low-latitude (84% surface) divided into 36 layers   *:depth-dependent vertical diffusion between layers   *:high-latitude box, well-mixed   
*:horizontal advection between HL & LL   
*:slow upwelling loop (down in HL, up in LL)   
*:surface layer (HL and LL) exchanging with atmosphere   *:non-linear carbonate chemistry with feedback from temperature
  }}

---- 
 €€adju ££sinksbiosphere 
€€cogs ===Terrestrial Biosphere sink===
  4-box biosphere :   {{ 
*:green, wood, soil, humus boxes,   
*:linear fluxes between boxes and to atmosphere   
*:non-linear "CO2 fertilisation" factor 'beta'   
*:temperature-soil respiration feedback (new in JCM5)
}}

  ---- ===Calculation method===
  The entire system is solved using an efficient eigenvector calculation method with a ramp function for non-linear fluxes.
 For more information see @eigenvec
A similar method is used for the @udebclimod
----
See also {{
*: Joos et al 2001 (@references),
*: @compareipcc, IPCC-TAR WG1 Chapter 3
*: @carbonfuture
}}

----

#carbonatechemistry		¨addJCM5		§This module contains the ocean chemistry calculations used by the @berncarbon module. 

£`qtsets of concentration and pH are also provided, which may be relevant to direct impacts of CO2 on calcifying organisms (e.g. corals and coccolithophorids).

==About CO2 in seawater==
CO2 reacts with alkaline seawater to form bicarbonate ions
  CO2 + H2O <=> HCO3- + H+
  This conversion reduces the partial pressure of CO2 in seawater, giving the ocean has a vast capacity to store CO2. Currently the ocean holds about 50 times more inorganic carbon than the atmosphere, 99% of it in the form of HCO3-.
  However adding CO2 to seawater makes it more acidic, which reduces this "buffer capacity". Increasing the temperature also affects the chemical equilibria and reduces the solubility of CO2 in seawater. Both these feedbacks (acidification and temperature) act to decrease the future ocean sink.

€€adju  If you select "linear" from the @carbchemmenu menu you will switch off the acidification effect.

€€adju  If you disable the @chemfbopt you will switch off the feedback from temperature. You may observe that this removes the spikes in the historical ocean sink, which are caused by equivalent spikes in radiative forcing, especially volcanos.
  (see also @clicarbfeedback )

#carbonstorage		¨addJCM5		§This module saves data for the  @carbonstoragecurves plot 

€€cogs %%(this process is separated from @berncarbon simply for computationally efficiency, as it is only needed when the plot is visible. A similar separation is made for @oceantempcurves. See also @eigenvec) %% 


----

#aerosolrf		¨addJCM5		§The @qtset of all @aerosol contributions to forcing.

For more info see: <ul>
<li>@radforintro 
<li>@radforaerosol, 
<li>@radforsolvol, 
<li>@radfordistrib
</ul>

#othgasemitoptions		¨addJCM5		§This @param provides four different ways to project the emissions of gases other than CO2, including CH4, N2O, F-gases (HFCs, PFCs,  SF6),  tropospheric ozone precursors (CO,VOC,NOx) and aerosols (SOx, Soot). 

Only the gases already controlled by the Montreal protocol (ClFCs, HClFCs) are excluded, whilst BC/OC aerosols are either scaled to CO, or to land-use change  (see @radforaerosol) 

€€adju Look at a plot of @othgasemitcurves (or @fgas&emit) to see the effect of this parameter. Note that the "scale" variants only have an effect on @stabilisation scenarios (see @objective).

The formulae for each variant are given from the links below:

#co2eq&allghg		¨addJCM5		§This adds Tropospheric and Stratospheric Ozone, and CFCs to  @co2eq&6gas . Beware that the distribution of ozone forcing is different to that of well-mixed greenhouse gases  

<li>see also @oghga, @fgases, @co2eq



££co2eq

#co2eq&6gas		¨addJCM5		§The 'six' gases controlled by the Kyoto protocol are CO2, N2O, CH4, SF6, PFCs, HFCs  <li>See also @kyoto, @co2eq



££co2eq

#co2eq&allghgaero		¨addJCM5		§This adds Sulphate and Carbon Aerosols to @allghg (so it includes all forcing from anthropogenic emissions). Beware that the distribution of aerosol forcings is very different to that of greenhouse gases, so one cannot say that positive forcing (from GHGs) in one region is cancelled by negative forcing (from aerosols) in another: the result is still climate change!  <li>see also @radforaerosol, @co2eq



££co2eq

#co2equivconc		¨addJCM5		§This @qtset shows the concentrations of CO2 which would produce the same radiative forcing as the total of all the included gases.

See @co2eq for more explanation

#carbonstoragecurves		¨addJCM5		§This @qtset shows the contents of all the boxes in the carbon cycle model (ocean layers and biosphere). These contain only "extra" anthropogenic carbon, excluding the contents in the preindustrial steady state. 
It is instructive to view this alongside a plot of @atco2flux. See  @carbonstorage and @berncarbon  for more explanation.

#jcm25		¨addJCM5		§A compromise set of 25 regions - the default option in JCM
£§jcmregcol

#attmeth		¨addJCM5		§There are several methods of attributing cumulative effects when the cause-effect relationship is non-linear.  
For more information see links from @ACCC-MATCH-doc

This parameter selects which of two modules: @attribTracer or @attribMarginal is applied to the emissions set by @responsibility ;;

€€cogs Only the tracer method is reliable in JCM, others should be considered experimental (see notes for each method). 

€€cogs Note: The tracer method effectively reruns the core parts of the @berncarbon and @udebclimod  for each region, whilst the other methods re-run the model as many times as there are   years of attributable emissions. Thus in principle tracer is more efficient so long as the number of regions is less than the number of attributable years.

#history		¨addJCM5		§This module assembles historical data from various sources.

These historical data are combined with future projections in the @socreg and @socio modules,  interpolating over time and space to fit the chosen  @socregions. 

Users are recommended to look at those modules first. The @qtsets  in this module are provided only for experts who need to check the original data before interpolation.

Note also: {{
*: @dataref
*: @percapplot -some interesting observations
*: separate modules @LUCdata and @CalcLUCEmit
*: the @interpolator tool
}}

#fosco2		¨addJCM5		§National data from CDIAC from 1750 to 2004. 
See @dataref ;;

These are extended to 2007 using a regional table from MNP based on energy statistics, and further extrapolated to 2012 using socioeconomic trends from WEO and an exponentially declining emissions intnsity (see @GDP)

#pop		¨addJCM5		§National Population data from RIVM-HYDE (Kees Goldvijk)

#aviaship		¨addJCM5		§Exprrimental, Under construction

#jcm		¨addJCM5		§The root folder of JCM java-source code. 
This is organised into several @packages, of which <ul>
<li>jcm.mod : the "scientific" code, <li>jcm.core : core building blocks, 
<li>jcm.gui : graphical user interface
<li>jcm.script : for specific applications
</ul>

#worlds		¨addJCM5		§JCM5 has a "parallel worlds" structure, allowing simultaneous comparison of several projections, each using different parameters (scenarios, scientific uncertainties, policy options). 
€€cogs Parallel World options are only shown at @expert @complexity
€€adju You can make an additional world (or remove it) using the Worlds @jcmmenu at the top, or by selecting the worlds @filter button in a @jcmtree. Making a new world will open an new £`jcmtree 
€€adju You can change the name of a world, to remind you of its key characteristics
€€adju To compare data in different worlds on one plot, use the @compareworlds option in the @variant popup menu corresponding to each @qtset (from the @jcmtree or right-click from @plots).  

€€cogs Each @world's modules, parameters and curves are entirely independent (excepting "static" historical datasets). There is no limit set to the number of parallel worlds, however beware that using several  parallel worlds takes a lot of computer memory (especially if you use large region sets). 
You may wish to use the @memoryChecker tool

€€cogs Later it is envisaged to implement partially-parallel worlds in which some modules are shared and some are different (e.g. same emissions scenarios but different climate response), which could offer large efficiency savings for complex calculations.

€€cogs The parallel worlds system takes advantage of java's object-oriented structure (see @aboutjava)

The contents of the current set of worlds are below:

#world		¨addJCM5		§One of several parallel worlds, see @Worlds
%%€€cogs Code in world.java also initialises each module within a world.%%

#complexity		¨addJCM5		§The complexity level acts as a filter, to hide "expert" items, to make it easier for beginners to find what is most important.

The complexity level parameter is  adjustable from the @ViewMenu or in the bar at the top of each @jcmTree.

Each @module @param, @qtset, and @qt has an associated complexity level set in the model code. Items whose complexity level is higher than the level set by the complexity parameter  will not appear in the @jcmTree, @jcmMenu, @interacmap, and parts of @plots and @docview.

The complexity level does not affect the underlying scientific calculations. So even at  the simplest level, the complex parts of JCM are still calculated - you just can't see them.

€€cogs The four levels are:<ul>
£*simplest
£*normal
£*expert
£*experimental
</ul>
See also @filter

#jcm.core		¨addJCM5		§@Package containing core building blocks of JCM

#infob		¨addJCM5		§A structural component of JCM: <ul>
<li>An object with basic information about itself (@labelcode, @complexity, colour).
<li> An infob may contain a set of more infobs or actions, which are used to generate the structure of a @jcmtree or a @jcmmenu
<li>Infob class is extended by @interacob, @region and @qt
</ul>

#interacob		¨addJCM5		§A structural component of JCM. <ul>
<li>Interacob extends @infob by adding information about @interactions between components. 
<li>Interacob is extended by @module, @qtset, @param.
</ul>
Each interacob stores a list of all the other interacobs which are it affects, or is affected by. This enables the @loop to work out the calculation dependencies. 

An interacob stores flags indicating whether: <ul>
<li>it has been changed by adjusting a @param since the last recalculation. 
<li>it is needed for display of any visible @plotlink
</ul>

€€cogs If an iob is needed, all those which it is affected by must also be needed. If an iob has changed, all those which it affects must also be changed. When one iob changes or becomes needed, a recursive loop checks through all the iobs, to set these flags accordingly. Only those interacobs which are **both needed and changed** are included during the main @loop calculations. This makes a key contribution to the speed and efficiency of JCM. 

€€adju You can observe that the model responds faster when you adjust controls affecting only the end of cause-effect sequence (e.g. climate model parameters, with feedbacks disabled). The response is also faster if you view less plots (e.g. if only regional emissions are visible, the carbon-climate modules are not run).

See also @interactions, @interacmap, @register, @loop, @struccode

#qt		¨addJCM5		§One curve in a @qtset, that may be shown in @plots

#register		¨addJCM5		§A structural component of JCM
Contains lists of all @interacob and @plotlink, and various methods to organise them

#setup		¨addJCM5		§The setup of JCM, i.e. the current state of @params, layout of @panels, and @plots, may be saved and reloaded. This is particularly useful for preparing interactive demonstrations.

€€adju You can save and reload setups, using the @setupmenu.
This also offers some standard setups saved within the JCM package.

€€adju When you closeJCM, the current setup is saved automatically, and next time you open JCM this is reloaded. Ocasionally this may be problematic  (for example if your screen-size has changed), so you can bypass automatic reloading using the right-hand button on the opening splash-screen.

€€cogs The information is stored in an small text file, containing the minimum information required to reproduce the state of the model  (so only changed @param values are saved, not the content of @qtsets). These files are stored in a folder called **setup** created in as a subfolder of that in which JCM is opened. This will not work if JCM is started in @safemode.

€€cogs Persistence should be reliable for all model parameters but not yet for all aspects of plot layout.

#units		¨addJCM5 fix		§Units of @qtsets and @params.

JCM tries to scale units intelligently when generating a @scaleview of a @plot, dividing powers of ten to find the most appropriate SI scalar (see below). JCM also tries to cancel common factors when @ratio: is used to divide to @qtsets

%%€€adju This may give you some apparently strange quantities (e.g. "micro-person per joule per year"), in this case it may makes more sense to choose the opposite  ratio (e.g. megajoule per person per year).%%

  ££siunits ££baselines ££carbonunits  ££time

#jcm.gui		¨addJCM5		§@Package containing Graphical User Interface components of JCM

#labman		¨addJCM5		§Stores, Loads and Saves all @label, both from the original package, and changes due to editing (see @docview)

#sourceview		¨addJCM5		§A simple viewer is provided to enable users to inspect the  source-code of JCM. 
€€adju Access this via the @jcmmenu at the top, by using the source-code @filter (both available only at @expert @complexity),  or from the code link at the bottom of relevant @docview pages.  
€€cogs The same tool can also display several types of @data stored in JCM packages
€€cogs The viewer decorates java using html (for colors fonts and layout). To get the original plain-text files unpack the JCM5.jar package (note a jar file is just like a zip archive). 
€€adju If you want to explore the code in more depth, and try modifying it, you are recommended to use an Integrated Development Environment tool such as Netbeans (www.netbeans.org), see @changingcode

Please see also @copyr

#contextmenu		¨addJCM5		§shows popup context menus

#imagesaver		¨addJCM5		§A tool to save or copy an image (png or jpg) from @plots or other @panels (accessed from popup menus)

see @save_image, @copy_image

#plots		¨addJCM5		§From each @qtset several types of plot can be created
<ul>
£*lineplot
£*datable
£*histoplot
£*XYplot
</ul>
----
see also @jcm.gui.plot

#processdialog		¨addJCM5		§A box showing information about any slow process,
e.g. loading large GCM datasets or documentation files, or iterative calculations used in @optimisation or @scripting

#datable		¨addJCM5		§A table showing all data stored by a @qtset
Get this from popup menus in @jcmtree or from the menu at the top.

€€cogs The table is dynamically linked to the model: changing parameters may change the table contents. On the other hand, you cannot edit the contents directly. 
€€cogs For some data columns a scaling factor (e.g. x1000) may have been applied on the visible graph, but not in the table, see @units 
€€adju You can move the columns about by dragging them at the top
€€adju the right-click popup menu provides options related to all @qtsets
€€adju This menu also provides an option to save a table. 
You can choose the separator character, to be convenient for importing into another application. Tabs are usually safer, since data may contain commas. 
Note that Comma-Separated-Value (csv) tables can be easily opened by Excel or OpenOffice, even if they are actually separated by tabs.

#jcm.tls		¨addJCM5		§£>jcm.core.tls

#histoplot		¨addJCM5		§A histogram made from data from two @qtset, for a specific year. 
If we call the curve sets A and B, then the height of each bar shows the ratio A / B, the width of each bar shows B, and the area shows A. 
 
For example, if the bar height shows emissions per capita for each region (see @socreg), the width shows population, and the area shows emissions. This illustrates both which regions are the largest emitters, and which are the largest per-capita emitters.

€€adju The slider chooses the year - it is interesting to drag this to see changes over time

€€adju You can add a third  £`qtset, "C" of a quantity that is additive to A, by choosing from the first submenu of the plot's popup menu.
For each bar from A, if the data from C is positive, it will show above the bar in a darker color, if it is negative it will show as white (with a border) subtracted from the top of the bar.

A useful example of this is to show both fossil and landuse change CO2  emissions per capita together on one plot

#scatterplot		¨addJCM5		§This is experimental, still under construction

#lineplot		¨addJCM5		§A plot showing how a @qtset changes over time
Get the plot by dragging an icon from a @jcmtree into another @panel.

€€cogs It make take some time for the model to recalculate, depending on @interactions, especially if much has changed since this @qtset was last used.

€€cogs The plot is dynamically linked to the model and will respond to changing @params - try dragging sliders in the @jcmtree

€€adju A few parameters, whose units match the scales of the plot, are also shown by draggable arrow controls on the plot. 
%%For example, starting from the default setup, a control to adjust the CO2 @stabilisation level should appear on the @atco2conc plot%%


€€adju Some extra options are accessible from the popup menu (right-click). 
<ul>
<li> You can stack the curves.  
Some curves (e.g. ratios, totals) cannot be stacked
<li> You can copy or save an image (see @imagesaver)
<li> You can create subsidiary plots combining two @qtset
</ul>
€€adju You can also change the scales by dragging them.
Double click to set the origin (fixed point) for dragging
€€adju More information about each @qt and @scaleview  is provided as you move the mouse over them.

#scaleview		¨addJCM5		§An adjustable scale
€€adju You can change scales by dragging them, which stretches or squeezes rhe scale ith respect to a fixed point (usually 0 for vertical axis,2000 for time axis) . To choose a different fixed point, double click on the scale

€€adju Move your mouse over the axis to see pop-up info about units and range

When a plot is opened an appropriate scale range is calculated automatically. 
See also @units

#package		¨addJCM5		§JCM, like all java code, is organised into  packages of related classes of objects.
See also @jcm.mod, @aboutjava

#showpan		¨addJCM5		§See @panels

#normal		¨addJCM5		§This is for general use. All curves and controls will be shown at normal level and above by default (if their code does not specify a complexity level).

#simplest		¨addJCM5		§This is to help beginners learning how to use JCM, showing just one or two curves per plot and options per module. Only selected modules are shown, to illustrate key steps links between CO2 emissions, concentration, forcing, temperature and sealevel. Beware that any simplification hides important assumptions - you should not present results derived from consideration of this level alone!

#editdoc		¨addJCM5		§JCM documentation can be edited using a convenient "wiki" system.

Changes to the source text are shown immediately in the documentation.
Changes to labels are also used elsewhere in the model, when refreshed (e.g. when you click on the @treeMaker). 

€€adju Start by choosing "Edit Doc Source", the top item in the "Edit Doc" menu at the top of any @docview. A split-panel for editing will appear to the right. 

---- ==Labels Keys / Categories / Info  ==

Each label/page has a unique identifying key. 
These keys are shown at the top-right of the documentation panel. 
You can also see keys in the @jcmtree, in @menus and in hyperlinks by choosing  "label codes" from the Language menu (within View menu)

At the top of the editing panel are short text-fields for the "category" (used for dividing the files and organising the @labdoctable) and any extra information about this label (whatever you like, e.g.  "fix-me!").  

Below this are two text-fields for the short label (used for hyperlinks and by @jcmmenu, @jcmtree and @legend)  and medium label (used  for titles of documentation pages and subsections). 

You can also used the @labdoctable to explore the complete set of keys 

---- ==Wiki syntax==

Below this are two larger panes. The text in the upper one (black text, editable), will be directly converted into HTML for the documentation. 

Some convenient "wiki"-style shortcuts are provided for text-formatting:
%%(to understand these examples, look at the source in edit-doc panel)%%
 **bold**  //italic// --strikeout--  __underline__ %%small%% ,,subscript,, ^^superscript^^ 
It is also easy to add icons e.g.  €€cogs €€clou €€tool €€bern using names in png/iconnames.txt (inside JCM package)

Normal HTML  tags can also be used, but note that the java5 html parser does not recognise as many tags as some browsers.

----==HyperLinks and Inserts==

Hyperlinks are made using the at-sign plus the label key, like this @docexample.
 If this key does not yet exist,  the link will appear red as in @anotherexample, you can click on it to open a new blank label for editing.

Source text may also contain code (starting with a pound-sign) to insert subcomponents from other keys, in several ways, as shown by examples below
<ul>
<li>1. £`docexample
<li>2. £~docexample
<li>3. £§docexample
<li>4. £%docexample
<li>5. ££docexample
£*docexample
<li>7. £>docexample
<li>8. £<docexample
</ul>
Example 3 inserts all the documentation (except initial title) - so it can also be used for 'redirecting" to another page
Example 4 makes a summary of limited length excluding any %%small text%%, further inserts, or extra dynamic  documentation (see below).
Example 5 creates as subsection and also adds a bookmark at the top of the page.
Example 6 adds a bullet, a link and a summary

Right-click on the editing panel to jump directly to edit the label/documentation of any of these subcomponents.

----==Extra Dynamic Documentation==

After this extra documentation may be added, as shown in the lower panel (brown colour, not editable). This is automatically generated by the model to provide dynamic information about this model component (e.g. @infob, @module,  @param, @qtset, @qt, @region) . This also uses inserts (as described above), which you can edit using keys from the popup menu (right-click).

€€cogs The system is still evolving, to understand exactly how it works look in @autodoc and getExtraDoc() methods in code of @infob and its descendants.

----==Saving and Loading==

When you close JCM normally, all changes to labels/documentation will be saved automatically in text files in a folder "labdocchanges", and reloaded next time you start JCM. Thus, you can accumulate edits without worrying about saving them. However it is wise to make a backup of 'labdocchanges"  from time to time (especially while the system is still evolving).

To blend with the existing documentation, you can use "Save All" option from the "Edit Doc" menu, this saves many files which can be reloaded together using the "Load" option. 
Eventually, changes should be incorporated permanently into the JCM package for distribution, regarding this please @contact (see also @translation)

#docexample		¨addJCM5		§Text of key docexample

#howuse		¨addJCM5		§€€adju Here are some hints to get started using JCM5
<ul>
<li>Start by exploring the model using @jcmtree
Click on items to expand/collapse branches. 
Experiment with changing @filters and @complexity
(start exploring the model using the @simplest level)
<li>From this tree,  drag @qtsets into @panels to open @plots. 
€€cogs There may be a delay to show new plots, as the model calculates only as needed (see @interactions)
<li>Try adjusting some @params (e.g. drag a slider with the mouse), you should see an instance response on related plots.
<li> Each item has @docview which can be accessed from the menu or by using the @filter in the @jcmtree
<li>You can change the layout by resizing or splitting @panels - right click next to the tabs to see a popup menu with options. You can also drag tabs from one panel to another, or even to an external window.
<li>To focus on one  @package or  @module, you can drag into into another panel to make a sub-tree
</ul>
€€cogs Note also the following:
<ul>
<li>You can find many more options by right-clicking on plots, tables etc. 
<li> Explore the  first three @menus at the top (@viewmenu, @toolsmenu, @setupmenu). 
<li>The other menus access model components, for which the £`jcmtree is usually more convenient.
<li> To see the relationships between modules check the @interacmap
<li>You can also change the @languagemenu of labels and documentation. Translations need updating, but there is a convenient system for @EditDoc 
<li>In @expert level, you can also use @worlds, @sourceview, @data 
<li> Parameters and Layout will be saved and reloaded next time you start JCM -see @setup. 
<li> You can save other model setup using @setupmenu, and also export data from a @datable, and export images using @save_image and @copy_image.
<li> In case of problems, check messages in @sysout

</ul>

#menumaker		¨addJCM5		§£>jcmmenu

#moulist		¨addJCM5		§Handles drag and drop between @panels

#translation		¨addJCM5		§JCM's @labdoc system is "internationalised", designed to be easy to translate into any language. 
%%(note also that  Java works with unicode so it can handle even 'exotic' languages).%%

In @JCM4 extensive translations were made for labels, for 8 languages. 
(see @acknowtranslate)
Substantial parts of the documentation of JCM4 were also translated into French and Danish. These translations are still retained in the current package, however they have not been adapted to fit the new JCM5 structure, and some may no longer be accurate in the new model.

So help is now sought for translation of JCM5. 
Please get in touch (@contact) if you can help to make translations to your language, so we can coordinate and avoid duplication.

=== How to make Translations===

The model code itself stores only @labelcode. These are used to look up the labels you actually see in the graphical interface (in the @jcmtree, @menus, @params, @legend etc.), as well the relevant @documentation, according to the chosen @languagemenu.

Thus, the same wiki-system for @editdoc can be used for any language, it is not necessary to change any java code or even to use any tool other than JCM itself. All you have to do is to select the language in the @docview, and the edited text will automatically be saved in the right files for that language.  Note that you can view the original and the translation in parallel viewers (see @panels). 

 It is recommended to start by setting the @complexity to @simplest, and translating all the labels that appear in the @jcmtree and menus, then some of the introductory  documentation pages.

Translated documentation should keep the same structure as the original, including the same hyperlinks (which should not be translated - follow the link to change it's text). 

Note: it is not necessary to fill both the short and a medium label (title) boxes, if these are the same. If you only want to translate the labels (for the @jcmtree, hyperlinks etc.) and not the documentation, do NOT type anything in the main doc section ( if it is empty, then the english will be used, shown in grey).

It is expected that only a small subset of the documentation pages will be translated, as many items will only be considerd by a few @expert users, most of whom already understand english.  When a translated page is not found, the english default will be used instead. Thus,  it is better to translate nothing in a page, than to translate half of it (which could hide important information).

The translated text should be saved automatically in a folder "'labdocchanges" on your local disk. Please back this up drom time to time.  When ready, this folder should be sent to me as a zip archive, in order that it may be blended with the original labdoc files stored inside the jar package, for public distribution. 

----
Why do this? See @dialogue, @concept, @teaching

#jcm.mod.data		¨addJCM5		§A package containing java code for loading external data

#jcm.mod.math		¨addJCM5		§A package containing some mathematical tools

Note also @jama

#jcm.mod.carbon		¨addJCM5		§This package contains modules concerned with the cycle of carbon between the atmosphere, ocean and terrestrial biosphere.

#jcm.mod.cli		¨addJCM5		§This package contains modules calculating the steps from @radfor, via @glotemp, through to global @sealevel,  in other words all modules concerning heat fluxes. 

The radiative forcing module pulls together contributions from many gases and aerosols, calculated packages @jcm.mod.carbon and @jcm.mod.ogas. The core heat-flux calculations are then made by an @udebclimod, based on the model of Wigley & Raper calibrated as for IPCC-TAR.

#jcm.mod.reg		¨addJCM5		§This package concerns regional  climate change.<ul>
<li>Spatial patterns of regional and seasonal changes of several climatic variables are imported from GCM projections.
<li>These may be scaled to the average temperatures projected by JCM package @jcm.mod.cli
<li>It is anticipated to develop this package further by adding a regional sectoral impacts module.
</ul>
%%For experts: note also related components (not modules):
@maps, @mapdata,  @regions, @regpoly (in  @jcm.core.reg) %%

#regseacli		¨addJCM5		§This module generates a  @seasonalcycle  @qtset for the chosen @cliregions, based on the @quantity and @dataset chosen in the @regcli module. 
Notes:<ul>
<li> This module is classified @expert, as the results may be rather confusing,  especially for some parameter combinations.
<li>€€cogs The interpolation  from the large gridded GCM dataset to JCM regions for every month may takes some time to calculate. Therefore a @processdialog should appear when the  £`seasonalcycle £`qtset is first opened. Please wait for this. Once the calculation is complete, the vertical @scaleview may need to be readjusted manually.

</ul>

#mapprojection		¨addJCM5		§Code for projecting latitude-longitude data onto a map using various projections
see @projection parameter

#regman		¨addJCM5		§Loads the region data and provides functions for searching for @regionsets

#region		¨addJCM5		§A region of the world is defined either by polygon data, or by a set of subregions
See also @regionsets, @regman, @maps, @interpolator

#seasonalcycle		¨addJCM5		§see @regseacli
Note, unlike other £`qtsets, the x-scale is months  (1=Jan, 2=Feb etc.)
Units depend on the chosen @quantity
%%Maps can be derived from this curve set, but only if @cliregions are the same as @socregions and the @mapyear is adjusted to between 1 and 12 %%

#atco2flux		¨addJCM5		§This @qtset combines Sources (=emissions into the atmosphere) from @globco2emit module and Sinks (=fluxes out of the atmosphere) calculated by @berncarbon module

Note that:
@totemit=@fossilemit + @lucemit
@totsink = @oceansink + @landsink
@atincmod = @totemit - @totsink, 
and when @atincmod = 0 the @atco2calc stabilises (see @stabilisation)

Note also{{
*:@berncarbon explains more about the calculation of sinks
*: see also @sinksdynamic, @sinksbiosphere, @sinksocean, @carbchem
*:@carbonstoreplot shows more detail of where the carbon goes after leaving the atmosphere. 
*:fluxes are influenced by both @clicarbfeedback and :@clipolfeedback
}}

#accccarbon		¨addJCM5		§If this is selected (it is disabled by default), a very simple model used by ACCC
(see @attribution) is used instead of the normal @berncarbon. This options was provided for a model intercomparison exercise.  The ACCC model, as any simple linear model, is not accurate for future projections, but reasonable over the last few decades.

#fgas		¨addJCM5		§This module calculates emissions, atmospheric chemistry, and forcing for the 25 F-gases (CFCs, HFCs, PFCs, SF6)

££fgases
££fgasnamecol

#othgasemitcurves		¨addJCM5		§This @qtset shows the  emissions of CH4, N2O,  SOx (leading to sulphate aerosols, see @aerosol) and  ozone precursors CO, NOx, VOCs (see @aboutoho3) 

The emissions are prescribed by SRES scenarios, sometimes scaled down to CO2 for stabilisation scenarios -see @othgasemitoptions.

€€adju It is interesting to compare the relative contributions of each gas with those in @atchem&conc, @atchem&rf
Note also @fgas&emit
 
€€cogs Note:  For CH4, units are Tg CH4 (not C), whereas for N2O and NOx they are Tg N -this is following IPCC convention. Emissions and concentrations units are 1000 times smaller than for CO2, but the warming effect per molecule is much greater.

#fgas&conc		¨addJCM5		§For an introduction see @fgases
---- ££fgasnamecol
----
%%€€cogs Note the units of the concentrations: they are 1000 times smaller than in @atchem&conc and 1000,000 times smaller than on @atco2conc.  However the warming per molecule (see @fgas&rf) is much greater!%%

#fgas&emit		¨addJCM5		§For an introduction, see @fgases
----££fgasnamecol

#fgas&rf		¨addJCM5		§For an introduction see @fgases
Note also @radforothgas
---- ££fgasnamecol
---- 
€€pan Note: The negative forcing due to ozone depletion is also included

#fgas&rf&totals		¨addJCM5		§See old labels: @fgasplot, @fgases, @radforothgas

#allrf		¨addJCM5		§This @qtset shows the total @radfor from each main group gases, so it is easy to follow the key trends. 

€€adju %%These sets are not mutually exclusive, so it does not make sense to stack these curves - for a stacked plot use @allrf_detail. %%
€€cogs %%Similar sets of gases are used in  @co2equivconc, but the curve shapes differ due to the nonlinearity of @radforco2 %%

#allrf_detail		¨addJCM5		§£§allrfdetail

#regrf		¨addJCM5		§This @qtset shows the uneven distribution of the radiative forcing between the four surface boxes of the @udebclimod.

It is useful to consider it alongside @box_temperature.
Note that the formulae for distributing aerosol and solar effects are only simple guesses. 

The @unif option makes the four forcings the same (while preserving the total)-  as you can see from @box_temperature this doesn't make much difference to the global average temperature, although it strongly affects the regional ones. 

See also  @radfordistrib

#glotemp		¨addJCM5		§This linker module:
<ul>
<li>holds the @glotempcurves curves produced by the main climate module @udebclimod
<li>imports historical datasets, for comparison, and adjusts all curves to a common @baseyear
<li>handles the @interactions, 
%%taking input from @radfor and passing output to
<ul>
<li>@sealevel
<li>@regcli, @impacts 
<li> @responsibility , @costs
</ul>%%</ul>
See also<ul>
<li>  @rftemp and @gcmfit
<li>  @stabtempdoc
</ul>

#oceantemp		¨addJCM5		§This is a part of the @udebclimod that has been extracted to a separate module as it is  a computationally intensive routine which is only needed when the @oceantempcurves are visible. 

€€cogs Note that the model still propogates heat fluxes in each layer even when this module is not run, see @eigenvec 
€€cogs Structurally, this module is similar to  @carbonstorage (although the layer structure and diffusivities are different for heat and carbon)

#udebclimod		¨addJCM5		§This module calculates the global surface temperature change, considering the energy balance due to radiative forcing in four surface boxes (north, south, land, ocean), and the slow uptake of heat by a multilayer upwelling-diffusion ocean.

€€cogs Note that the @glotemp linker module handles the @interactions and @qtsets produced by this module.  This division makes the code more manageable and efficient, and may enable substitution of a different type of climate model later. The  @oceantemp submodule has also been separated for efficiency.

<hr>See @glotempcurves,  @rftemp, @gcmfit

££udebmodel  
</ul>
££climodfuture
</ul>

#sealevelrise		¨addJCM5		§This @qtset shows the change in global average sea-level, due to thermal expansion and ice melting.

£§icemeltupdate

€€adju note, you may find it useful to adjust the @model_end_year

#oceantempcurves		¨addJCM5		§This @qtset shows the change in temperature in each layer of the ocean, demonstrating the slow transfer of heat between surface and deep water.   

The curves simply correspond to the temperature of each box in @udebclimod <ul><li>Green-Cyan: South Ocean
<li>Red-Pink: North Ocean
</ul> There are 70 boxes: 35 North, and 35 South, the upper layers are each 49m deep, the lower layers 196m deep.

  €€cogs  The relevant parameters in in @udebclimod, usually tuned to a GCM chosen from the @climodmenu, as explained in @gcmfit. You can also adjust them manually. 
€€cogs Note that the initial temperature/depth profile is fixed such that the model starts in steady state in 1750 (i.e. if there were no forcing, there would be no temperature change). This initial profile is calculated analytically by fixing the surface temperature, and may help to reveal unrealistic combinations of parameters. 

Related pages:<ul>
 <li>@udebclimod explains more about the layers and factors affecting the mixing.
 <li>Deep ocean temperature is a major factor in @sealevelrise 
 <li>Surface temperatures are shown in @glotempcurves
</ul>

#glotempcurves		¨addJCM5		§This @qtset shows the change in global average surafce temperature. Historical measured and proxy temperatures are shown for comparison.

Some related pages: <ul>
<li>€€adju Temperature changes are shown with respect to a @baseyear, which can be adjusted by a @arrow
<li> €€cogs See @rftemp about how the temperature responds over time.
<li> €€pan To look below the surface, see @oceantempcurves, or to look at land-ocean or intehemispheric differences, see @box_temperature
<li> €€clou Regional temperature changes can be much greater than the global averages shown here! -see @regclimap
<li> €€emit You can  set a target temperature stabilisation curve, and calculate the emissions to attain it: see @stabtempdoc. In this case,  a @arrow will appear on the plot, to adjust the target level and year.
<li> €€adju Experiment with @climodmenu (see @gcmfit)
<li> €€cogs For experts: @udebmodel
</ul>

#tempavfrom1750		¨addJCM5		§Global Annual Average Temperature, calculated by the model, compared to to 1750

#surftemp		¨addJCM5		§Regional Contributions to Absolute Global Average Termperature Rise.

This plot produces the best summary to illustrate the results from @jcm.mod.resp
Note the contrast of these absolute temperatures with a plot of  @surftemp&relative

After the @endyear the contribution to absolute temperature gradually declines

This plot also illustrates that a substantial contribution to temperature rise also comes from {{
*: Unattributed CO2, CH4 and N2O emitted before or after the period defined by @responsibility - try moving the arrow controls
*: Other greenhouse gases (principally ozone, F-gases, and aviation cirrus)
*: Aerosols and volcanos (cooling effect) 
*: Solar variability  (sometimes warming, sometimes cooling)
}}

#sealevte		¨addJCM5		§Note: The contribution of ice-melting is not yet included

#jcm.script		¨addJCM5		§A folder of @scripts built into the JCM5.jar package. 
€€cogs Note, these have not been checked or updated recently, and should only be used by experts!

#atco2conc		¨addJCM5		§This @qtset shows the changing concentration of CO2 in the atmosphere

Note: {{
*: If the chosen  @objective is to stabilise concentration,  an @arrow will appear on the plot, to control the stabilisation level and year (see @stabconcdoc)
*: see @atco2flux to understand what drives the concentration changes.
*: @co2equivconc, taking into account other gases, are found in the @radfor module. 
}}

#aerosol&rf		¨discard		§See old label: @radforaerosol

#jcmregcol		¨addJCM5		§The  warm reds, yellows, browns correspond to Annex B countries which agreed an emissions reduction target under the Kyoto protocol. The cool greens and blues are the developing countries. 
These regions are composed of countries sharing similar percapita emission histories and/or geographical proximity, and have no political significance.

#jcm12image		¨addJCM5		§A hybrid between JCM12 and IMAGE (old - no longer needed?)

#csw15		¨addJCM5		§A region set used by an climate-economics model

#houghton		¨addJCM5		§region set used for Houghton's Land-Use CO2 emissions data

#nations		¨addJCM5		§All Nations (2002), except that small islands are grouped by ocean basin

#allland		¨addJCM5		§All Land regions, including subregions of large countries

#oceans		¨addJCM5		§Ocean regions - divided into large boxes for use in @regcli

#all		¨addJCM5		§All regions, land and ocean

#gridlo		¨addJCM5		§system under construction, please ignore

#paraminterac		¨addJCM5		§%%note changing parameters in the documentation does not yet affect the model, to adjust parameters use  the @treeMaker%%

#nocurvesyet		¨addJCM5		§€€adju This @qtset has has not yet been filled with any data, as is has not yet been required for any visible plot. When you show a plot (e.g. by dragging the icon from the @treeMaker into another panel, or a plot-variant or table from the popup menu), then the model will calculate as necessary and this documentation should contain more information about the curves. 
See also @interactions

#oldmodule		¨addJCM5		§Old info:
Modules may use @tls and @root but do not refer to @gui or @pan (€€cogs see @struccode)
For each stage, for each timestep, all modules are called in the order specified by  the @modlist interface, which also enables modules to refer to each other easily.

#jcm.gui.doc		¨addJCM5		§Package handling labels and documentation
see also old link: @labdoc

#label		¨addJCM5		§Contains short and medium labels and documentation about one model item, for all languages

#about&source		¨addJCM5		§see @sourceview
see @jcm

#iconfinder		¨addJCM5		§finds an appropriate icon for  model components

#lookandfeel		¨addJCM5		§see @lookandfeelmenu

#jcm.gui.gen		¨addJCM5		§Package of miscellaneous GUI components

#jcm.gui.nav		¨addJCM5		§Package of Components used for Navigation and Layout

#jcm.gui.plot		¨addJCM5		§Package for plot and table components

#jcmtm		¨addJCM5		§data structure underlying @datable

#baseplot		¨addJCM5		§Contains common components of @lineplot, @histoplot, @scatterplot

#colorscale		¨addJCM5		§Adjustable Color-scale used for @maps, 
illustrating either @regcli or  @qtsets of @socreg
€€adju You can drag the colorscale to adjust it, similarly to any other @scaleview
€€adju The colourscale loops (purple - blue- green - yellow -red - purple - blue etc.), in order to include extreme values without losing detail elsewhere.

%%€€cogs Note also @colormap%%

#paramvaluechooser		¨addJCM5		§A component for showing the value of a numerical @param, and adjusting it using a slider. Note that the  model responds immediately to recalculate any visible plots - the response time will depend on the complexity of this calculation.

#about&setup		¨addJCM5		§£§setup

#about&script		¨addJCM5		§(Documentation to be developed)
see @script
see @scripting

#jcm5		¨addJCM5		§Current version of JCM, begun 2005, using Java 5.
See @javafuture
<hr>
You may be looking for: @mainmenu

#noteprogress		¨addJCM5		§Note: JCM5 documentation is currently being updated, both new and old pages are included below

#tools		¨addJCM5		§£§ToolsMenu

#parammenu		¨addJCM5		§A component for adjusting a menu @param

#paramoption		¨addJCM5		§A component for adjusting a true/false @param

#menufiller		¨addJCM5		§Provides info to @contextMenu

#jcmtabbedpane		¨addJCM5		§Extends java-swing JTabbedPane by adding a close facility, and interacting with @moulist

#capwin		¨addJCM5		§Screen capture - not currently used

#labeltm		¨addJCM5		§model underlying @labdoctable

#hasinfo		¨addJCM5		§an interface, currently all hasinfo are @infob

#modloop		¨addJCM5		§an interface for @module loop methods

#plotlink		¨addJCM5		§A structural component of JCM. 
Plotlink is an interface enabling @register to store a list of @plots and other @jcm.gui that depend on @interacob and may require @loop to recalculate

Plotlinks allow the visible plots to interact with @qtsets, @modules, and @params, without the science module code making any reference to the graphical interface. Thus, the science and graphical components can be coded independently, whilst interacting seamlessly.

#optimiser		¨addJCM5		§Mathematical code based on a widely used algorithm.
See @optimisation

#aboutsearch		¨addJCM5		§€€adju Use the  text box at the top right to specify which words to search for. Results will only include pages containing all of the search words, in the currently selected @languagemenu

%%€€adju you may also find @doclist helpful%%
%%€€cogs Both search and index  take some time to calculate, please wait a few seconds

#population		¨addJCM5		§see old label: @people

#regpoly		¨addJCM5		§A polygon defining a region
The resolution is 1 degree
The data is loaded from the file regions.txt (view from @DataMenu Menu)
See also @region, @regman

#ratio		¨addJCM5		§This option specifies that, for the chosen climate variable, the ratio compared to the global average change is shown instead of the absolute value.

#atchem&conc		¨addJCM5		§This @qtset shows the concentration of CH4, N2O, O3 and OH, calculated by the @atchem module. 

Note that CH4 and O3, due to their short lifetime, respond much more quickly than CO2 or N2O to changes in emissions.

Some historical measurements are also included for comparison (expert level).

#atchem&rf		¨addJCM5		§This @qtset shows the radiative forcing for CH4, N2O, O3 (calculated by @atchem module), and the total of all @fgas. 

It is interesting to consider  their relative contributions in comparison with @atchem&conc : the radiative forcing per molecule is generally greater for rarer gases, which absorb at different wavelengths from the major gases (CO2, H2O etc.), reducing the effect of saturation. 

see also <ul> 
<li>@radforintro
<li>@radforothgas
</ul>

#icemeltupdate		¨addJCM5		§-{red // Note: the ice-melt curves here are consistent with IPCC-TAR 2001, but more recent studies suggest that both Greenland and Antarctica are already melting much faster than projected than these models!// }-

#greenland-sensitivity		¨old- remove		§£§icemeltupdate

#antarctica-sensitivity		¨old remove		§An ice-melt parameter derived from IPCC TAR Ch11



£§icemeltupdate

#intropara		¨addJCM5		§Climate change is influenced by complex interlinked processes. This interactive model lets you explore the system and how we can change it, simply by adjusting with your mouse parameters and observing the effect instantly on diverse plots ranging from socioeconomic drivers to climate impacts. The core science calculation methods are similar to those used in the  Intergovernmental Panel on Climate Change, implemented efficiently in the java language, to enable anybody to access this tool via the internet and explore diverse scenarios and the sentitivity of projections to risk/value judgements and scientific uncertainties. The most important components have been updated to be consistent with the recent IPCC-AR4 report, while some other modules date from the earlier IPCC-TAR, and observed socioeconomic and climatic data is updated annually.

#updatedoc		¨addJCMHELLO		§-{red// **Last updated {revisiondate} **

Note: a few documentation pages have not yet been updated and refer to the old version JCM4//}-

#emitch4		§See also @othgasemit

#emitn2o		§See also @othgasemit

#regpotlucbase		§see @futbasescen

#inequality-aversion		§In this model, this is the same as the elasticity of marginal benefit of income

#fix-effdisc2000		§

#effdisc2000		§Otherwise known as Social Rate of Time Preference

#xyplot		§This plot shows the relationship between two different @qtset that have one or more @qt in common (typically they might use the same @regions).  It can be especially useful for comparing several parallel @Worlds.

€€adju From a @qtset "A" from the popup menu (in @treeMaker or from another plot), choose "XYPlot per..." and choose another @qtset "B" (this might be another quantity, or the same quantity in another world). Note, if you don't find B you may first have to use first  "Refresh Options", or open B elsewhere to force it to be set-up.

The resulting plot will show data from A on the Y axis as a function of B on the X-axis, for every region (or other quantity) that they have in common, and for the years between the two time sliders shown at the top. 

€€adju If you pull the second slider to the left, such that the years are equal, the curves will show data circles for just one year, rather than curves.

€€adju You can add extra £`qtsets using the first submenu of the plot popup menu. For example, if you add another qtset "C", it will show data from C on the Y axis as a function of B on the X-axis (B is common to all added £`qtset).

#emitfosbase		§The major source of CO2 emissions is the combustion of fossil fuels for domestic energy, industry and transportation.
 
The historical CO2 emission due to fossil fuel per country is established using consolidated international energy statistics. 

Future baseline emissions are derived from @aboutsres.

#tracer		§See @attribtracer

#timeslice		§see @attribMarginal

#normarg		§see @attribMarginal

#regionsonly		§Option to remove the extra 'unattributed' curves, useful if you want to plot relative attribution only.

#atincmod		§Net Increase in the atmosphere each year (i.e. sum of @totemit minus @totsink) as calculated by JCM. When this is zero the @atco2calc (in @atco2conc) will stabilise.

#atincdat		§Net Increase in the atmosphere each year derived from measured concentration data (see  @atco2data in @atco2conc)
The trend, disregarding the noise, should be similar to @atincmod

#brazilian		§Allocation of emissions reductions based on attribution of responsibility for climate change.

For more information about this concept see
@jcm.mod.resp and @shares

€€cogs Warning! This option is currently being reimplemented, following restructuring of @jcm.mod.resp module. Results may not be consistent with @stabilisation scenarios and should be considered experimental!

#cheapest-iterative		§Experimental!  This option may not work, please do not place weight on the  results.  See also @costs

#cheapest_iterative		§Experimental!  This option may not work, or produce bizarre results!  See also @costs

#cheapest_algebraic		§Experimental!  This option may not work, or produce bizarre results!  See also @costs

#biome		§<img src="../data/lu_A_1700.png">

#jcmtree		§A folding tree for navigating and opening JCM components: 
<ul>
<li>-@jcm_root
<li>-|-@Worlds
<li>|-|-@world
<li>|-|-|- @package  (€€bal  €€map €€luc €€carbon €€othgas €€temp €€clou )
<li>|-|-|-|- @module
<li>|-|-|-|-|- @param
<li>|-|-|-|-|- @qtset 
</ul>

€€adju By default, a tree should already be open at the left of the JCM window. If not, you can get another from the @Toolsmenu (top left)

€€adju Click on each item to open or close a branch.

€€adju  You can drag items from a tree branch into other @panels <ul>
<li>dragging a @qtset will create a @lineplot, 
<li>dragging a @module, a @package or a @world will create another @jcmtree, starting from this branch.
</ul>

€€adju Which items and actions are included in the tree depends on the @filters and @complexity selected in the toolbar at the top. To get the most out of JCM, it is important to vary these according to your task. For example, using the @docview filter converts the tree into a navigation tool for all the scientific documentation, or removing all filters except @neededparams makes it easy to find what options and uncertainties apply to the currently visible plots.

€€adju additional actions for specific items are shown in a popup menu. 

€€adju The popup menu for each @qtset offers several types of @plots, and also the option to @createvariant (another derivative £`qtset which will be added to the tree).

€€cogs Technically, the structure of the tree depends on the relationship between @infobs. Each time the model is opened, it explores its own code to discover which modules and packages are available, and automatically puts them all into the tree. Thus, even new code should be available immediately, unless it is hidden by the @complexity .
See also @jcm

#about&neededparams		§£>NeededParams

#1_country_faoxmodel_areas_plot		§

#1_country_all_biomes_areas_plot_		§@1_Country_all_biomes_areas_plot test

#1_biome_area_all_countries_plot		§These curves are the area of a selected biome of each country.

See also @biomeChosen

#ivig32_model_luc_emission		§These CO2 emissions curves are the derivative of the sum of carbon stocks by biome of each country.

#ivig32_model_carbon_stocks		§These carbon stocks curves are the sum of carbon stocks by biome of each country.

#biomechosen		§This parameter lists the biome to be chosen to be plotted in the curveset 1 Biome area all countries plot.

#globco2emit		§This is a core linker module bringing both the @sres and @stabilisation scenarios together in @globco2curves .  
It also handles, at a global level, the division of mitigation effort between fossil-fuel and and @jcm.mod.luc emissions, and smooths over the transition between history and scenario data.  ;;
€€cogs This module is essential for the efficiency of JCM and typically occupies a pivotal step in the calculation @loop, as shown in the @interacmap . This is because it fixes the global CO2 fossil and land-use emissions, and the ratio between CO2 baseline and policy scenarios which, as a key  indicator of mitigation effort,  is also used for scaling @othgasemit and @AviaShipEmit.  However this module  is **not** affected by regional @shares, so these do not need to be calculated to view global scenarios.  

€€cogs Note that the parameters are also applied regionally in @futureluc and @emitbase

#fossilemitbase		§History is a bottom-up sum from @histemitdata, 
Future is determined the @sresmenu (see @aboutsres)

#lucemitbase		§History is from @CalcLucEmit
Future is determined the @sresmenu (see @aboutsres)
Note: some senarios have negative LUCF emissions, implying net regrowth / sequestration.

#globpotlucbase		§See @potluc

#globpotlucquota		§The  @potluc is used to calculate the @lucemit, according to this formula:

( @lucemit - @globpotlucquota ) / ( @lucemitbase - @globpotlucbase ) =  @fossilemit / @fossilemitbase 
;;
This is also applied on a regional level in @futureLUC

#antialias		§Enabling anti-aliasing makes text and plots look smoother, but may make the model respond more slowly.

#jcmmenu		§At the top of JCM window are some key menus

€€cogs Menus change dynamically, depending on the chosen @complexity,  @filters, and @language

The general menus, affecting the whole of JCM are:
 <ul>
@viewmenu
@toolsmenu
@setupmenu
@docmenu
</ul>
Depending on the chosen @complexity, some extra menus for accessing specific model items/actions are shown. ( €€adju note: for most tasks these items/actions can be accessed more conveniently via the @jcmtree)
 <ul>
@qtsets
@maps
@neededparams
@worlds
@sourceview
@data
@scripts
 </ul>
----
€€adju The final menu, "Show", provides a quick way to bring an existing window or tab to the front of the view (see @panels)

#filterbar		§The toolbar of @filter buttons at the top of a @jcmTree. 
A @complexitymenu parameter is also on the right.

#filter		§The toolbar of buttons at the top of each @jcmTree enables you to choose which type of items/actions appear in that tree. 
A similar toolbar applies to each @interacmap.

Types of items/actions include <ul> 
<li>@allparams, 
<li>@neededparams, 
<li>@qtsets
<li>@worlds
<li>@interacmap
<li>@docview
<li>@sourceview
<li>@data
<li>@Scripts
</ul>

€€cogs  some filter buttons are only shown at @expert @complexitymenu.
€€cogs the filter toolbar also contains a @complexitymenu menu
€€cogs  single filters are used to make some of the @jcmMenu (at the top).

#neededparam		§£§neededparams

#allparams		§When this @filter or @jcmmenu is selected, all parameters whose @complexity is not too high will be shown, regardless of whether  they are needed for any visible @plots. The simpler alternative is to show only @neededparams.
%%€€cogs (this filter / menu is only available at @expert @complexity)

#neededparams		§Parameters are considered "needed" if they may change any @qtset which is currently visible in a @plot or a @datable, according to the model @interactions.

By default, only these "needed" parameters are shown in the @jcmtree and @jcmmenu, to make it easier to find what is relevant to the current task. 
To bypass this @filter, you can select instead @allparams (at @expert @complexity). 

Parameters may become actived or disactived either when plots are opened/closed/revealed/hidden, or when a related parameter changes its @interactions. 

@Modules are also considered inactive if they do not contain any active parameters or plots at the chosen @complexity

See also 
@interacmap
----

#plot		§see @plots

#table		§see @datable

#jcm4		§An older version of Java Climate Model, finished in 2004
See jcm.chooseclimate.org, @future

#qtsets		§£§qtset

#compareworlds		§Makes a new  @qtset taking the same @qt from each different @world 
This is useful to create a plot comparing scenarios or model variants, in which each  @qt is labelled according to the name of it's world.
See @worlds for more explanation.

#variant		§see @create_variant

#create_variant		§£§createvariant

#createvariant		§This popup menu is  shown as the mouse moves over a @qtset in the @jcmtree, or by right-clicking from a @plot. It lets you create a derivative £`qtset which will be added to the tree. This variant can then be used to generate further plots (or further variants). 

Options for variants are:
<ul>
£*percent&change&per&year
£*percent&of&total
£*integral
£*ratio:
£*difference:
£*compareworlds

</ul>
€€adju An option will only be available if matching @qtsets are discovered. 
Only £`qtsets which have already been used at least once (for visible  @plots or to calculate other £`qtsets) will be taken into account in creating the list of options. To discover other potential   £`qtsets and options, click on @refresh_options (this make take some time to calculate)

€€adju There is also an option to remove a variant (to tidy up the tree, and save memory). Note that if you do *not* remove a variant, it should be saved by @setup, and remain in the tree even after closing and re-opening the model.

#toolsmenu		§<ul>
£*jcmtree 
As the tree is the basic navigation tool of JCM, normally one is already open after startup.  To create a new tree, use this menu. Alternatively you can spawn extra sub- trees by dragging worlds, packages, modules out of an existng tree.
£*sysout
£*interacmap
£*memorychecker
£*CircMenu
</ul>

#viewmenu		§<ul>
£*complexity
£*languagemenu
</ul><hr><ul>
£*lookandfeelmenu
£*SubstanceThemes
£*AntiAlias
£*FontSize
£*BackImage
</ul><hr><ul>
£*Copy_image
£*Save_image

</ul>

#data		§Files from external sources that provide fixed data input to JCM 
(i.e. historical or scenario data, rather than results calculated by this model).
€€cogs Most input data is now stored in simple tab-separated text files, for convenient checking and updating 
€€adju You can view some of the text data files included in the JCM package using the @datamenu menu in the top menubar, or via the @jcmtree using a data @filter (both only in @expert @complexity). 
€€cogs Data stored in binary format is not currently viewable (except through @datable).

See also: {{
*:@dataref
 *:@histregdata
 *:@histsocdata
*: @sresdata
*: @lucdata
*: @gcmdata
}}
}}

#scripts		§Routines to run the model automatically, cycling though many combinations of parameters, in order to make probabilistic analyses or to save many similar data tables or plots for input to another application. 

In the current version, JCM5, scripts require compiled java code, in classes extending @calcscript . These can be activated using the the scripts @jcmMenu or @filter  (only available in @expert @complexity).
Note: the scripts  included in the JCM5 package were created for our own applications and experiments, not as demonstration examples.

In the older @JCM4, it was possible to run scripts using a simple text-based scripting code ( £<scripting ),  which was also used for demonstrations and for setup. This is no longer supported.

To save model setup (static snapshots) in JCM6, use the @setup menu 

The next version @JCM6 will use Java version 6, which makes it easy to attach interpreters for various well known scripting languages, such as  JavaScript, Jython, JRuby etc. Therefore if you really want sophisticated scripting capability, please enquire about progress towards JCM6.

€€cogs Note: the java-classes in @jcm.script were created for earlier applications and experiments, and  have not been updated since some changes in the model structure (summer 2006). Therefore, most of them should not ben expected to work without modification, by expert users!

#substancethemes		§This extra menu for choosing a color theme  appears when "Substance"  is selected from the @lookandfeelmenu menu. 

%%€€cogs Note, although JCM5 should run without Substance being available, the code in themes.java refers to class in the Substance jar package, which is therefore required to compile it  %%

#fontsize		§Change the font-size of all text components in JCM.
This may be useful for people with poorer eyesight, with unusual screen sizes, or for presentations to groups.

#backimage		§This option adds a faint background image behind some @plots. 
This may be useful to enliven presentations and to make the plots more quickly distinguishable from each other.

€€cogs This feature  should currently be considered @experimental@ - as use of background images is known to cause some minor bugs, such as hiding mouse-over information in plots. 

€€cogs The image files are stored in the directory **jcm.source.backpic**. Which one is used depends on the name of the @qtset, as specified by the lookup file **backpics.txt**
€€adju You can experiment by adding more images to this folder, and corresponding entries in this file. If you find some successful examples, please send them for use in future packages (noting that file sizes must be kept small).

#copy_image		§This option allows you to copy an image, in order to paste into another application (outside JCM5 -e.g. a wordprocessor or image editor). 
If accessed from the top @viewmenu it will copy the whole screen.
To copy individual @plots, use instead the popup-menu from a right-click on the plot.

#save_image		§This option allows you to save a snapshot of jcm as an image file.
If accessed from the top @viewmenu it will include the whole screen.
To save images of individual @plots, use instead the popup-menu from a right-click on the plot. 

You have a choice of format: <ul>
<li> png (recommended for most purposes), 
<li> png-transparent (without background, for blending into presentations - but otherwise the same as png)
<li> jpg (rather inefficient for plots)
</ul>

Note also @setup offers a more dynamic way to save a snapshot of JCM5

#memorychecker		§An expert tool for analysing the memory usage of JCM.
This was developed used for improving the model efficiency.
It may also be useful in  planning intensive analyses (see @scripts). especially if many parallel @worlds  are used.  
Beware that this tool itself consumes memory and slows down the model.

#setupmenu		§<ul>
£*reset_all_parameters
£*reset_scimod_parameters
£*standard_setups
£*load_setup
£*save_setup
£*model_end_year
</ul>

#reset_all_parameters		§Including interface parameters such as complexity, language, look and feel, etc., as well as everything covered by @reset_scimod_parameters/
Note, to reset the layout as well, use @standard_setups

#reset_scimod_parameters		§Reset all parameters in scientific modules, 
i.e. all parameters available from the @jcmtree, regardless of @complexity setting, but excluding some user-interface paramaters.

#standard_setups		§Restore the layout and parameters from a standard @setup included in the JCM5 package. 

This is the most complete "reset" option, as it will also reset the window size, look and feel etc.
 
€€adju You can also open the model directly with the default setup by pressing the right-hand button on the opening splash screen (quickly -before your previous setup is loaded).

#load_setup		§Load a  @setup (from your disk, not from the JCM package)

#save_setup		§Save a @setup to your disk

#model_end_year		§Changes the end year (time-horizon) of JCM @qtsets and @loop.

Extending this time-horizon may be especially useful for studying and long-term impacts such as @sealevelrise. These core global science modules of JCM should work to year 3000 and beyond.

A longer time horizon is also important for analysis involving @optimisation of a welfare function integrated over time, in order to minimise distortion due to "end effects" (for this purpose it is recommended to run up to 2400). 

On the other hand, regional socioeconomic projections over such timescales are not credible, and some regional components of JCM are not programmed to calculate beyond 2200, which is the default end-year.

€€cogs The longer the time-horizon, the slower the model will run, and the more memory it will use. You may wish to experiment with the @memorychecker tool. 

€€cogs Since java array sizes are fixed, when this parameter is changed all the  memory used for storing the data of @qtsets data must be re-allocated, which may take a few seconds.  Do not change this paramater frequently inside a @script.

----
see also older page @inertia

#safemode		§A "Safe Mode" of running JCM5  is provided for users who wish to experiment with the model from "Java Web Start", without giving it permission to save or load any data to/from their hard disk. Most parts of JCM should still function in this mode, with the exception of saving @save_setup, @save_image, @save_table etc.
%% €€cogs if you see some "Security Exceptions" reported in the @sysout, this indicates that the safe mode is working, the model was denied permission to access a resource %%

#frames		§£>panels

#filters		§£§filter

#packages		§£§package

#panels:		§£§panels

#infobs		§£§infob

#percent&change&per&year		§Calculates the rate of change of each @qt, expressed as a percentage.
Technically, this is 100*(dy/dx)/y. 
This is useful for analysing trends, particularly in combination with @ratio:

#ratio:		§Calculate the ratios between two @qtsets, for example combining regional emissions (@socreg) and regional population (@socio) gives regional emissions per capita.

€€cogs A new @qt will be created for all regions (/gases/sectors...) which are found in both £`qtsets. Only qtsets with at least one matching region (/gas/sector...) will be included in the submenu of options.

 @qtsets created this way can also be used to make a  @histoplot or an @XYplot

#difference:		§Calculates the difference between two @qtsets, for example you might want to subtract land-use emissions from total emissions (see @socreg), or abatement costs from total costs (see @costs). 

€€cogs   Only qtsets with identical @units and at least one matching region (/gas/sector...)  will be included in the submenu of options (often there are none). A new @qt will be created for all regions (/gases/sectors...) which are found in both £`qtsets.

#percent&of&total		§Calculates the ratio of each curve to the total, expressed as a percentage.
€€cogs Note that this total excludes curves that are already considered to be subtotals. It should be the same as the sum of all the curves shown in a @lineplot using the @stack option (which can be usefully combined with this variant).

#baselines		§The zero-point for reporting temperature rise is arbitrary ! Climate modellers usually start by assuming a steady-state in the preindustrial era (typically 1750), which thus defines the zero point. Those investigating historical data tend to use the 1960-1990 average as a baseline, to smooth out temporary fluctuations, while acknowledging that the best data comes from the recent past. Whereas people comparing future scenarios often want to to know the change from the present (typically 2000). So, be very careful to compare like with like! The same applies to sea-level rise.   
See also @baseyear

#carbonunits		§It is easy to get confused about units of CO2.
<ul>
<li>Most scientists report CO2 emissions in Gt Carbon, to allow for easy transformation to/from fossil fuel, bicarbonate ions in seawater, wood, soil, etc. 
1 Gt= 1 billion tons = 1 Pg
<li>In the policy / business context it is more common to report Gt CO2, including the weight of the oxygen atoms 
1 Gt CO2 = (44/12) Gt C. 
<li>Sometimes people refer instead to Gt CO2-equivalent (CO2-e) which includes other greenhouse gases scaled using global warming potentials   <li>see also @howmuchgtc, @co2eq
</ul>

#qts		§£§qt

#menus		§£§jcmmenu

#maps		§£§map

#map		§£§mapplot

#language		§£§languagemenu

#labelcode		§JCM has a unique label-code name for each @infob 
%%(@modules, @qtsets, @params, @qts, @regions).%%
These label-code names are used to look up translatable @labdoc. 
%%[They were also used for @scripting in @JCM4, and may be again in @JCM6]%%

To find the label-code name of an object or parameter, choose label-codes from the @languagemenu menu, then label-codes will be shown within each @jcmtree, @jcmmenu, @legend etc., and also used for titles and hyperlinks  in documentation.

Alternatively, look in the @sourceview for the strings used in constructors of qtsets and params. For modules, code-names are the same as their java class (file) names.

  Notes: <ul>
<li>  %% Item-codes may not include spaces or other punctuation (numbers are ok). Spaces are automatically converted to _underline_%%
<li>   %%Some names (particularly plot titles and axis units) are composed of multiple parts separated by '&' whose labels are looked up separately then recombined%%
</ul>

#modorder		§This is old JCM4 page, which should be replaced by a dynamically generated page, as in JCM5 the module order can change, depending on @interactions

The current order is:   <li>@loaddata<li> =&gt @sres<li> =&gt @kyoto<li> =&gt @mitigation<li> =&gt @people<li> =&gt @regshares<li> =&gt @carboncycle<li> =&gt @oghga<li> =&gt @radfor<li> =&gt @heatflux<li> =&gt @sealevel<li> =&gt @bord<li> =&gt @regcli<li> =&gt @costs<li> =&gt @responsibility

#labdocold		¨delete		§£>labdoc

#aboutjcm		§<ul>
<li>@develop
<li>@whatnew
<li>@future
</ul><hr><ul>
<li>@concept
<li>@dialogue
<li>@philosophy
</ul><hr><ul>
<li>@contact
<li>@copyr
</ul><hr><ul>
<li>@acknow
<li>@dedicatejesper
</ul>

#world_1		§JCM can have several @worlds
There is always at least one, initially called "World 1"

#docmenu		§A @jcmmenu for quick access to JCM @documentation 
A new @docview is opened for each page.
You may find it more convenient to access pages by using a @filter with the @jcmtree
Note also the shortcut icons in the top bar of the viewer.

#curvesmenu		§A @jcmmenu for quick access to @qtsets and @plots
The contents changes with the @complexity
Note, it is usually more convenient to use the @jcmtree to open plots

#mapsmenu		§A @jcmmenu for quick access to @maps
Note you can also reach these using the @jcmtree

#neededparamsmenu		§A @jcmmenu for quick access to @neededparams
Note that it is usually more convenient to adjust parameters using the @jcmtree
If this menu is empty, it is because you have not yet opened any @plots, so no parameters are needed yet. 
The contents also depends on the @complexity

#worldsmenu		§A @jcmmenu for quick access to @worlds
You can also use the  @jcmtree for this, by selecting the worlds @filter

#sourcemenu		§A @jcmmenu for quick access to JCM source code.
Note you can also reach the code via the @jcmtree using the source @filter
See also: @sourceview,  @jcm

#datamenu		§A @jcmmenu for quick access to @data
Note you can also access this via the @jcmtree using a @filter

#aboutsourcemenu		§

#scriptsmenu		§A @jcmmenu for quick access to @scripts
Note you can also access these via the @jcmtree using a @filter

#regionsets		§A set of @regions, used for @maps and regional @qtsets

JCM has a flexible structure of regions, which is useful to <ul>
<li>zoom in and out depending on the required resolution
<li>import data from other models and datasets
<li>export data for  intercomparison projects
</ul>There are many region sets available, the most appropriate depends on your task <ul>
<li> Here is the @MAINLIST
<li> The most useful: @JCM12, @JCM25, @SRES4 
<li> You may also consider individual @nations (note: this will make the model slower) 
<li> For climate impacts, try @ALLLAND, or @ALL
<li> More sets are shown at @expert @complexity
</ul>You can change the set of regions using parameters<ul>
<li>@socregions
<li>@cliregions
</ul>

#regionset		§£§regionsets

#interpolator		§A tool for interpolating data between different @regionsets

#socregions		§A parameter to choose the @regionset used by @jcm.mod.regemit and @jcm.mod.socio

#cliregions		§A parameter to choose the @regionset used by @regseacli

%%
Note that this may be  different from @socregions, and also from that used by maps created from @regcli (which have their own @mapregions)

#mapregions		§A @regionset parameter used by one map, independently of the rest of the model (different from  @socregions and  @cliregions)

#chemfeedback		¨oldlink		§£§clicarbfeedback

#interacex		§@fcnormal
@clicarbfeedback
@clipolfeedback

Note also old JCM4 doc: @fcchanging

#carbclifeedback		¨oldlink		§£§clicarbfeedback

#clicarbfeedback		§In JCM, there are two in feedbacks from climate to the carbon cycle:<ul>
<li>The carbonate-chemistry in the ocean is affected by the temperature, if the @chemfbopt parameter is enabled (see @carbchem)
<li>The terrestrial-biosphere sink is affected by the temperature, if the @resp_Q10 is anything other than 1.0
</ul>
€€adju To explore this: <ul>
<li>view a plot of @atco2flux
<li>view simultaneously the @interacmap
<li> choose @nopolicy from £`controller (to avoid @fcstabsres)
</ul>
Now remove both of the feedbacks above: <ul>
<li>The arrows from temperature to carbon should disappear. 
<li>Both the ocean and biosphere sinks should increase
<li>The "spikes" in the carbon cycle due to influence of volcanic cooling should disappear
<li> The model may calculate a bit faster when you adjust emissions/carbon parameters, if there is no other reason to calculate the temperature
</ul>

#clipolfeedback		§The @fcnormal is from emissions to climate impacts. However, JCM can also be used to explore feedbacks from climate back to emissions policy.
=== Stabilisation Feedbacks === 
€€adju To explore these:<ul>
<li>Set the @objective is @stabilisation (as by default)
<li>Open an @interacmap
<li>Show plots of @atco2, @allrf_detail, or @glotempcurves
</ul>

€€adju Now change the @stabilisation parameter, and watch the arrows on the @interacmap. The 'backwards' arrow to @stabilisation moves according to the type of scenario <ul>
<li> @stabemit => arrow from @globco2emit
<li> @stabconc => arrow from @carboncycle
<li> @stabrf => arrow from @radfor
<li> @stabtemp => arrow from @glotemp
</ul>
€€adju The four-headed draggable  control should also jump to the respective plot, this provides an easy way to adjust the stabilisation level and year defining the target curve. 

€€adju Note: if you choose @nopolicy from @objective, stabilisation should disappear from the £`interacmap and from the £`jcmtree. In this case, everything depends on @futbasescen.

===More complex feedbacks from climate to emissions policy ===
Stabilisation-driven feedback only considers global average concentrations/temperature, but some more complex policy feedbacks considering @jcm.mod.soc are possible:<ul>
<li>@optimisation takes into account regional impacts, but only via very controversial functions  of @costs.  
<li>The @brazilian makes a link from regional @responsibility to @shares
</ul>

The eventual aim of JCM is to complete the circle, to  show how regional emissions policy may be affected by anticipation of regional @impacts, and how regions may achieve a better result through global cooperation, whilst taking in to account many options and uncertainties. 

See also  @philosophy.

#jcm5_root		§The root of the @jcmtree 
€€cogs Created by code in @root. (see also @package, @infob)

#topmenus		§Creates the @menus at the top of JCM

#meta-inf		§A text file in the JAR package telling the system how to run it

#backpic		§A folder containing images displayed behind @plots, if @backimage is enabled

#defsetup		§A folder containing default @setup files
Note that this folder is inside the JCM5.jar package, whereas the setup folder is on your local disk.

#splash		§The splash window, shown while the model is opening. Note this offers a button to bypass reloading the former @setup

#calcscript		§The root class for @scripts, containing some useful common methods and shortcuts. Any class which extends this should appear automatically in the @scriptsmenu Menu.

#contribtemp		§Developed for Attribution of Climate Change (MATCH project) - see @jcm.mod.resp

#plot_contribtemp_1		§Plots following @contribtemp

#contribtemp_1		§variany of @contribtemp

#unccarcli		§Old code, evolved from that used for probabilistic analysis of carbon cycle and climate system parameters

#themes		§£§substancethemes

#arrow		§Draggable arrow controls for @params appear on some @lineplot. These are particularly useful for adjusting @stabilisation scenarios, when both the year and the level are adjusted simultaneously.

Arrow controls are only shown when: <ul>
<li> the code associates the parameter and the @qtset. 
<li> the @units of the parameter and the plot @scaleview correspond, 
<li> the parameter is active (see @neededparams) 
</ul>

Other parameters should be adjusted via the @jcmtree.

#colormap		§An interface of methods providing information to set up a @colorscale (min, max, changed etc.), used by @regcli and some regional @qtsets

#qtsetcolormap		§See @qtset, @colormap

#jcm.core.data		§Java classes for managing data input and output
Note that data itself is not storted here, but in the  @data folder

#griddata		§experimental, not yet used

#histdata		§Contains methods to load and combine data tables from external text files into a @qtset. 
Assumes data is separated by tabs or commas, that the first two rows contain description to be ignored, and that the third row and first column contain labels (of regions, years etc.).
This is used by @history, @LUCdata, etc.

#matchdata		§Some data used as input the ACCC/ MATCH intercomparison project and for the recent joint paper on this topic including attribution to individual nations taking into account of uncertainty. For more info see {{
*:@jcm.mod.resp
*:@ACCC-MATCH-doc
}}
This data is provided here for visualisation only, it is **not** currently used as input to any other modules in JCM, including attribution calculations, which are based on the data in @jcm.mod.regemit ;;

ENIN= Energy and Industry, AGWA = Agriculture and Waste, LUCF= Land Use Change and Forestry

Upper = Highest estimate, Lower= Lowest Estimate, Best = Best Guess

#matdata		§A tool to load data from MATLAB tables, not currently used

#doc		§See @labdoc, @docview

#jcm.core.itf		§package containing some java-interfaces used by components of jcm.core

#hascomplexity		§see @complexity

#hassetupinfo		§used to store and reload extra info to recreate @setup, for example the scales of @plots, the page for @docview, the open branches of a @jcmtree etc.

#jcmaction		§adaptation of Action, with shortcuts and complexity

#packageob		§A variant of @infob with extra documentation about package contents, action to create a @jcmtree root etc.

#pngdata		§Loads a world map stored as a png image file into a 2D numerical array, or vice-versa.
Used by @LUCdata

#jcm.core.reg		§package of classes handling regions, regionsets, and region-polygons.

#jcm.core.tls		§Core package of "tools"

#cs		§A class in jcm.core.tls containing some methods for parsing strings.
Also a code for @serbia_and_montenegro used by some datasets

#documentation		§£§labdoc

#changingcode		§£§writejava

#interactivity		§To be written, see also 
@dialogue
@howfast

#jcm6		§The next anticipated release of JCM, using java6 and based on AR4
See @javafuture

#new2004		§===Spring 2004=== 
<ul>
<li>Documentation reorganised: seperate topic-language files for loading on demand over web, big table for updating / reorganising - See @labdoc. Also some documentation in French.  
<li>Probabilistic Approach - Stabilisation under Uncertainty - see @applications 
<li> Attribution for 12 regions, and relative shares - see @attribution 
<li>Climate Map regions and projections -see @regclimap 
<li> Carbon Cycle -see @sinksbiosphere, @TGCIA450
</ul>
 ===Autumn 2004=== 

@costs and @optimisation incorporated, to contribute to the Climneg II project, applied to analyses of "optimisation under uncertainty" (see @applications).

#author.html		§see @contact

#scriptingold		§££scriptintro ££scriptlang ££scriptrun ££scriptcode ££names ££scriptparam ££scriptlist <hr> Note also @probwccc

#startpack		§JCM5 may be started in several ways: 
===Directly from a web link using "Java Web Start"===
Please see instructions online at<ul>
<li>www.climate.be/jcm
<li>jcm.chooseclimate.org
</ul>
Note, after you have used Java Webstart, JCM5 may be cached on your local disk,so you can continue to access it  offline. If you accepted to make a desktop shortcut, use this. Otherwise look in the "java control panel": open the java icon in windows control panel, goto temporary internet files => parameters => view files, and click on JCM5. 
===From downloaded jar packages===
€€cogs All the jar files (JCM5, labdoc, gcmdata, source etc.) should be in the same folder, but only JCM5 is essential (the model should be able to open without the others, with some missing functionality)
€€adju In windows it is sufficient to double-click on the file JCM5.jar
%%€€cogs (The instructions to open the class "StartJCM" are inside the jar manifest file).%%
%%€€cogs (if clicking on JCM5.jar doesn't work, it may be because another application, such as an archiving tool, has 'hijacked' all jar files, in this case look for 'execute jar' in a right-click menu)%%
€€adju  if you need to type in a command (e.g. in linux / unix) try:
 java -jar JCM5.jar

===From Netbeans===
If you want to edit the code, it is recommended to use Netbeans.
See @writejava and @contact for the latest Netbeans project files

#new2005		§<li>New structure of @JCM5 developed, using Java5 including generics, Collections, new Swing components etc. opening as an application rather than in the web browser
<li>@CalcLucEmit module developed by Christiano Pires de Campos (from IVIG, Rio de Janeiro, working in UCL-ASTR during 2005). @FutureLUC is also related to this
<li> @worlds structure
<li>Flexible @regionsets, enabling calculation for any set of regions, and solving problems of interpolation between different data sources. 
<li>Substantial update of historical and scenario input data
<li>@regseacli
</ul>

#new2006		§<ul>
<li>Further improvement of @responsibility applied for MATCH 
(see @attribution)
<li>Development of @AviaShipEmit and @AviationForcing for new ABCI project
<li>Completion of @JCM5 navigation system (@jcmtree, @menus etc.)
<li>Completion of @JCM5 @labdoc
<li>Renewed work on @impacts (experimental)
</ul>

#oldpack		§Note this is old JCM4 documentation. 
The links do not currently work, but it is anticipated that they will provided again elsewhere.

<li>Before downloading, please read @copyr  <li>Please check regularly for updates. If you use JCM frequently and wish to be informed about new developments, @contact.
 ££pack24mar04 ££pack8jul03 ££packchange ££packnotes ££pack5apr03 ££pack24dec02 ££pack1dec02 ££pack1sep02 ££pack7jul02

#globref		§See original pages on website chooseclimate.org

#climategame		§Further documentation to be developed...

#ar4update		§Anticipated in @JCM6
To be developed during winter 2006, spring 2007.

#dedicatejesper		§This version JCM5 is dedicated to the memory of Jesper Gunderman, who contributed so much to its early development, as well as to  IPCC and UNFCCC. We will not forget your efforts to keep us 'bending the curve'. 
See  //-{green www.gundermann.dk, www.dea-ccat.dk}-//, and a link from //-{green jcm.chooseclimate.org}-//
</-- link to be added to obituary /->

#aviashipemit		§This module handles Aviation and Shipping emissions, which are separated from other sectors for two reasons - {{
*: There is no consensus regarding a method of allocation of international "bunker fuel" emissions to specific countries
*:  There is a large regional radiative forcing caused by emissions of short-lived gases - NOx and condensation trails from aviation (net warming effect especially from cirrus clouds) and sulphate aerosol precursors from shipping  (net cooling effect due to low cloud formation). 
This module provides the input to the @AviationForcing module.
}}
----
%%This module was developed for application in the project ABCI = Aviation and the Belgian Climate,  Integration Options and Impacts. (see @acknowsupport)%%

#sealevelimpacts		§This is experimental, please ignore

#mapyear		§A parameter specifying the year for viewing a @mapplot of data from a regional @qtset

#ratio1		§experimental, please ignore

#ratio2		§experimental, please ignore

#mix&tmx&tmn&pre		§This option combines tmax (red) /tmin (blue) /prec (green),  as a "summary" of the climate. This works best combined with the "baseline plus change" from the dataset menu. 

Calculating this may take some time as the calculation combines six original datasets

#mix&experimental		§@experimental, please ignore

#cws15		§A set of 15 regions used by an economic model in the Belgian project Climneg II

#geme18		§A set of regions used by an General Equilibium economic model (for Belgian project Climneg II)

#nicslr		§Regions used by Nicholls for Sea-Level Impacts

#ratio_to_global_average_change		§When this option is selected, the @seasonalcycle plot shows, for the chosen @quantity, the ratio of the regional change divided by the global average change (instead of the absolute value).

#ratio_change_to_base_after_regional_average		§**//This is experimental! 
€€adju //To make it work, you must first set the  @quantity to   @both1  //**

When this option is selected, the @seasonalcycle plot shows, for the chosen @quantity, the ratio of the regional average change, divided by the regional average  baseline climate. 
Note also:<ul>
<li>This only makes sense for some variables, such as sunlight or precipitation. 
<li> The ratios tend to be larger, if the @cliregions are smaller
<li>The ratio is calculated after the regional averages (i.e. you see the  ratio of regional averages, not the regional average of the ratios for each gridcell - this makes a lot of difference!)
</ul>

#other		§Includes a contribution from melting permafrost -see IPCC TAR Ch11

#greenland_sensitivity		§An ice-melt parameter derived from IPCC TAR Ch11

£§icemeltupdate

#antarctica_sensitivity		§An ice-melt parameter derived from IPCC TAR Ch11

£§icemeltupdate

#a-b		§£c-d

#box_temperature		§This @qtset shows the temperatures for the 4 surface boxes in the @udebclimod.
<ul>
<li>Users should be aware that these temperatures are not so carefully calibrated as the @glotempcurves. They are provided for experts, to explore the effect how the model works, and to see the effect of @radfordistrib 

<li>The difference between these boxes depends on the @params <ul>
<li>@lotr <li>@kns <li>@klo <li>@radfordistrib. </ul>
<li> Surface ocean temperatures also depend on heat fluxes from below (see @oceantempplot), so they show more intertia than land temperatures (see @inertia).
<li> @regcli module gives temperatures for smaller regions, based on scaling of GCM patterns


</ul>

#arrows		§£§arrow

#radforavia		§£>aviationforcing

#exclude_aviation_non-co2		§The estimates of forcing from contrails, cirrus and aviation-ozone are particularly uncertain, and were not included in IPCC-TAR projections. 
Therefore this option is provided to exclude them from @radfor and consequent temperature calculations, without changing the @aviationforcing module

#include_efficacy_factor		§Due to the @radfordistrib from each gas, it has been postulated that the global warming caused by one W/m2 of forcing  may also differ significantly, depending on which gas it comes from.

This was confirmed by some recent experiments (of J Hansen and many coworkers, 2005) using a fast GCM to study  the temperature perturbations caused by each individual gas. From these results they derived a factor called "efficacy", which can be used in simpler models to correct for these differences. 

These efficacy factors have been incorporated into JCM, but are only applied when this option is enabled. Note that it is switched off by default because the concept  is still quite controversial, and would lead to inconsistency with older IPCC projections.

Note thatapplying efficacy has a particularly large effect on @aviationforcing (for which the efficacies were derived from an additional study of Ponater 2006)

#totaerosol		§For subcomponents see @aerosolrf
For explanation see @radforaerosol

#fgasrf		§For subcomponents see @fgas&rf,  @fgasrftotals
For explanation see @radforothgas, @fgas

#fgasrftotals		§This @qtset groups together the total forcing from each family of @fgas
See also @fgases,  @radforothgas

#cfcrf		§for subcomponents see @fgas&rf
for explanation see @fgas

#totnatvar		§For subcomponents see @aerosolrf
For explanation see @radforsolvol

#aviation_non-co2		§For subcomponents see @Aviation_Radiative_Forcing
For explanation see see @aviationforcing

#radformod		§This module calculates the total radiative forcing as the sum of individual contributions from <ul>
<li>@carboncycle, 
<li>@atchem (CH4, N2O, Ozone)
<li>@fgas, (CFCs, HFCs, PFCs, SF6)
<li>@aviationforcing (additional contrails, cirrus, ozone)
<li>@aerosol (including volcanos)
</ul>

This module also distributes the forcing between the 4 surface boxes of the @udebclimod module.

Contributions from each gas are considered in more detail below. 
At the bottom of the page are @qtsets and @params

Note also <ul>
<li>@rftemp 
<li>@stabrfdoc
<li>@co2eq  %%(a more popular but less clearly defined way of expressing the total radiative forcing effect of several gases).%%
</ul>

#allrfdetail		§This @qtset shows the contributions to @radfor from every gas included in JCM (and in IPCC-TAR projections).

For further information about each component see<ul>
<li>@radforsolvol
<li>@radforaerosol
<li>@radforco2
<li>@radforothgas
<li>@radforavia 
</ul>Note also<ul>
<li>@radforintro
<li>@radfordistrib
<li>@rftemp
<li>@co2eq
<li>@stabrfdoc
</ul>

#fgasnamecol		§---- ===Names ===
In JCM, both the common name and the chemical formulae are shown.
The common names for the freons follow a numeric code:
 CFCxyz or HFCxyz has:  <ul> <li>x+1 C carbon atoms (if x=0 it's not shown)   <li>y-1 H hydrogen atoms   <li>z F fluorine atoms   <li>5 +2x -y -z Cl chlorine atoms.
</ul>
---- ===Colors ===
 In JCM, The curve colours depend on the chemical formula of each gas:
<ul>
<li>-{blue Blue: Chlorine (Cl), Bromine (Br) //(affect ozone)// }-
<li>-{red Red: Hydrogen (H) //(shorter lifetime)// }-
<li>-{green Green: Fluorine (F) //(more inert)// }-
<li>Darker: more Carbon (or S, counts as 1.5 C) 
</ul>
 The gases containing chloring/bromine destroy stratospheric ozone and were phased out since the Montreal Protocol. 
So you can see, in a plot of @fgas&emit  the gradual transition from CFCs (blues) to HClFCs (pinks) to HFCs (browns) to PFCs and SF6 (green). 
The pattern is rather different for @fgas&conc, due to the varying lifetimes.

#othgasemitfuture		§<ul>
<li>There could be strong biogeochemical climate feedback processes affecting natural methane emissions, for example the effect of melting Siberian permafrost. A simple way to explore this uncertainty should be added.  <li>Anthropogenic emissions of CH4 and N2O are mainly due to land-use factors, and this should be illustrated in the model.  <li>A related task is to incoporate emissions abatement cost functions for each gas, for use with mitigation scenarios, to replace simple scaling to SRES.  <li>There is also a large natural source of sulphate aerosols from marine phytoplankton, which may change as a function of ocean circulation. Although the potential feedback is poorly quantified, it should not be ignored.
</ul>

#atchemformulae		§The formulae are identical to those used in the Bern CC Model, which was used to calculate the data given in IPCC-TAR-WG1 Ch6 and SRES appendix. 
They were derived from an IPCC workshop convened by Prather et al. 
The full set of equations are given in the appendix of Joos et al 2001 (@references).

The formulae for @atchem include a simple parameterisation to calculate O3 and OH from CH4, NOx, CO and VOC, and the effect of OH on the lifetime of CH4 and of all the HFCs. The effect of N2O on it's own lifetime is also considered. The radiative forcing calculation includes the spectral overlap between CH4 and N2O.

The concentrations of the Montreal gases (CFCs, HCFCs) are prescribed by WMO data, and emissions are estimated by an inverse method.  
For speed, the F-gas concentrations and radiative forcing are calculated using a ramp function over five year intervals, since the original emissions data is also in five-year intervals.
See also @fgases

€€cogs Note that these formulae may not be valid beyond the range of SRES scenarios for which they were calibrated.

€€cogs These formulae should be be updated to IPCC-AR4 in @JCM6

%%Note also: @othgasemit explains the formulae for scaling other gas emissions for mitigation scenarios. %%

#aboutoho3		§Carbon Monoxide (CO) and Volatile Organic Carbons (VOC) are produced mainly by incomplete fossil fuel combustion (e.g. in cool engines or with insufficent oxygen), whilst NOx is produced mainly by the reaction of atmospheric nitrogen and oxygen in very hot engines. These gases have no direct influence on radiative forcing, but contribute to the formation of tropospheric ozone (O3), which is the an important greenhouse gas, the next after methane.

Note that we need ozone in the stratosphere where it protects us from ultraviolet radiation, but not so much in the troposphere where it causes adverse health impacts and photochemical smog.

CO, NOx, VOC and CH4 also affect the production of reactive hydroxy radicals (OH). These play a major role in atmospheric chemistry, including the oxidation of CH4 and the HFCs. Consequently CH4 has an effect on its own lifetime.

The atmospheric chemistry leading to formation and destruction of O3 and OH is very complicated, with dozens of transient species and reactions which are difficult to measure. The distribution of these gases is also highly variable over space and time. So this model uses some simple formulae taken from an IPCC workshop -see  @atchemformulae for more detail.

#ch4-data		§Provided for comparison (@expert)

#n2o-data		§Provided for comparison (@expert)

#reloh		§An index indicating the changing relative concentration of OH
(@expert - values close to 1 - use a @table to check them).

#solardata		§Choose the source dataset of historical solar variability (or none)

#incvolc		§Including volcanos helps to match the measured @glotempcurves. 
Switching them off may be useful to reduce the "noise", or for comparison with simpler models. 
€€cogs Note also the effect on the @atco2conc, due to @clicarbfeedback

#donothing		§An @expert option to bypass this module - useful for some experiments

#radiative_forcing_index		§The Radiative Forcing Index (RFI) is the ratio of the total radiative forcing from all gases, aerosols contrails and cirrus caused by aviation emissions, divided by that for aviation CO2 alone, both integrated over a given time interval (fixed by the parameter @RFI_time-horizon) and projected into the future according to a given scenario.

The RFI concept  was introduced in the IPCC Special Report on Aviation, as an alternative to the Global Warming Potential  generally used for comparing gases (see  also @co2eq), because it was considered that the "pulse" approach of GWP is not appropriate for highly-localised effects of short-lived gases.

It has been suggested that the RFI or a similar metric might be used as a multiplier for aviation CO2 emissions in an emissions trading scheme (such as the European ETS), so that the effect of all the gases may be included without requiring separate accounting  for each gas. 

A plot shows that the RFI tends to decrease over time, and is also lower if the  @RFI_time-horizon is longer. 

Experimenting with various parameters in @AviaShipEmit or in @jcm.mod.obj  shows that the RFI is also rather scenario dependent. In general, the RFI is lower for stabilisation scenarios than for exponentially growing scenarios (such as SRES A2 or the Fa1 aviation scenario). 

Some anlayses of RFI excluded cirrus clouds, due to the high uncertainty on this topic - this gives much lower values -use the  @include_cirrus option  to experiment with this.

#rfi_time-horizon		§See @radiative_forcing_index

#update_tradeoff03		§If enabled, a correction factor is applied to make the RF projections derived from the IPCC special report consistent with the more recent calculations from the TRADEOFF project (2003).

#luc_emit_dataset		§Note: label inverse needs changing, dual use

 (unless you select the option to calculate historical land-use by mass-balance, fixing the atmospheric CO2 using the measured data from Mauna Loa).

#fertn_change_only_in_future		§An experimental option to fix the fertilisation at the default value in the past, and apply the parameter value only in the future - this was for probabilistic experiments

#concentrations		§Concentrations of the key dissolved inorganic carbon (DIC) species in the ocean. Note that most of the DIC is in the form of bicarbonate.

#hco3-		§bicarbonate  ions

#co2aq		§Dissolved CO2

#co3(2-)		§carbonate ions

#tco2		§Total CO2 (the sum of the others)

#epach4		§National / regional Methane emissions data from EPA
In five year intervals, from 1990-2020
See @dataref

#epan2o		§National / regional Nitrous Oxide emissions data from  EPA
In five year intervals, from 1990-2020
See @dataref

#test		§Test 2

<object classid="javax.swing.JRadioButton"></object>
<object classid="javax.swing.JLabel"><param name=text value=hello></param>
</object>

<object classid="jcm.gui.nav.paramValueChooser"> <param name=paramName value=climsens ></param></object>  

<object classid="jcm.gui.nav.paramMenu"> <param name=paramName  value=complexity></param></object>

<object classid="jcm.gui.nav.paramOption"> <param name=paramName value=accccarbon></param></object>

<form><input type=submit name=setup value=examples.4plots></form>
<form><input type=submit name=source value=jcmTree></form>

<form><select name=gdffg><option> sdgqdgq <option selected> sddsg </select><input type=submit value=go name=go></form>

<form name=test3>
<select name=gdffg><option> sdgqdgq <option selected> sddsg </select>
<input type=submit>
<input type=reset >
<input type=image src=clou.png name=clou>
<input type=checkbox>fqfsfqdsqfd
</form>


@testlink
@setup!examples.4plots

#test2		§Test 2

#aviation		§

#aviation_topic		§//This is an example of a "topic" documentation page, that might be opened directly from an external weblink concerned with that issue. 
More such pages will be written soon, and integrated with the module documentation.//

Two modules in JCM, @aviashipemit and @aviationforcing have recently been developed within the Belgian project ABCI (see @acknowsupport).

The buttons below will setup the model to illustrate some applications of these modules, particularly relating to the effect of all-gases compared to CO2, and the incorporation of aviation within stabilisation scenarios.
€€adju //note: You can also access the same setups via the @SetupMenu (top-left)//
----
==Aviation Demo 2C ==
-setup-aviation.aviation_demo_stab2C
A simple demo of aviation emissions and forcing
(in a stabilisation scenario limited to 2C)

==Radiative Forcing and RFI == 
-setup-aviation.aviation_RFI_5variants
Aviation Radiative Forcing, and the RFI index comparing the effect of all gases with that of CO2, comparing 4 different variants:{{ *: Default, *:Use Efficacy *: Older IPCC Forcing factors *:Without  Cirrus }} A fifth variant shows the effect of using a longer time horizon to calculate RFI
(see @aviationforcing for more explanation)

==Aviation Emissions Scenarios==
-setup-aviation.aviation_scenarios
//€€cogs warning: this uses 12 parallel worlds, so it requires a lot of computer memory, and takes a long time to initialise!//

Comparison of the six aviation scenarios from IPCC  , both with and without scaling to a stabilisation scenario.
(see @aviashipemit for more explanation)

==Effect of Aviation Mitigation==
-setup-aviation.stab2C_without_mitigate_aviation

Showing the effect of aviation mitigation on the 2C limt scenario:
with business-as-usual aviation growth the other gases / sectors must be reduced much more.

----

#jcm.mod.regimp		¨addJCM5[oldkey=jcm.mod.reg]		§This package concerns regional  climate change.<ul>
<li>Spatial patterns of regional and seasonal changes of several climatic variables are imported from GCM projections.
<li>These may be scaled to the average temperatures projected by JCM package @jcm.mod.cli
<li>It is anticipated to develop this package further by adding a regional sectoral impacts module.
</ul>
%%For experts: note also related components (not modules):
@maps, @mapdata,  @regions, @regpoly (in  @jcm.core.reg) %%

#indicator		§Choose which indicator to stabilise - emissions, concentration, forcing or temperature.

#stabrf&allghg		§Set a target stabilisation year and level to  stabilise @radfor of all greenhouse gases (excluding aerosols)
€€cogs This works iteratively by adjusting a CO2 concentration curve ;;
£§stabrf

#stabrf&allghgaero		§Set a target stabilisation year and level to  stabilise @radfor of all greenhouse gases and aerosols together. This is effectively stabilisation of @co2eq.
€€cogs This works iteratively by adjusting a CO2 concentration curve ;;
£§stabrf

#stfuzzy		§Attempt to Stabilise Temperature by a fuzzy control feedback raising or lowering emissions according to the deviation of observed temperature from a target curve
€€cogs Old Experimental Method, no longer working

#testnew		§checking if autosave is working:

#regset		§Contains a key parameter determining the set of regions used by both @jcm.mod.socio and @jcm.mod.regemit, and some methods to change these regions;;
See also {{
*:@regman
*:@regionsets
*: Note also @cliregions
}}

#swin16		§A set of 16 regions used for a Swiss analysis of the Indian proposal regarding future mitigtion effort sharing

#niklas		§A set of regions used by Niklas Höhne for MATCH intercomparison paper 
See @ACCC-MATCH-doc and@matchdata

#sresdata		§A module for loading and interpolating static data from the @aboutsres.
The data comes from IMAGE, see @dataref
For more info see @data
;;

#sresext		§A module to extend the @aboutsres beyond 2100 
This is based on a "Kaya" approach, extrapolating non-linear trends in {{
*: population (with a feedback that increasing percapita GDP decreases population growth)
*: GDP per capita (grows faster in poorer countries)
*: emissions per GDP (declining in all countries, lower in rich countries)
}}

The result is that developing countries gradually catch up with industrialised countries, and all approach stabilisation on a multi-century timescale
Note that: {{
*: the default extrapolation option uses a regression which was not updated since switching from GDP_MER to GDP_PPP!
*: the result is dependent on highly uncertain assumptions about @gdp_ppp
*: global resource constraints (eg fossil fuels, agricultural land, water etc.) are not yet considered, but should be 
}}

#linear-ext		§Not realistic, but useful for experiment

#exp-const		§Exponential decline with constant parameters

#exp-reg		§Exponential decline with parameters adjusting according to a regression based on 2050-2100 scenario data
%%€€cogs note the regression was not updated since the switch from @GDP_MER to @GDP_PPP %%

#extend		§%%€€cogs Note: this affects socioeconomic data and baseline emissions, it will only have a small influence on emissions under stabilisation scenarios %%

#fixed-ext		§Fixed baseline emissions beyond 2100

#optvariant		§This menu determines the mathematical form of the curve whose free parameters are adjusted by the optimisation method. 
€€cogs Some variants are experimental and the optimiser may not succeed to find a good solution!
€€cogs It is intended to replace this  with a more general option to optimise any set of value parameters in JCM.

#potluc		§The Potential Land Use Sink is calculated by simply assuming that past land use change emissions (mainly due to deforestation) could be reversed. 
 
Therefore it is determined (for any region) by the integral of all past LUC emissions in that region, multiplied by a factor @potlucfrac determining the fraction which may be be restored per year. 

This used to calculate the land use emissions in a policy scenario, according to this formula:

( @lucemit - @globpotlucquota ) / ( @lucemitbase - @globpotlucbase ) =  @fossilemit / @fossilemitbase ;;

This is applied at a global level in @globco2emit and at a regional level in @futureLUC

This approach may seem rather optimistic, as it does not take into account the growing demand for land for agricultural purposes (a more sophisticated formula could be linked to population and GDP).
On the other hand, it also does not take into account the possibility of Carbon Capture and Storage (CCS) connected to biomass-fuelled power plants, which could provide a potentially unlimited sink over a long time interval (and at considerable cost to biodiversity and food production).

See also: {{
@globco2curves
@futureluc
@CalcLUCEmit
}}

#globco2curves		§A curveset to show global CO2 fossil and landuse emissions for both baseline and stabilisation scenarios on one plot.

#foshistscenconv		§£§trans_hist_fut

#trans_hist_fut		§There is a significant gap between current emissions and those previously projected in @aboutsres (which date from the late 1990s). 
To avoid abrupt discontinuities at the @futurestartyear, JCM continues extrapolating from historical emissions data, and gradually shifts towards the long term scenario by the rate (% / year) specified by this parameter

#luchistscenconv		§£§trans_hist_fut

#potlucfrac		¨[oldkey=potlucfrac%]		§see @potluc

#potlucfracconverg		¨[oldkey=potlucfracconverg%]		§This parameter determines the evolution of pot-luc after 2100 (beyond the end of the baseline scenario)
See @potluc

#fix_luc_fossil_ratio		¨[oldkey=fix_luc/fossil_stab]		§When this option is selected, the ratio of fossil CO2 to land-use CO2 in the stabilisation scenario is fixed (instead of using the @potluc formula). This is simple but rather "pessimistic" as it forces LUC emissions to be positive, whereas even some @aboutSRES imply a  net LUC sink.

#one_year_pulse		§Adds a One-Year CO2 Pulse (@Experimental !)
Useful to experiment to test the effect on future concentration or temperature, for use in studying GWP, GTP etc. ;;
€€cogs Use this with @objective = @nopolicy

#stabdoc		§Links to old JCM4 documentation on stabilisation:

  <h4>Stabilise Emissions</h4>  (instructive, but not effective in the long-term)
{{<li>@stabemitdoc<li>@stabemitmethod }}
  <h4>Stabilise CO2 Concentration</h4> {{ (as IPCC stabilisation scenarios)<li>@stabconcdoc<li>@stabconcmethod<li>@wredelaystart<li>@stabipccsyrq6 }}
  <h4>Stabilise Radiative Forcing</h4> {{(bringing together effects of many gases)<li>@stabrfdoc<li>@co2eq<li>@stabitmethod (also used for temperature and sea-level) }}
  <h4>Stabilise Temperature</h4> {{(closer to real climate change impacts)<li>@stabtempdoc<li>@stabtemp2c, @stabtemp2cscript<li>@stabtempfuzzy }}
  <h4>Stabilise Sea-level</h4>{{ (barely possible, but interesting to try)<li>@stabseadoc }}
  <h4>General stabilisation  topics</h4> {{<li>@inverse<li>@stabpathways<li>@stabimpact<li>@othgasemit<li>@scalelanduse <li>@uncertburden }}
  <h4>Related topics</h4> {{ (see also @stabrelated)<li>@philosophy<li>@distribution<li>@reduceintensity<li>@sresasbaseline }} <hr>
<h4>Recent Analysis</h4> {{<li>@probwccc, @confpres, @moscow, @wccc2003 }}

#jcm.mod.socio		§This package contains modules for regional socioeconomic factors such as population and economic activity (GDP etc.) which are the driving forces for greenhouse gas emissions scenarios, and also important for estimates of  climaetchange impacts. It also contains a module of Climate change Abatement and Impacts @costs

#mer		§See @PPP, @GDP

#ppp		§Typically, in poorer developing countries the currency is weaker and incomes are lower, so one unit of GDP measured by Market Exchange Rates (@MER) purchases more goods and services. PPP GDP corrects for this by comparing prices systematically between countries. 

Purchasing Power Parity GDP is a more accurate measure of economic activity and hence more appropriate for comparing future emissions and impacts across countries.

In the shorter term GDP expressed in MER is also strongly distorted by fluctuations in exchange rates linked to temporary imbalances in trade and borrowing. 

A comparison of the historical data in @gdp_ppp and  @gdp_mer illustrates this problem. 
Future projections using PPP GDP are more robust, as the discrepancy  is smaller between developing countries and rich countries (for which there is better data for calibrating models).

See also 
@future_ppp
@dataref

#future_ppp		¨[oldkey=gdp_ppp]		§JCM uses a simple formula to calculate future @PPP @GDP, based on MER projections and historical PPP data. 

This is needed because the projections in IPCC SRES scenarios only specified @MER GDP. 

It is important to use PPP for future projections, to account for the gradual convergence of developing countries and rich countries.

However future PPP projections are controversial: there is not yet any consensus in the global climate scenario community regarding the best way to estimate this.

GDP growth rates in developing countries are typically lower in PPP than in MER,  as the conversion factor PPP/MER gradually converges towards that of richer countries. Emissions intensities calculated with PPP (see @gdp) also decrease more slowly (note: in IPCC SRES emissions projections these two effects compensate).

#jcm.mod.regemit		§This package handles regional and sectoral emissions. Baseline and mitigation-policy scenarios are separated in two modules - @emitbase and @shares, the former derived from SRES scenarios and the latter dependent on effort-sharing rules. International @aviaship have a separate module.

Regional emissions are provided for CO2 from both fossil-fuel combustion and land-use change, and for CH4 and N2O (all sectors combined, but mainly from agriculture and waste). 
%%(Other gases are only considered globally (see @othgasemit).%%

€€adju The @regionset is fixed by the @socregions parameter
(%%in @jcm.mod.obj, also applies to @jcm.mod.socio %%).

#emitbase		§These are derived from SRES scenarios, downscaled to a national level and re-combined to the chosen region set. ;

#histemitdata		§This (@expert) module shows historical national data for fossil CO2, CH4 and N2O emissions. These are combined to make the regional data in @emitbase 
For more information on sources see @data, @dataref ;;

The final year of available historical emissions data varies by country - for large countries it is currently 2006, with an estimation for 2007.
These data are extrapolated to 2012 using the economic trends projected by WEO (see @histsocdata), together with an exponentially declining emissions intensity (see @gdp).

#pop_b2		§future @population for @sresB2

#pop_a1		§future @population for @SRESA1 (including A1B, AFF, A1T), 
also for @sresB1

#pop_a2		§future @population for @sresA2

#gdp_b2		§future @gdp for @sresB2

#gdp_b1		§future @gdp for @sresB1

#gdp_a1		§future @gdp for @sresa1

#gdp_a2		§future @gdp for @sresA2

#fos_b2		§future @emitfosbase for @sresb2

#fos_a1f		§future @emitfosbase for A1F (high fossil variant of @sresA1)

#fos_a1t		§future @emitfosbase for A1T (high fossil variant of @sresA1)

#fos_a1b		§future @emitfosbase for A1B (high fossil variant of @sresA1)

#fos_a2		§future @emitfosbase for @sresA2

#fos_b1		§future @emitfosbase for @sresB1

#aviashipemitcurves-base		§This curveset connects recent emissions data with future scenario projections, and extrapolates these both further back in history and further forward into the future (since the time-horizon of JCM is longer than typical of sector-specific studies).  ;;

It is much easier to get data for developed countries (UNFCCC Annex 1 countries are obliged to report emissions) and for international transport, than for developing countries and internal domestic transport. 

Therefore, curves for both sectors are separated into these categories. 
For completeness, military emissions are also estimated, although little data is available so these are often left out of other analyses.

It may be observed that total Aviation, total Shipping, and total International ("Bunker") emissions are currently similar numbers - this coincidence is often a source of confusion, as they are unlikely to remain the same.

It is assumed that aviation emissions grow faster than shipping, international emissions grow faster than domestic, and that developing country emissions grow faster than Annex 1 emissions

For the period up to 2050, baseline aviation emissions depend on the scenario specified by the parameter @Aviation_Scenario
Scenario data is provided for 1990, 2000, 2015, 2025 and 2050 - other years are interpolated

Beyond 2050 growth is extrapolated until the year set by @End_growth_year

#aviashipemitcurves-mitig		§These emissions are based on those in the @aviashipemitcurves-base, scaled down depending on the parameter @transport_longterm , and the global mitigation effort required for the @stabilisation scenario.  ;;

In the default option, the BAU aviation / shipping emissions are scaled down by the ratio of fossil CO2 baseline and policy emissions which can be seen in @globco2emit

Even after such scaling down, the relative share of aviation emissions as a  fraction of the global total increases, as most BAU @Aviation_scenario projections imply faster growth than in most other sectors.

#aviation_scenario		§This parameter provides a choice of future aviation business as usual scenarios.

The scenarios are taken from the IPCC Special Report on Aviation (1999), the CONSAVE project (Berghof 
et. al 2005), and the FAST scenarios (Owen and Lee, 2006). These are compared in IPCC AR4 WG3 (2007).

#end_growth_year		§@aviashipemitcurves-base Emissions (from both sectors) are constant after the year selected by this parameter. 

This is necessary because some scenarios imply very rapid, quasi-exponential growth (up to 2050). If such growth is extrapolated to the typical time-horizon of JCM (2300), emissions from these sectors become unrealistically high -a disproportionate share of total global emissions. Constant emissions after this year is a simple transparent compromise - nobody can really predict how transport technology will evolve on such long timescales.

#transport_longterm		¨[oldkey=transport_longerm]		§Currently there is only a choice of mitigation or no mitigation - other options may be added.

#mitigate_for_stabilisation		§When this option is selected, future @AviaShipEmitCurves-mitig emissions are scaled down, by multiplying the respective @AviaShipEmitCurves-base emissions in any given year by the ratio of the global CO2 emissions budget constrained by the @stabilisation scenario, divided by the global baseline (SRES scenario) CO2 emissions. 
(see @globco2curves).

The formula is the same as for the default option  @sresscale applied to @othgasemit

This formula still permits greater growth in international transport than in most other sectors, due to the high growth in the BAU scenarios.

#business_as_usual		§If this option is selected there is no mitigation policy for aviation and shipping,  even within a global @stabilisation scenario where other sectors are mitigated.
In this case, @AviaShipEmitCurves-mitig, which are used to calcualte @AviationForcing, are the same as AviaShipEmitCurves-base. 	
Consequently the "emissions space" remaining for other sectors is reduced, in order to meet the global stabilisation goal (especially if  @stabtemp is selected). 
This may seem unrealistic, however it reflects the current exclusion of International bunker fuels from the Kyoto

#jcm_root		¨[oldkey=jcm5_root]		§The root of the heirachical @jcmtree - providing a way to find everything.
Basically, this consists of: {{
*: all @packages in the src directory, including source code, core data and setups
*: a link to each @data package
*: the set of @worlds,
*: the @documentation home page
}}
€€cogs This is set up by java code in @root. (see also @package, @infob)

#jcm.mod.resp		§This package is concerned with attributing the "responsibility" for anthropogenic climate change due to emissions from specific regions.

It was initially developed for the JCM contribution to the UNFCCC model intercomparison assessing "scientific and methodological aspects of the Brazilian proposal", later known as "ACCC" and then "MATCH". {{
*: For further information see @ACCC-MATCH-doc
}}

Potentially,  the methodology applied here could be applied not only to regions, but to any set of emissions from different sources -e.g. individual projects (CDM), time-periods (intergenerational equity), gases (to replace GWP), etc.

Although the original application proposed by Brazil was concerned with the sharing of mitigation effort among Annex-1 countries, such calculations might also be used in applying the "Polluter Pays Principle" to funding adaptation. 

This topic occupies its own package in JCM as there are several different @attmeth, and they are quite complex.

The results are best summarised by plots of @surftemp and @surftemp&relative

#attribtracer		§This computationally-efficient @attmeth is the default in JCM. It works by subdividing each relevant box of the model (including every layer in the ocean for @berncarbon and @udebclimod) to record how much of each gas concentration or heat came from each region. Although faster than other methods, this increases the model complexity substantially, especially at each nonlinear step in the cause-effect chain. 

Another advantage of this method is that it is possible to plot the contributions from each region for each step of the cause-effect chain, from emissions to concentrations and radiative forcing (for each gas separately), temperature and sea-level rise.  

€€cogs For more detail see notes in the java source code and @ACCC-MATCH-doc. ;; 

€€cogs Note: Beware this module calculates slowly, particularly when there are many regions.

#attribmarginal		§This module applies either the Timeslice or the Marginal @attmeth

The Timeslice method (suggested by Ian Enting and Cathy Trudinger ) works by calculating the marginal effect of adding each years  emissions, assuming zero emissions thereafter.  

The Marginal method is similar to timeslice but calculates the marginal effect of one year's emissions, continuing with the original emissions scenario thereafter. ;;
----
€€cogs Note this module is experimental, it hasn't ben checked since restructuring JCM, so probably doesn't work now!
€€cogs Note: to calculate this way JCM has to iterate many times, a dialog box should inform you of progress 
€€cogs Note: this only calculates @surftemp
€€cogs Note: this does not work when the @OHef parameter in @atchem is enabled (as by default), due to a problem caused by the feedbacks between  CH4 and OH - to be fixed

#attributeluc-co2		§This makes a lot of difference for some large countries with high deforestation rates (Brazil, Indonesia) and hence to the relative responsibility of Annex 1 compared to developing countries

#surftemp&relative		§Regional contributions to @surftemp are shown here as a fraction of 100%. 
Note that unattributed periods and other gases are excluded.

This is the "politically sensitive" result - for example within UNFCCC there has been a discussion of the "cross-over year" when the total contribution of the developing countries will pass that of Annex 1 countries.

#attributech4n2o		§This makes a lot of difference for countries with a large agricultural sector, particularly those with a large production of sheep and cattle, or with a lot of rice grown in paddy fields.
Therefore it affects the relative responsibility of Annex 1 compared to developing countries.