about TPQ and how to impose duration to a phase

347 views
Skip to first unread message

Nils Martin

unread,
Apr 28, 2015, 4:30:47 AM4/28/15
to ox...@googlegroups.com
Dear all,

I am a new user of Oxcal trained in art history, so my questions may be very basic ones but I would be very grateful for any guidance! I am trying to build up a chronological model that would include some forty C14 dates organised in contiguous phases along with external historical informations used as TPQ.

There are three operations I have not completely been able to figure out how to do: 
- how to impose a fixed TPQ to a R_Date "y" without interfering with a previous R_Date "x"
- how to impose a fixed duration with free starting and ending times to a phase
- how to establish parallel phases or sequences

Here is an exemple that illustrate all these problems:

1. I have five R_Dates (1, 2, 3, 4, 5) which correspond to wall-paintings belonging to the same artistic phase "IV":

  Phase("IV")
  {
   R_Date("1", 570, 30);  
   R_Date("2", 610, 30);
   R_Date("3", 540, 30);
   R_Date("4", 595, 30);
   R_Date("5", 600, 30);
  };
  
2. I know that "2" < "3" < "4" < "5" through art historical analysis. I don't know about "1":

 Phase("IV")
  {
   R_Date("1", 570, 30);  
   Sequence( )
   {
    R_Date("2", 610, 30);
    R_Date("3", 540, 30);
    R_Date("4", 595, 30);
    R_Date("5", 600, 30);
   };
  };

3. I also know that "3" can only be later than 1320 since a religious character enthroned in 1320 is depicted as such in the wall-paintings dated in "3". As "3" < "4" < "5", "4" and "5" can only be later than 1320 as well, but  "2" (and "1") could be before 1320. I have not been able to find another way to impose this TPQ without pressuring "2" than to use the "after" operation. I have tried to enter the datas in two different ways and both seem to work fine... with slightly different results!

Solution 1 (gives quite early results):

Phase("IV")
  {
   R_Date("1", 570, 30);  
   Sequence( )
   {
    R_Date("2", 610, 30);
    After ( )
    {
     Date("Enthronement", 1320);
    };
    R_Date("3", 540, 30);
    R_Date("4", 595, 30);
    R_Date("5", 600, 30);
   };
  };
 
