Re: Error with OEM retrieval in ARTS

2023-06-15 Thread Patrick Eriksson

Stuart,

The built-in doc of OEM clarifies that x is both IN and OUT. But there 
is no explanation of what the input states mean. We need to work the 
documentation!


But there is some help in

/controlfiles/artscomponents/oem/TestOEM.arts

Here you find:

# x, jacobian and yf must be initialised (or pre-calculated as shown below)
#
VectorSet( x, [] )
VectorSet( yf, [] )
MatrixSet( jacobian, [] )


# Or to pre-set x, jacobian and yf
#
#Copy( x, xa )
#MatrixSet( jacobian, [] )
#AgendaExecute( inversion_iterate_agenda )


My memory is that if you leave x empty, it is set to xa. The other 
option is there to allow you to start the iteration from another state.


I don't think we have changed this recently. So rather strange that your 
old setup worked. Anyhow, I hope this clarifies how to remove the error.


Bye,

Patrick



On 2023-06-15 14:58, Stuart Fox wrote:

Hi developers,

I have an ARTS OEM retrieval set-up that used to work fine based on the 
ARTS trunk from Feb 2022, but recently I’ve updated to the latest 
development version of ARTS and when calling the workspace.OEM() method 
it fails with “Not initialised: x”. Any clues on how to fix this? I am 
initialising the retrieval with workspace.xaStandard(), so I think I am 
correctly initialising the value of xa – it’s not obvious to me why I 
should have to initialise x at all (since presumably it should always be 
set to the same value as xa to begin with?)


Thanks,

Stuart

Dr Stuart Fox  Radiation Research Manager
*Met Office* FitzRoy Road  Exeter  Devon  EX1 3PB  United Kingdom
Tel: +44 (0)1392 885197  Fax: +44 (0)1392 885681
Email: stuart@metoffice.gov.uk  Website: www.metoffice.gov.uk



Error with OEM retrieval in ARTS

2023-06-15 Thread Stuart Fox
Hi developers,

I have an ARTS OEM retrieval set-up that used to work fine based on the ARTS 
trunk from Feb 2022, but recently I've updated to the latest development 
version of ARTS and when calling the workspace.OEM() method it fails with "Not 
initialised: x". Any clues on how to fix this? I am initialising the retrieval 
with workspace.xaStandard(), so I think I am correctly initialising the value 
of xa - it's not obvious to me why I should have to initialise x at all (since 
presumably it should always be set to the same value as xa to begin with?)

Thanks,

Stuart

Dr Stuart Fox  Radiation Research Manager
Met Office FitzRoy Road  Exeter  Devon  EX1 3PB  United Kingdom
Tel: +44 (0)1392 885197  Fax: +44 (0)1392 885681
Email: stuart@metoffice.gov.uk  Website: www.metoffice.gov.uk