And what is their relationship? Is it linear, exponential. For example, if ether were to double in price tomorrow, does that mean the complexity is twice as much, or... ?
There isn't a direct relationship between Ethereum USD price and the complexity of mining a block.
I assume your concern is whether the gas price for transactions will keep rising with ETH/USD prices, then the answer is yes. But there is a correction mechanism where in miners can bid lower gas prices if they find it affordable. This has a network effect and does take a while to propagate. Recently 45% miners have reduced their gas prices.
When Ethereum price goes up does complexity go up too?
And what is their relationship?
There isn't one.
For example, if ether were to double in price tomorrow, does that mean the complexity is twice as much, or... ?
The dollar price of ether (ETH) is speculative. It's affected by supply and demand, and is worth whatever the market says it's worth.
The difficulty of solving the proof of work for a block is adjusted to balance and changes in the total hashrate of the network, so as to keep the block times relatively static.
The above is a simplistic explanation. I'm sure there are probably some second-order effects that work along the lines of: "The speculative price rises for whatever reason -> More people become interested and begin to mine -> The overall hashrate of the network increases -> The difficulty increases to maintain the block time". But that itself is a hypothetical explanation, and I'm certain you wouldn't be able to measure such an effect empirically.