Solution 2 (gives quite late results and shows "3" twice in the results, with and a without the TPQ's pressure):

Phase("IV")
  {
   R_Date("1", 570, 30);  
   Sequence( )
   {
    R_Date("2", 610, 30);
    After (Date("Enthronement", 1320);)
    {
     R_Date("3", 540, 30);
    };
    R_Date("4", 595, 30);
    R_Date("5", 600, 30);
   };
  };

Would you please explain me how that is possible?

4. Now is the tricky part. I would like to specify that "1", "2", "3", and "4" can not be separated by more than 60 years because they result from the activity of the same sponsor (it could be a little more than 60 years but let's try like this!). I suppose the better way to express this would be to include "1", "2", "3", and "4" in a phase "sponsor's activity" parallel to phase "IV" and lasting 60 years but I have not found how to do this so far. Would you please give me a hint?

Best wishes,

Nils Martin
 

Rayfo...@aol.com

unread,
Apr 28, 2015, 11:24:15 AM4/28/15
to ox...@googlegroups.com
Hi Nils,
 
There will be more succinct ways of doing this I'm sure, but the following may work.
 
 
This puts in an additional Sequence that places Enthronement before R_Date 3, but not necessarily before R_Date 2.
Next, I've assumed the End Boundary will be from a Uniform distribution of 60 years after the Enthronement date.  This also constrains R_Date 1 so perhaps the End boundary could be wider?
Viz.
 
 Plot()
 {
  Sequence()
  {
   Boundary("Start 1");

   Phase("IV")
   {
    R_Date("1", 570, 30);
    Sequence( )
    {
     R_Date("2", 610, 30);
     R_Date("3", 540, 30);
     R_Date("4", 595, 30);
     R_Date("5", 600, 30);
    };
   };
   Boundary("End 1",Date(U(1320,1380)));
  };
  Sequence("A")
  {
   Date("Enthronement", 1320);
   Date("=3");
  };
 };
 
I Hope this helps
 
Best wishes
 
Ray Kidd
 
 
--
You received this message because you are subscribed to the Google Groups "OxCal" group.
To unsubscribe from this group and stop receiving emails from it, send an email to oxcal+un...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Erik

unread,
Apr 28, 2015, 11:29:03 AM4/28/15
to ox...@googlegroups.com
Nils-
You have an interesting set of data. As a quick tip, I think you will need to cross reference you dates. It's a really powerful tool that let's you apply multiple constraints on the same date. For example:
R_Date("5", 600, 30);
and then in another sequence, that same date can reappear with new constraints as:
Date("=5");

You can set up multiple sequences or phases like this:
Plot()
{

  Phase("1")
    {
    ...
     };

  Phase("2")
    {
     ....
     };

};


As for question 4, Use the Gap command (check the manual under the section "depositional sequences").
For example (in a sequence):
R_Date("4", 595, 30);
Gap(60,10);
R_Date("5", 600, 30);

Give those a try and later I will try to take a more detailed look. Good luck, Erik.

Erik

unread,
Apr 28, 2015, 2:14:31 PM4/28/15
to ox...@googlegroups.com
Ray's version is pretty good, I think.
I made two small changes. I removed the uniform distribution for the end boundary. As far as I understood, you know that dates 1-4 fall within 60 years, but not when that span began or ended. Is this correct? In this case, limiting the dates to 60 years seems unnecessary. A Span query shows that dates 1-5 span 19±24 years, so dates 1-4 would cover an even shorter span.

Out of curiosity, does someone know how to limit dates 1-4 to 60 years? It seems like you would use Span as a function. 
I've never done this so I'm not sure about the syntax.


Plot()
 {
  Sequence()
  {
   Boundary("Start 1");
   Phase("IV")
   {
    Span("Dates 1-5");
    R_Date("1", 570, 30);
    Sequence( )
    {
     R_Date("2", 610, 30);
     R_Date("3", 540, 30);
     R_Date("4", 595, 30);
     R_Date("5", 600, 30);
    };
   };
   Boundary("End");

Erik

unread,
Apr 28, 2015, 2:22:39 PM4/28/15
to ox...@googlegroups.com
Well here's my best guess for how to limit dates 1-4 to 60 years. I added this to the code from the previous post.
On the upside, the error ranges are now smaller (<20 years for dates 2-5). The odd thing is that the original Span query for dates 1-5 has jumped up to 64±11 years. 
I wonder if this is an issue with cross-referencing, because now the dates are part of a sequence AND a phase, are within two different sets of boundaries. I'm not sure. Someone else will have to clarify...

   Sequence()
   {
    Boundary();
    Phase("Span of 0-60 years")
    {
     Span(60);
     Date("=1");
     Date("=2");
     Date("=3");
     Date("=4");
    };
    Boundary();
   };

Christopher Ramsey

unread,
Apr 28, 2015, 3:14:55 PM4/28/15
to ox...@googlegroups.com
This is how to add a prior (in this case a uniform distribution U(0,60)) to the span in the original model:

Plot()
{
Sequence()
{
Boundary("Start 1");
Phase("IV")
{
Span("Dates 1-5",U(0,60));
R_Date("1", 570, 30);
Sequence( )
{
R_Date("2", 610, 30);
R_Date("3", 540, 30);
R_Date("4", 595, 30);
R_Date("5", 600, 30);
};
};
Boundary("End");
};
Sequence("A")
{
Date("Enthronement",1320);
Date("=3");
};
};


Best wishes

Christopher

Rayfo...@aol.com

unread,
Apr 28, 2015, 4:15:50 PM4/28/15
to ox...@googlegroups.com
Hi Erik, Nils,
 
The dates 1 - 2 - 3 - 4 fall within 60 ish years, with date 5 the last part of the sequence.
R-Date 3 follows Date 1320 so putting the end boundary as a Uniform prior somewhere between 1320 and (say) 1390 gives plenty of scope for the MCMC finding the End boundary.
 
There is a very large Curve Inversion that could push date 5 more than 50 years later than date 4, but is that likely?
 
If it is considered problematic then placing a transition boundary between 2-3-4 and then 5 should address the concern.  Both models are shown below. Note how the second also avoids the curve inversion even though the end boundary is not constrained.
 
Model 1 No Transition:
 
 Plot()
 {
  Sequence()
  {
   Boundary("Start 1");
   Phase("IV")
   {
    R_Date("1", 570, 30);
    Sequence( )
    {
     R_Date("2", 610, 30);
     R_Date("3", 540, 30);
     R_Date("4", 595, 30);
     R_Date("5", 600, 30);
    };
   };
   Boundary("End 1",Date(U(1320,1390)));
  };
  Sequence("A")
  {

   Date("Enthronement", 1320);
   Date("=3");
  };
 };
Model 2 with Transition:
 
 Plot()
 {
  Sequence()
  {
   Boundary("Start 1");
   Phase("IV")
   {
    R_Date("1", 570, 30);
    Sequence("S1")

    {
     R_Date("2", 610, 30);
     R_Date("3", 540, 30);
     R_Date("4", 595, 30);
    };
    Boundary("Transition 1/2",Date(U(1320,1360)));
    Sequence("S2")
    {

     R_Date("5", 600, 30);
    };
   };
   Boundary("End 1");
  };
  Sequence("A")
  {

   Date("Enthronement", 1320);
   Date("=3");
  };
 };
Best Wishes
 
Ray
 
In a message dated 28/04/2015 19:14:36 GMT Daylight Time, erik....@gmail.com writes:
Ray's version is pretty good, I think.
I made two small changes. I removed the uniform distribution for the end boundary. As far as I understood, you know that dates 1-4 fall within 60 years, but not when that span began or ended. Is this correct? In this case, limiting the dates to 60 years seems unnecessary. A Span query shows that dates 1-5 span 19±24 years, so dates 1-4 would cover an even shorter span.

Out of curiosity, does someone know how to limit dates 1-4 to 60 years? It seems like you would use Span as a function. 
I've never done this so I'm not sure about the syntax.


Plot()
 {
  Sequence()
  {
   Boundary("Start 1");
   Phase("IV")
   {
    Span("Dates 1-5");
    R_Date("1", 570, 30);
    Sequence( )
    {
     R_Date("2", 610, 30);
     R_Date("3", 540, 30);
     R_Date("4", 595, 30);
     R_Date("5", 600, 30);
    };
   };
   Boundary("End");
  };
  Sequence("A")
  {
   Date("Enthronement",1320);
   Date("=3");
  };   
 };
 

--

Nils Martin

unread,
Apr 29, 2015, 4:58:29 AM4/29/15
to ox...@googlegroups.com
Dear Ray, Erik and Christopher,

Thank you so much for your quick help! Actually the set of datas is much bigger than what I have posted here. I have also modified some of the datas so that what I mean is more obvious. For instance I have modified the actual TPQ Date("Enthronement", 1286) into Date("Enthronement", 1320) so that it clearly pressures on R_Date("2", 610, 30).

Cross referencing the dates is a very powerful indeed and it will help me a lot in modelling the remaining datas, TPQ, and parallel phases/sequences.

About the "how to impose duration to a phase" without fixed start and end, I think Christopher's ' Span("Dates 1-5",U(0,60)); ' is what I was looking for. It doesn't seem to me that the uniform distribution of the end boundary address my problem properly here as 1320 could but may not be the start of the span. 

Here I have tried to express the span of the sponsor's activity in a parallel phase because "5" should not be including in the sponsor's activity (but may date to the same age):

 Plot()
 {
  Sequence()
  {
   Boundary("Start 1");
   Phase("IV")
   {
    R_Date("1", 570, 30);
    Sequence( )
    {
     R_Date("2", 610, 30);
     R_Date("3", 540, 30);
     R_Date("4", 595, 30);
     R_Date("5", 600, 30);
    };
   };
   Boundary("End");
  };
  Sequence("A")
  {
   Date("Enthronement",1320);
   Date("=3");
  };
  Phase("Sponsor's activity")
  {
   Span(U(0,60));
   Date("=1");
   Date("=2");
   Date("=3");
   Date("=4");
  };
 };


It seems to work fine thanks to your tips!

Cheers

Nils
Test_forum.svg

Nils Martin

unread,
Apr 29, 2015, 7:59:53 AM4/29/15
to ox...@googlegroups.com
I have just noticed that Oxcal handles Date("Enthronement", 1320) with 2 sigmas. This results in the fact that "3" could date slightly before 1320. Is there anyway to get around the 2 sigmas of probability and have a strictly fixed Date("Enthronement", 1320)?

Thanks again

Nils

Rayfo...@aol.com

unread,
Apr 29, 2015, 9:00:04 AM4/29/15
to ox...@googlegroups.com
Hi Nils,
 
I'm not sure I understand.  Date ("Enthronement",1320) results in a single date. Looking at View Plot Single with all three Ranges enabled gives the following:
 
 
Am I missing something?
 
regards
 
Ray
 
 
 
--

Erik

unread,
Apr 29, 2015, 2:46:22 PM4/29/15
to ox...@googlegroups.com
Nils,
Ray is right, the model is treating 1320 as a fixed date. Date 3 does have 2 sigmas. Is that what you're looking at?

I think the last model you posted looks good; it seems to incorporate all of the constraints as you described them.

Thanks, Christopher, for clearing up how to limit a phase's duration with the Span function. Interesting!
Erik
 
Reply all
Reply to author
Forward
0 new messages