Physical mapping is where does the modelsim library exist on the system, i.e. the directory where the library was compiled.
Logical mapping is the name the library has when used by -L or when used in the use library_name in VHDL.
So basically if you compile all the library code into the directory ./my_library_of_yada_yada_bazinga (physical) you can logically map it to a library called xyz_lib if you want. You can find those physical to logical mappings in the .prj or .ini file.
The project is just Modelsim's way of handing your source files. The logical library mapping, I think (might be completely wrong), are from Modelsim's roots as a VHDL only simulator (though I can't find any history on that subject), as VHDL uses libraries with a use library_name;, those libraries need to have a specific name (hence the logical name) which is translated from the physical directory name.
Verilog simulators don't have "libraries" so simulators like VCS, Verilog-XL don't have to do any translations they just need to know the location of the compiled/pre-compiled design files.