I am attempting LookupNext from one table to another joined by a cartesian relationship. Specifically, I need to find the previous and next Weights and the previous and next Moments so that I can perform a weighted average of the moments. Something like:

(ActualWeight - PreviousWeight)/(NextWeight-PreviousWeight)*(NextMoment-PreviousMoment)

Table 1 has the calculated moments for some given weights and we are expected to interpolate between the weights to calculate the moment in Table 2. So, I joined the tables with a Cartesian between Table1::Weight and Table2::Weight, but LookupNext(Table1::Weight; higher), doesn't work. Nor does lower. Nor does (Table1::Moment; higher), etc. If I put a portal on a layout based on Table 2, all of the data in Table 1 shows up.

If I change the relationship to >=, <=, it behaves the way it should. However, I cannot interpolate because I don't have either the lower or higher numbers.

Is Cartesian just the wrong type of join to do this or am I missing something?

I would consider Cartesian, the wrong relationship for this. I would consider two relationships or two SQL queries to get the next smaller and next larger values.